This project is a BOSH release for cassandra-boshrelease
.
To create and upload this release to your BOSH:
bosh target BOSH_URL
git clone git@github.com:engineyard/cassandra-boshrelease.git
cd cassandra-boshrelease
bosh create release
# blobs are automatically downloaded
# name it 'cassandra-dev' or something unique to your bosh
bosh upload release
This project includes development support within Vagrant using bosh-solo
$ bundle
$ bosh create release
$ vagrant up
...
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use!
[default] Mounting shared folders...
[default] -- bosh-src: /bosh
[default] -- v-root: /vagrant
... installs lots of stuff...
$ vagrant ssh
Inside the VM:
[inside vagrant as vagrant user]
sudo su -
[inside vagrant as root user]
cd /vagrant/
sm bosh-solo update examples/default.yml
This process will take some time to install Ubuntu packages (during install_dependencies
) and the source packages within this release.
After that, development is very quick and responsive.
Each time you change your bosh release you can quickly deploy it into the VM:
[outside vagrant within the project]
$ bosh create release
[inside vagrant as root user]
cd /vagrant/
sm bosh-solo update examples/default.yml
All logs will be sent to the terminal so you can watch for any errors as quickly as possible.
[inside vagrant as root user]
sm bosh-solo tail_logs
If you create a final release bosh create release --final
, you must immediately create a new development release. Yeah, this is a bug I guess.
[outside vagrant]
bosh create release --final
bosh create release
[inside vagrant as vcap user]
/vagrant/scripts/update examples/default.yml
This BOSH release is configurable during deployment with properties.
Please maintain example scenarios in the examples/
folder.
To switch between example scenarios, run sm bosh-solo update examples/FILE.yml
with a different example scenario.
Once you have a BOSH release that you like, you can upload it to BOSH and deploy it.
bosh upload release
bosh deployment path/to/manifest.yml
bosh deploy
Example properties
for your manifest.yml
can be taken from the examples in examples\