= Using Juju = Currently, we use a small wrapper around the juju command in order access the correct juju for the installation type. For example, running ''openstack-juju'' on a single install will make sure to run against the juju environment inside the toplevel container. == Running Juju outside of the OpenStack Cloud == You can add services to the existing deployment before switching over to your OpenStack private cloud. Some examples of getting the status, deploying services, and adding units: {{{#!highlight bash # juju status $ openstack-juju status # Deploying a service $ openstack-juju deploy jenkins # Adding units $ openstack-juju add-unit mysql # Setting configuration options $ openstack-juju set mysql 'tuning-level=fast' # Getting configuration options $ openstack-juju get mysql }}} == Juju inside your private cloud == Once the OpenStack cloud has been deployed there are only a couple of steps to enable juju to deploy charms into the private cloud. Generate necessary image metadata for Juju to utilize: {{{#!highlight bash $ openstack-juju switch openstack $ openstack-juju metadata generate-image -i -s trusty # Sync Juju tools and bootstrap onto your OpenStack private cloud: $ openstack-juju sync-tools $ openstack-juju bootstrap --metadata-source /home/ubuntu }}} More information on setting up private clouds can be found at [[https://jujucharms.com/docs/stable/howto-privatecloud|How Set up a Private Cloud using Simplestreams]] Now you can deploy charms within your OpenStack cloud. {{{#!highlight bash $ openstack-juju deploy jenkins $ openstack-juju deploy -n 5 jenkins-slave $ openstack-juju add-relation jenkins jenkins-slave $ openstack-juju set jenkins password=AseCreTPassWoRd $ openstack-juju expose jenkins }}}