Command line utility for standing up a BOSH director on an IAAS of your choice.
Clone or download
ciriarte and crhntr Added Logger to SSH Command Constructor
[#159279965](https://www.pivotaltracker.com/story/show/159279965)

Co-authored-by: Christopher Hunter <hunter.christopher@icloud.com>
Latest commit a86e885 Sep 13, 2018
Permalink
Failed to load latest commit information.
acceptance-tests use the correct runtime config name in acceptance tests Sep 4, 2018
application make bbl exit 0 when destroy fast fails bc there is no state Jul 24, 2018
aws Add DNS info to direct parent of LBdomain on AWS May 8, 2018
azure gofmt -s Feb 28, 2018
backends download remote bbl state from GCS or S3 Jul 9, 2018
bbl Added Logger to SSH Command Constructor Sep 13, 2018
bosh updating runtime-config is now plan patchable Aug 29, 2018
certs Update azure certs test for new pfx file password. Mar 19, 2018
cloudconfig always apply ops.yml cloud config opsfile first Sep 4, 2018
commands Wire logger into the `bbl ssh` components Sep 13, 2018
config fix config unit tests Jul 9, 2018
docs Support for powershell export of `bbl print-env` Sep 12, 2018
fakes updating runtime-config is now plan patchable Aug 29, 2018
fileio use afero for real file io Jan 18, 2018
flags bbl leftovers --dry-run Mar 9, 2018
gcp remove ineffective assignments Feb 28, 2018
helpers uses env_getter, updates to interface; updates to posix renderer Aug 8, 2018
plan-patches Only master VM requires password now Sep 11, 2018
renderers removes platform from renderer factory Aug 8, 2018
runtimeconfig rename runtime config to dns Sep 4, 2018
scripts x-platform wget +unzip May 25, 2018
ssh revert revert add interactive ssh acceptance test May 10, 2018
storage updating runtime-config is now plan patchable Aug 29, 2018
terraform Move restriction on backend count to generators Sep 13, 2018
testhelpers update certs for certs test May 29, 2018
vendor bump leftovers Sep 4, 2018
.gitignore Add ignored. May 3, 2018
CHANGELOG.md Update CHANGELOG.md May 31, 2018
CONTRIBUTING.md Move contributing.md to root. Sep 20, 2017
Gopkg.lock bump leftovers Sep 4, 2018
Gopkg.toml download remote bbl state from GCS or S3 Jul 9, 2018
LICENSE Initial commit Jan 25, 2016
NOTICE Create NOTICE Jan 3, 2017
README.md reorder README.md filename table to reflect bbl lifecycle Jul 31, 2018
deployment-versions.txt Update deployments Aug 24, 2018
mkdocs.yml Adds mkdocs Feb 14, 2018

README.md

bosh-bootloader

Also known as bbl (pronounced: "bubble"), bosh-bootloader is a command line utility for standing up BOSH on an IaaS. bbl currently supports AWS, GCP, Microsoft Azure, Openstack and vSphere.

Docs

Prerequisites

Install Dependencies

The following should be installed on your local machine

Install bosh-bootloader using a package manager

Mac OS X

$ brew tap cloudfoundry/tap
$ brew install bosh-cli
$ brew install bbl

Usage

IaaS-Specific Getting Started Guides

Managing state

The bbl state directory contains all of the files that were used to create your bosh director. This should be checked in to version control, so that you have all the information necessary to later destroy or update this environment at a later date.

filename contents
bbl-state.json Environment name, and bbl version metadata
terraform/ The terraform templates bbl used to pave your IaaS. See docs/advanced-configuration for information on modifying this.
vars/ This is where bbl will store environment specific variables. Consider storing this outside of version control.
jumpbox-deployment/ The latest jumpbox-deployment that has been tested with your version of bbl.
create-jumpbox.sh The BOSH cli command bbl will use to create your jumpbox.
bosh-deployment/ The latest bosh-deployment that has been tested with your version of bbl
create-director.sh The BOSH cli command bbl will use to create your director when you run bbl up. See docs/advanced-configuration for help with modifying this.
cloud-config/ The cloud-config yaml that bbl will upload to the director to map IAAS resources to BOSH resources.
delete-director.sh The BOSH cli command bbl will use to delete your director.
delete-jumpbox.sh The BOSH cli command bbl will use to delete your jumpbox.

Tearing down an environment

Once you are done kicking the tires on CF and BOSH, clean up your environment to save IaaS costs:

  1. You must first delete any deployments on BOSH. e.g. bosh -d cf delete-deployment

  2. bbl down with your IaaS user/account information.

Automating the automation tool

In order to use bbl in your concourse pipelines, the current supported way for cf-deployment is to use the cf-deployment-concourse-tasks.

There is a work-in-progress concourse resource for bbl: bbl-state-resource.