summaryrefslogtreecommitdiff
path: root/ansible/roles/jenkins/tasks/jenkins-cfg.yml
blob: baee182d2f67bd1dc7ddf3b15985a02278ab03fd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#- name: Set up minimal Jenkins configuration skeleton
#  # This requires recursive copy patch
#  copy: backup=yes src=jenkins-config/ dest=/var/lib/jenkins/ owner=jenkins
#  sudo: yes
#  notify:
#      - Restart Jenkins

- name: Set up Jenkins job root dir
  file: state=directory dest=/var/lib/jenkins/jobs owner=jenkins mode=0755
  sudo: yes

- name: Set up minimal Jenkins configuration skeleton 1
  file: state=directory dest=/var/lib/jenkins/{{item}} owner=jenkins
  sudo: yes
  with_items:
    - users/admin/
    - jobs/blank/

- name: Set up minimal Jenkins configuration skeleton 2
  copy: backup=yes src=jenkins-config/{{item}} dest=/var/lib/jenkins/{{item}} owner=jenkins
  sudo: yes
  with_items:
    - users/admin/config.xml
    - jobs/blank/config.xml
  notify:
      - Restart Jenkins

- when: jenkins_managed_config
  name: Create managed Jenkins config file
  template: backup=yes src=jenkins-config/config.xml dest=/var/lib/jenkins/ owner=jenkins
  sudo: yes
  notify:
      - Restart Jenkins

- when: not jenkins_managed_config
  name: Create Ansible-speced Jenkins config file as config.xml.ansible
  template: backup=yes src=jenkins-config/config.xml dest=/var/lib/jenkins/config.xml.ansible owner=jenkins
  sudo: yes
  notify:
      - Restart Jenkins
- when: not jenkins_managed_config
  name: Copy config.xml.ansible to config.xml if configuring first time (fail means config.xml is not updated)
  shell: "cd /var/lib/jenkins; [ ! -f config.xml ] && cp config.xml.ansible config.xml"
  ignore_errors: yes
  sudo: yes
  sudo_user: jenkins

- name: Create Jenkins external address config
  template: src=jenkins-config/hudson.tasks.Mailer.xml
            dest=/var/lib/jenkins/hudson.tasks.Mailer.xml owner=jenkins backup=yes
  sudo: yes