Skip to content

Instantly share code, notes, and snippets.

View drnic's full-sized avatar
🏆
Platinum Status Level

Dr Nic Williams drnic

🏆
Platinum Status Level
View GitHub Profile
genesis*
@drnic
drnic / private.yml
Created July 18, 2017 22:56
bosh2 private.yml
---
blobstore:
provider: s3
options:
access_key_id: XXX
secret_access_key: YYY
name: say-hello
releases:
- name: sample-windows-bosh-release
version: latest
stemcells:
- alias: windows
os: windows2016
version: latest

TODO, intro. outcome

Terminology

"Bootstrap BOSH" or "Deploy BOSH" refers to bringing up a single VM that runs the BOSH Director and its runtime dependencies (like PostgreSQL).

"Use BOSH" normally refers to using the bosh (or bosh2 which is its current name at the time of writing) in the terminal, which in turn talks to the BOSH Director via its HTTPS API.

@drnic
drnic / blog.md
Last active December 5, 2017 12:31
BOSH Turns 5

It is no fun to write complex open source that no one can deploy on Day 1 nor can continue to live with it on Day 2 onwards.

Five years ago the incredible lifecycle orchestration platform called BOSH was open sourced by VMWare. It changed the game for owning and operating complex systems and is unparallelled even in 2017. Five years later - more feature rich and easier to use - it is the preferred packaging and deployment system for Cloud Foundry, Kubo (Kubernetes distribution), Pivotal Network, Concourse CI, Dingo PostgrSQL (PostgreSQL as a service), Logsearch (Logstash distribution), and others.

I was at VMWare on April 11 2012 when BOSH was first open sourced, and it makes me very happy to still be successfully running our own systems and our customers systems with BOSH five years later. In this article I wanted to share a reminder of what 2012 was like, why BOSH came into existence, and how much it has improved over the last five years.

Wind the clock back to April 2011, six years ago. The king of pr

@drnic
drnic / bosh-lite.yml
Created March 12, 2017 00:00
spruce merge bosh.yml bosh-lite.yml vars.yml creds.yml
releases:
- name: bosh-warden-cpi
version: 34
url: https://s3.amazonaws.com/bosh-compiled-release-tarballs/bosh-warden-cpi-34-ubuntu-trusty-3312.15-20170201-081004-654654371-20170201081008.tgz?versionId=uO9gUrQL0tF.i_9OFwi53U9CpVdsm8Rf
sha1: 53642f8485b3b601ac163f8ca07c7dc5dfb11531
- name: garden-linux
version: 0.342.0
url: https://s3.amazonaws.com/bosh-compiled-release-tarballs/garden-linux-0.342.0-ubuntu-trusty-3312.15-20170120-022913-647174408-20170120022918.tgz?versionId=bd83ztk3ZQw8Dtyhhs9diN8X35XSc0ef
sha1: 607116c880cec8bfb22ed816ee1cb8dae42089d7
- name: os-conf
3,4c3,5
< product_version: "1.6.19-alpha"
< metadata_version: "1.6"
---
> product_version: "1.7.11.0"
> minimum_version_for_upgrade: "1.6.0.0"
> metadata_version: "1.7"
10,11c11,18
< requires_cpi: false
< version: "3146.17" # Bosh stemcell should match Ops Manager with same version
#!/bin/bash
set -e
ip=$1
if [[ "${ip}X" == "X" ]]; then
echo "USAGE: ./director_certs.sh [public IP | path to bosh-init manifest]"
exit 1
fi
if [[ -f ${ip} ]]; then
@drnic
drnic / docker-container.json
Created August 16, 2016 22:57
11000 lines of cadvisor sample API output for docker container
{
"/docker/0c28ecaf67fbbb7a585df62425101252bedbbf24c83e851a65d6485ea169d74b": {
"id": "0c28ecaf67fbbb7a585df62425101252bedbbf24c83e851a65d6485ea169d74b",
"name": "/docker/0c28ecaf67fbbb7a585df62425101252bedbbf24c83e851a65d6485ea169d74b",
"aliases": [
"cf-ae2fe919-14fb-434c-8e64-c19742681ec6",
"0c28ecaf67fbbb7a585df62425101252bedbbf24c83e851a65d6485ea169d74b"
],
"namespace": "docker",
"labels": {
diff --git a/example-product/metadata/example-product.yml b/example-product/metadata/example-product.yml
index 982a81e..afbf110 100644
--- a/example-product/metadata/example-product.yml
+++ b/example-product/metadata/example-product.yml
@@ -1,18 +1,25 @@
---
name: example-product
-product_version: "1.6.2.0"
-metadata_version: "1.6"
+product_version: "1.7.2.0"