Commit 63467254 by Feanil Patel

Update plugins and add tasks for restoring from backup.

parent 5c3c921c
......@@ -24,9 +24,13 @@ JENKINS_ADMIN_AWS_CREDENTIALS: !!null
# jenkins_admin also requires other variables that are not defined by default.
# JENKINS_ADMIN_S3_PROFILE: !!null
# JENKINS_ADMIN_BACKUP_BUCKET: !!null
# JENKINS_ADMIN_BACKUP_KEY: !!null
jenkins_admin_role_name: jenkins_admin
jenkins_admin_version: "1.630"
# repo for nodejs
jenkins_chrislea_ppa: "ppa:chris-lea/node.js"
#
......@@ -90,11 +94,9 @@ jenkins_admin_plugins:
- { name: "greenballs", version: "1.14" }
- { name: "rebuild", version: "1.21" }
- { name: "build-user-vars-plugin", version: "1.1" }
- { name: "build-token-root", version: "1.1" }
- { name: "matrix-auth", version: "1.2" }
- { name: "matrix-project", version: "1.3" }
- { name: "mailer", version: "1.9" }
- { name: "pam-auth", version: "1.1" }
- { name: "build-user-vars-plugin", version: "1.3" }
- { name: "credentials", version: "1.15" }
- { name: "ssh-credentials", version: "1.7.1" }
......@@ -102,7 +104,6 @@ jenkins_admin_plugins:
- { name: "token-macro", version: "1.10" }
- { name: "parameterized-trigger", version: "2.25" }
- { name: "multiple-scms", version: "0.3" }
- { name: "git", version: "2.2.2" }
- { name: "maven-plugin", version: "2.5" }
- { name: "copy-project-link", version: "1.2" }
- { name: "scriptler", version: "2.6.1" }
......@@ -133,9 +134,10 @@ jenkins_admin_plugins:
- { name: "htmlpublisher", version: "1.3" }
- { name: "github-oauth", version: "0.20" }
- { name: "build-name-setter", version: "1.3" }
- { name: "ec2", version: "1.23" }
- { name: "jenkins-flowdock-plugin", version: "1.1.3" }
- { name: "simple-parameterized-builds-report", version: "1.3" }
- { name: "git-client", version: "1.19.0"}
- { name: "git", version: "2.4.0"}
jenkins_admin_jobs:
- 'backup-jenkins'
......
......@@ -24,6 +24,7 @@ dependencies:
- edxapp_common
- role: jenkins_master
jenkins_plugins: "{{ jenkins_admin_plugins }}"
jenkins_version: "{{ jenkins_admin_version }}"
- role: supervisor
supervisor_app_dir: "{{ jenkins_supervisor_app_dir }}"
supervisor_data_dir: "{{ jenkins_supervisor_data_dir }}"
......
......@@ -138,6 +138,45 @@
user_install=no
with_items: jenkins_admin_gem_pkgs
- name: get s3 one time url
local_action:
module: "s3"
bucket: "{{ JENKINS_ADMIN_BACKUP_BUCKET }}"
object: "{{ JENKINS_ADMIN_BACKUP_S3_KEY }}"
mode: "geturl"
expiration: 30
register: s3_one_time_url
when: JENKINS_ADMIN_BACKUP_BUCKET is defined and JENKINS_ADMIN_BACKUP_S3_KEY is defined
- name: download s3 backup
get_url:
url: "{{ s3_one_time_url.url }}"
dest: "/tmp/{{ JENKINS_ADMIN_BACKUP_S3_KEY | basename }}"
mode: "0644"
owner: "{{ jenkins_user }}"
when: JENKINS_ADMIN_BACKUP_BUCKET is defined and JENKINS_ADMIN_BACKUP_S3_KEY is defined
- name: stop jenkins
service:
name: "jenkins"
state: "stopped"
when: JENKINS_ADMIN_BACKUP_BUCKET is defined and JENKINS_ADMIN_BACKUP_S3_KEY is defined
- name: restore the backup
unarchive:
src: "/tmp/jenkins_backup.tar.gz"
dest: "{{ jenkins_home }}/.."
owner: "{{ jenkins_user }}"
copy: false
when: JENKINS_ADMIN_BACKUP_BUCKET is defined and JENKINS_ADMIN_BACKUP_S3_KEY is defined
# When testing consider commenting this out
- name: start jenkins
service:
name: "jenkins"
state: "started"
when: JENKINS_ADMIN_BACKUP_BUCKET and JENKINS_BACKUP_S3_KEY
- include: nat_monitor.yml
tags:
- nat-monitor
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment