Running CI tests locally.

Jesse Meek jesse.meek at canonical.com
Wed May 20 01:47:08 UTC 2015


Hi All,

tl;dr bash script to run CI deploy job locally: 
https://github.com/waigani/juju-scripts/blob/master/ci.sh

During the last sprint I showed a script which checks out the CI tools 
and runs the tests locally. The link to the script and slides have been 
in the sprint notes doc. As a few have asked for it, I'm sharing the 
link here. I've updated the script to make use of new flags and features 
added to the CI tools. The script comments give instructions on how to 
use it. I'll just give one example here:

$ ci.sh --provider=amazon --current-juju-bin=/custom/version/juju/bin 
--keep-env --upload-tools --upgrade

This uses my custom built Juju to bootstrap using my "amazon" config. It 
uploads and uses the local tools for bootstraping, deploys two services, 
adds a relation, then upgrades (incrementing the patch version by 1) - 
all on ec2. The environment is keep for inspection.

ci.sh currently only runs the deploy job (bootstrap, deploy two 
services, add relation, destroy environment). From what I can see, this 
is the only job currently in the juju-ci-tools repository. I have been 
writing a JES deploy job (testing multiple environments). When this is 
ready*, ci.sh will be updated to run different jobs.

* The JES deploy job script is all but done. Along the way, it has 
revealed bugs with JES which take priority over finishing the script. I 
do not want to push the JES job up until we get at least one clean pass.

Cheers,
Jess



More information about the Juju-dev mailing list