blob: b79aeab01d47328d40c15aa335f0be2d2139facf (
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
|
- name: check to see if a mash is going on before we do anything...
hosts: bodhi-backend:bodhi-backend-stg
user: root
vars_files:
- /srv/web/infra/ansible/vars/global.yml
- "/srv/private/ansible/vars.yml"
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
tasks:
- name: Check for the existance of a mashing lock.
shell: "ls -alh /mnt/koji/mash/updates/MASHING*"
register: lockfile
ignore_errors: true
- name: Fail if we found that a mash was in progress
fail: msg="Presence of lockfile indicates that a mash is in progress."
any_errors_fatal: true
when: lockfile.rc == 0
- name: push packages out
hosts: bodhi-backend:bodhi-backend-stg:bodhi2:bodhi2-stg
user: root
vars_files:
- /srv/web/infra/ansible/vars/global.yml
- "/srv/private/ansible/vars.yml"
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
handlers:
- include: "{{ handlers }}/restart_services.yml"
tasks:
- name: clean all metadata {%if testing%}(with infrastructure-testing on){%endif%}
command: yum clean all {%if testing%} --enablerepo=infrastructure-testing {%endif%}
check_mode: no
- name: yum update bodhi-server packages from main repo
yum: name="{{ item }}" state=latest
with_items:
- bodhi-docs
- bodhi-server
- name: yum update bodhi-server packages from testing repo
yum: name="{{ item }}" state=latest enablerepo=infrastructure-testing
with_items:
- bodhi-docs
- bodhi-server
when: testing
- name: verify the frontend and stop it
hosts: bodhi2:bodhi2-stg
user: root
vars_files:
- /srv/web/infra/ansible/vars/global.yml
- "/srv/private/ansible/vars.yml"
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
handlers:
- include: "{{ handlers }}/restart_services.yml"
pre_tasks:
- name: tell nagios to shush w.r.t. the frontend
nagios: action=downtime minutes=15 service=host host={{ inventory_hostname_short }}{{ env_suffix }}
delegate_to: noc01.phx2.fedoraproject.org
ignore_errors: true
roles:
- bodhi2/base
post_tasks:
- service: name="httpd" state=stopped
- name: verify the backends, stop them, and then upgrade the db
hosts: bodhi-backend:bodhi-backend-stg
user: root
vars_files:
- /srv/web/infra/ansible/vars/global.yml
- "/srv/private/ansible/vars.yml"
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
handlers:
- include: "{{ handlers }}/restart_services.yml"
pre_tasks:
- name: tell nagios to shush w.r.t. the backend
nagios: action=downtime minutes=15 service=host host={{ inventory_hostname_short }}{{ env_suffix }}
delegate_to: noc01.phx2.fedoraproject.org
ignore_errors: true
roles:
- bodhi2/backend
tasks:
- name: Stop the fedmsg-hub backend
service: name="fedmsg-hub" state=stopped
- name: Upgrade the database
command: /usr/bin/alembic -c /usr/share/bodhi/alembic.ini upgrade head
args:
chdir: /usr/share/bodhi/
when: inventory_hostname.startswith(('bodhi-backend03.phx2', 'bodhi-backend01.stg.phx2'))
- name: And... start the backend again
service: name="fedmsg-hub" state=started
post_tasks:
- name: tell nagios to unshush w.r.t. the backend
nagios: action=unsilence service=host host={{ inventory_hostname_short }}{{ env_suffix }}
delegate_to: noc01.phx2.fedoraproject.org
ignore_errors: true
- name: restart the frontend
hosts: bodhi2:bodhi2-stg
user: root
vars_files:
- /srv/web/infra/ansible/vars/global.yml
- "/srv/private/ansible/vars.yml"
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
handlers:
- include: "{{ handlers }}/restart_services.yml"
tasks:
- service: name="httpd" state=started
post_tasks:
- name: tell nagios to unshush w.r.t. the frontend
nagios: action=unsilence service=host host={{ inventory_hostname_short }}{{ env_suffix }}
delegate_to: noc01.phx2.fedoraproject.org
ignore_errors: true
|