Since we no longer have any machines in phx2, I have tried to remove them from ansible. Note that there are still some places where we need to remove them still: nagios, dhcp, named were not touched, and in cases where it wasn't pretty clear what a conditional was doing I left it to be cleaned up later. Signed-off-by: Kevin Fenzi <kevin@scrye.com>
158 lines
4.7 KiB
YAML
158 lines
4.7 KiB
YAML
- name: push packages out to frontend
|
|
hosts: mbs_frontend:mbs_frontend_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
|
|
vars:
|
|
testing: False
|
|
handlers:
|
|
- import_tasks: "{{ handlers_path }}/restart_services.yml"
|
|
|
|
tasks:
|
|
- name: clean all metadata {%if testing%}(with infrastructure-testing on){%endif%}
|
|
command: yum clean all {%if testing%} --enablerepo=infrastructure-tags-stg {%endif%}
|
|
check_mode: no
|
|
- name: update mbs packages from main repo
|
|
package:
|
|
name:
|
|
- module-build-service
|
|
- python2-solv
|
|
state: latest
|
|
when: not testing
|
|
- name: update mbs packages from testing repo
|
|
yum:
|
|
name:
|
|
- module-build-service
|
|
- python2-solv
|
|
state: latest
|
|
enablerepo: infrastructure-tags-stg
|
|
when: testing
|
|
|
|
- name: push packages out to backend
|
|
hosts: mbs_backend:mbs_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
|
|
vars:
|
|
testing: False
|
|
handlers:
|
|
- import_tasks: "{{ handlers_path }}/restart_services.yml"
|
|
|
|
tasks:
|
|
- name: clean all metadata {%if testing%}(with infrastructure-testing on){%endif%}
|
|
command: yum clean all {%if testing%} --enablerepo=infrastructure-tags-stg {%endif%}
|
|
check_mode: no
|
|
- name: update mbs packages from main repo
|
|
package:
|
|
name:
|
|
- module-build-service
|
|
- python2-solv
|
|
state: latest
|
|
when: not testing
|
|
- name: update mbs packages from testing repo
|
|
yum:
|
|
name:
|
|
- module-build-service
|
|
- python2-solv
|
|
state: latest
|
|
enablerepo: infrastructure-tags-stg
|
|
when: testing
|
|
|
|
- name: verify the frontend and stop it
|
|
hosts: mbs_frontend:mbs_frontend_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:
|
|
- import_tasks: "{{ handlers_path }}/restart_services.yml"
|
|
vars:
|
|
mbs_import_default_modules: False
|
|
|
|
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.iad2.fedoraproject.org
|
|
ignore_errors: true
|
|
|
|
roles:
|
|
- mbs/common
|
|
- mbs/frontend
|
|
|
|
post_tasks:
|
|
- service: name="httpd" state=stopped
|
|
|
|
- name: verify the backend, stop it, and then upgrade the db
|
|
hosts: mbs_backend:mbs_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:
|
|
- import_tasks: "{{ handlers_path }}/restart_services.yml"
|
|
vars:
|
|
mbs_import_default_modules: False
|
|
|
|
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.iad2.fedoraproject.org
|
|
ignore_errors: true
|
|
|
|
roles:
|
|
- mbs/common
|
|
#- mbs/backend
|
|
|
|
tasks:
|
|
- name: Stop the mbs backend
|
|
service: name="fedmsg-hub" state=stopped
|
|
|
|
- name: Upgrade the database
|
|
command: mbs-upgradedb
|
|
ignore_errors: true
|
|
|
|
- name: And... start the backend again
|
|
service: name="fedmsg-hub" state=started
|
|
|
|
- name: Import the default-modules
|
|
command: /usr/bin/mbs-manager import_module /etc/module-build-service/default-modules/{{ item | basename }}
|
|
with_fileglob:
|
|
- "{{ playbook_dir }}/../../../roles/mbs/common/files/default-modules.{{ env }}/*.yaml"
|
|
|
|
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.iad2.fedoraproject.org
|
|
ignore_errors: true
|
|
|
|
- name: restart the frontend
|
|
hosts: mbs_frontend:mbs_frontend_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:
|
|
- import_tasks: "{{ handlers_path }}/restart_services.yml"
|
|
|
|
tasks:
|
|
- service: name="httpd" state=started
|
|
# Shouldn't be necessary after this change makes it out
|
|
# https://src.fedoraproject.org/rpms/module-build-service/c/d19515a7c053aa90cddccd5e10a5615b773a7bd2
|
|
- name: Make sure fedmsg-hub isn't running on the frontend.
|
|
service:
|
|
name: fedmsg-hub
|
|
state: stopped
|
|
enabled: false
|
|
|
|
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.iad2.fedoraproject.org
|
|
ignore_errors: true
|