Mojo: Continuous Delivery for Juju
To get started with mojo, on trusty, xenial or yakety (using the mojo-how-to spec as an example):
Install Mojo via the snap:
sudo snap install --classic mojo
Alternatively, Mojo is available via a PPA:
sudo add-apt-repository ppa:mojo-maintainers/ppa sudo apt-get update sudo apt-get install mojo
Setup Juju and LXD.
LXD is needed locally for this quick start and it also works well as backing for Juju. The instructions on the Juju getting started page are good ones to follow. When ready setup a model:
juju add-model mojo-how-to
Create a project and export variables to save typing later on:
export MOJO_SERIES=trusty export MOJO_PROJECT=mojo-how-to export MOJO_WORKSPACE=$MOJO_PROJECT export MOJO_SPEC="lp:~mojo-maintainers/mojo/mojo-specs" export MOJO_STAGE=mojo-how-to/devel mojo project-new -c lxd $MOJO_PROJECT
Create a workspace:
mojo workspace-new $MOJO_SPEC $MOJO_WORKSPACE
Run your mojo spec to configure your environment as specified in the mojo spec:
After the mojo run completes you will have a fully deployed Juju model with a machine running this website.
You can run
juju status to see the deployment and load the machine ip in your web browser to verify.
When you are ready you can remove it all with these steps:
mojo project-destroy $MOJO_PROJECT juju destroy-model mojo-how-to
If you're interested in hacking on Mojo, please take a look at our hacking page.
To keep up to date with Mojo there are two mailing lists which might be of interest: