Rapidly provision Jenkins on AWS using Ansible

146 words, 1 minutes.

This week I’d been fighting with a Chef install to do something relatively simple. Bogged down in a rats nest of complexity (extra Ruby scripts referencing Chef environment files, etc etc), I decided to see if there was a easier way.

Although I wasn’t actually trying to install Jenkins, my workflow led me to look at installing it with Ansible as a proof of concept. Basically I wanted to see how easy this task could really be.

I’ve put the playbook, along with some notes, into a Githubrepo, which you should feel free to fork and play around with.

Currently this is a very simple example - spin up the EC2 instance, then install and run Jenkins as its own daemon (on the default port of 8080).

The playbook includes an example of how to use Ansible’s Route53 module. See the readme for extra notes.