/ansible-jenkins

Jenkins ansible playbook

Primary LanguageJinjaCreative Commons Zero v1.0 UniversalCC0-1.0

ansible-jenkins

This is an ansible playbook to install and configure Jenkins-CI.

The playbook will install NGINX, Docker, a local-only SMTP server and Jenkins. It will also install Docker-maintenance cron jobs and Jenkins-backup scripts to S3.

This playbook assumes that the instance is behind an elb and the elb will do its SSL termination. The ssl certificate can be obtained using AWS ACM or can be manually uploaded

This playbook is a rework of the ee-infra-jenkins

Build your own

  1. SSH to host you want to run this
  2. Install git and ansible
  3. Clone this repository to a location
  4. Run the playbook
ansible-playbook site.yml -e "nginx_htpasswd=YourPasswordHere jenkins_backup_bucket=BucketNameHere jenkins_backup_dms=deadmanssitchurl jenkins_backup_directory=backupdirpath"

Currently this playbook is being used as part of an autoscaling group userdata that clones and runs this playbook on boot.

Jenkins backups

This playbook expects that you use the ThinBackup Jenkins plugin and that you save backups in /data/backups.