One of my pet projects has been: how quickly and simply can I boot Jenkins CI on to Engine Yard Cloud? I now have it down to two command line steps!
$ gem install ey_cli
$ ey_cli create_app --git git://github.com/engineyard/eycloud-app-jenkins.git --name jenkins --env_name jenkins --type rack
A few minutes later and you will have your own Jenkins CI running on a High-CPU Medium instance at AWS for about $175 per month. You can now explore the wonders of continuous integration!
Initially it will have an ugly AWS default URL. You can fix this blemish on your company's reputation by using a DNS host such as DNSimple or AWS's Route 53, the fog cloud library, and then using the
ey-dns helper tool [documentation].
For example, if you own the
myapp.com domain then you can assign
ci.myapp.com to your new Jenkins CI instance with:
$ gem install engineyard-dns
$ ey-dns assign ci.myapp.com -e jenkins -a jenkins
See the readme for how to setup your fog credentials for AWS or DNSimple or other DNS providers.
The magical source code for this Jenkins CI bootstrapper is available for your consideration and amusement.
Also, when you create your Jenkins CI server with the instructions above, it will also come installed with the X Window system Xvfb so you can use it for your Jenkins jobs.
If you have fun with this simple installation guide to using Jenkins CI and have success using Jenkins CI for your Ruby or PHP projects, we'd love to hear your stories in the comments section!