Consider reading our previous blog post Introducing BUCC (BOSH, UAA Credhub and Concourse), as it explains a lot of why we created bucc

In this blog post we will walk you through the steps of setting up bucc on your local machine.

prerequisites
get bucc
git clone https://github.com/starkandwayne/bucc.git  
cd bucc  
direnv allow  

buckle up

with the bucc up command we can choose between a lot of CPIs (e.g. aws, vsphere, gcp, etc)

But here we are going to use the virtualbox CPI (which is the default)

run the bucc up command

bucc up

Deployment manifest: '/home/workspace/bucc/src/bosh-deployment/bosh.yml'  
Deployment state: '/home/workspace/bucc/state/state.json'

Started validating  
  Downloading release 'bosh'... Skipped [Found in local cache] (00:00:00)
  Validating release 'bosh'... Finished (00:00:02)
  Downloading release 'bosh-virtualbox-cpi'... Skipped [Found in local cache] (00:00:00)
  Validating release 'bosh-virtualbox-cpi'... Finished (00:00:02)
  Downloading release 'os-conf'... Skipped [Found in local cache] (00:00:00)
  Validating release 'os-conf'... Finished (00:00:00)
  Downloading release 'bosh-warden-cpi'... Skipped [Found in local cache] (00:00:00)
  Validating release 'bosh-warden-cpi'... Finished (00:00:01)
  Downloading release 'garden-runc'... Skipped [Found in local cache] (00:00:00)
  Validating release 'garden-runc'... Finished (00:00:01)
  Downloading release 'uaa'... Skipped [Found in local cache] (00:00:00)
  Validating release 'uaa'... Finished (00:00:01)
  Downloading release 'concourse'... Skipped [Found in local cache] (00:00:00)
  Validating release 'concourse'... Finished (00:00:04)
  Downloading release 'credhub'... Skipped [Found in local cache] (00:00:00)
  Validating release 'credhub'... Finished (00:00:01)
  Validating cpi release... Finished (00:00:00)
  Validating deployment manifest... Finished (00:00:00)
  Downloading stemcell... Skipped [Found in local cache] (00:00:00)
  Validating stemcell... Finished (00:00:11)
Finished validating (00:00:26)

Started installing CPI  
  Compiling package 'golang_1.7/21609f611781e8586e713cfd7ceb389cee429c5a'... Finished (00:00:20)
  Compiling package 'virtualbox_cpi/e293cbbb8359fd2cbbb9777b7b91fd142ab6c688'... Finished (00:00:11)
  Installing packages... Finished (00:00:03)
  Rendering job templates... Finished (00:00:00)
  Installing job 'virtualbox_cpi'... Finished (00:00:00)
Finished installing CPI (00:00:35)

Starting registry... Finished (00:00:00)  
Uploading stemcell 'bosh-vsphere-esxi-ubuntu-trusty-go_agent/3421.9'... Finished (00:00:13)

Started deploying  
  Creating VM for instance 'bosh/0' from stemcell 'sc-e6e04d15-ad19-4172-4ae7-149c42872916'... Finished (00:00:01)
  Waiting for the agent on VM 'vm-9116ed45-d227-4d1e-5efa-b5ce42a85e7f' to be ready... Finished (00:00:41)
  Creating disk... Finished (00:00:00)
  Attaching disk 'disk-3e7d9fea-ddd7-4854-76aa-d0e19b173775' to VM 'vm-9116ed45-d227-4d1e-5efa-b5ce42a85e7f'... Finished (00:00:06)
  Rendering job templates... Finished (00:00:10)
  Compiling package 'libseccomp/7a54b27a61b42980935e863d7060dc5a076b44d0'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'golang_1.7.1/91909d54d203acc915a4392b52c37716e15b5aff'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'apparmor/c8e25d84146677878c699ddc5cdd893030acb26f'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'golang/57b32e5a561e23701e9017d0abed6b9e925ec2ff'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'openjdk_1.8.0/01f437bd5f45eb8e3f1214cc7b5f54bdf9781118'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'golang_1.7/21609f611781e8586e713cfd7ceb389cee429c5a'... Finished (00:00:21)
  Compiling package 'ruby/c1086875b047d112e46756dcb63d8f19e63b3ac4'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'golang_1.7/c82ff355bb4bd412a4397dba778682293cd4f392'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'runc/68f36fbe363fefa5ec8d44b48ee30a56ac6e1e0e'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'worker_version/bc790e9ddcfcaf3f3f6dca527151c94209c35843'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'concourse_version/a5697bd67296d5f0d43afad90218a1b94911dff9'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'mysql/b7e73acc0bfe05f1c6cbfd97bf92d39b0d3155d5'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'libpq/661f5817afe24fa2f18946d2757bff63246b1d0d'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'archive_resource/eb8265d143eb11fe3137b690c40be3c2fd433510'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'generated_signing_key/00b5b02050bc6588cdfe9e523b2ba24a6c9de3c7'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'resource_discovery/0a1b0f4b48b2c8f9f9ed6019935ab3b1919c952a'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'pid_utils/a1f0590ea02d938b933a101c7438985721cd0ab4'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'docker_image_resource/700cb3f33b63a85615f428d98c2101a1f351b479'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'groundcrew/7b24f2447816b7d0df9dbebaf3b0cebbef3d9369'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'baggageclaim/160bf4cb540805dcd306a726ece308f634172c17'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'credhub/576fdf5fceb0cf06153e4efa70fc559c1bc263be'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'virtualbox_cpi/e293cbbb8359fd2cbbb9777b7b91fd142ab6c688'... Finished (00:00:19)
  Compiling package 'bosh_io_stemcell_resource/2fe7524c563d2d0cb21a88c4bc7dc3c06d15265f'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'health_monitor/e9317b2ad349f019e69261558afa587537f06f25'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'tsa/59b899a0c53649a1c67595f124c6d30c00c21051'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'verify_multidigest/8fc5d654cebad7725c34bb08b3f60b912db7094a'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'generated_tsa_host_key/00b5b02050bc6588cdfe9e523b2ba24a6c9de3c7'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'pool_resource/e5f10671fd1938767ae69dc2b660dfa1d14b866f'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'github_release_resource/b31ec6a1d10928f829ab4dc14552df684239c842'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'nginx/2ec2f63293bf6f544e95969bf5e5242bc226a800'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'vagrant_cloud_resource/5f2950486c152ad609fa5ad1d2bc4e8a5f599f18'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'semver_resource/318c561bdbfcb375da31e26a1153266e912d04da'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'tracker_resource/d9f716be444d1451e852a42ef98c3012e629d679'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'davcli/5f08f8d5ab3addd0e11171f739f072b107b30b8c'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'iptables/24e83997945f8817627223c6cee78ca9064f42d5'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'bosh_io_release_resource/1a801e059798d43ab5d6144068deafb90341893e'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'shadow/7a5e46357a33cafc8400a8e3e2e1f6d3a1159cb6'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'git_resource/b5f8f4e2046798e6d357c9df52ec3c28b132a1f4'... Skipped [Package already compiled] (00:00:00)
  Compiling package 's3cli/bb1c1976d221fdadf13a6bc873896cd5e2433580'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'nats/63ae42eb73527625307ff522fb402832b407321d'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'bosh_deployment_resource/fab4efd8b2ed27139eb15ef311f1202f00f7ace8'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'warden_cpi/29ac97b841a747dc238277ffc7d6bf59a278fa37'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'time_resource/96cfa3beb167825c5bc2b33135684dcb70011954'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'generated_worker_key/00b5b02050bc6588cdfe9e523b2ba24a6c9de3c7'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'guardian/c4acb6073abb4e17165253935c923dfbdfbfb188'... Skipped [Package already compiled] (00:00:00)
  Compiling package 's3_resource/522540c90709961062d9ad0978e974a7cf8751b1'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'uaa/517a7bcdf12725b6c1bd39f7c38de9796cd5eb2d'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'postgres/3b1089109c074984577a0bac1b38018d7a2890ef'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'lunaclient/b922e045db5246ec742f0c4d1496844942d6167a'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'tar/f2ea61c537d8eb8cb2d691ce51e8516b28fa5bb7'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'uaa_utils/20557445bf996af17995a5f13bf5f87000600f2e'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'cf_resource/432bc0f191661e40a463f188168b76477ce11198'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'atc/3f57e486f7bdaa1fdd8329157b42c55fd2739e67'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'busybox/fc652425c32d0dad62f45bca18e1899671e2e570'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'director/50af678ba068312e5de229b0558775ebae8d0892'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'btrfs_tools/6856973d0bc2dc673b6740f5e164ba77a77fd4a6'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'postgres-9.4/ded764a075ae7513d4718b7cf200642fdbf81ae4'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'hg_resource/cd6a634e984c26087aedc4ab646678fa3cb0560d'... Skipped [Package already compiled] (00:00:00)
  Compiling package 'fly/71b338bda01b0072b8110e04d454b3b3740402d9'... Skipped [Package already compiled] (00:00:00)
  Updating instance 'bosh/0'... Finished (00:01:50)
  Waiting for instance 'bosh/0' to be running... Finished (00:01:00)
  Running the post-start scripts 'bosh/0'... Finished (00:00:01)
Finished deploying (00:04:45)

Stopping registry... Finished (00:00:00)  
Cleaning up rendered CPI jobs... Finished (00:00:00)

Succeeded  

this can take up to 15 minutes depending on your internet connection

we can now test if everything works with the following command

bucc test  

this will try to verify if BOSH, UAA, Credhub and Concourse are working and that we are able to login to those components

with the following command we can login to bosh and start using it

bucc bosh  

from here on out you can use all the bosh2 commands like: bosh vms, bosh releases, etc

you can also check and setup the concourse that has been deployed on your bucc:

  • bucc info will show you the url and login information for the Web UI of Concourse
  • bucc fly will download the fly cli and connect and login to Concourse

bucc routes will setup a route in linux/mac OS so that traffic intended for BUCC-Lite can be redirected to its locally deployed bosh VMs

for all other commands use bucc help

 bucc help
BUCC (BOSH UAA Credhud Concourse) CLI v0.1  
  up -- creates the bucc VM with bosh create-env
  down -- deletes VM with bosh delete-env
  ssh -- ssh into the bucc VM
  env -- sourceable envrionment variables for cli clients
  int -- wrapper for 'bosh2 int' for the bosh manifest
  info -- displays info about bucc deployed endpoints
  vars -- print vars (yaml formatted) for use in pipelines
  bosh -- configures bosh cli
  credhub -- configures credhub cli
  uaac -- configures uaac cli
  fly -- configures fly cli
  routes -- add routes for virtualbox
  test -- check if all systems are operational