ansible/playbooks/manual/push-badges.yml

106 lines
2.6 KiB
YAML
Raw Normal View History

# Push out any new badge stuff.
#
# Badge artists and badge developers should be pushing stuff to this repo:
#
# https://pagure.io/fedora-badges.git
#
# This playbook will take any new content from there and push it out onto our
# servers.
2015-09-25 18:49:17 +00:00
- name: get the badges repo happening from the batcave
hosts: batcave01.iad2.fedoraproject.org
user: root
gather_facts: False
vars_files:
- /srv/web/infra/ansible/vars/global.yml
- "/srv/private/ansible/vars.yml"
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
vars:
upstream: "https://pagure.io/fedora-badges.git"
workingdir: /srv/web/infra/badges/
local_repo: /srv/git/badges
tasks:
- name: Make a tmp directory
tempfile:
state: directory
suffix: _badges_tempdir
register: tmp
- set_fact:
2018-07-25 18:03:53 +00:00
tempdir: "{{tmp.path}}"
- name: clone the local bare repo
2020-08-04 16:24:03 +02:00
git:
dest: "{{tempdir}}"
repo: "{{local_repo}}"
2020-08-04 16:24:03 +02:00
remote: origin
update: yes
- name: add pagure as a second remote
2020-08-04 16:24:03 +02:00
command: git remote add pagure {{upstream}}
args:
chdir: "{{tempdir}}"
- name: pull down changes from pagure
2020-08-04 16:24:03 +02:00
command: git pull pagure master
args:
chdir: "{{tempdir}}"
- name: push pagure changes back to the lockbox bare repo
2020-08-04 16:24:03 +02:00
command: git push origin master
args:
chdir: "{{tempdir}}"
- name: clean up that temporary {{tempdir}} dir
2020-08-04 16:24:03 +02:00
file:
dest: "{{tempdir}}"
state: absent
- name: fix the working dir repo to use the right location
command: git remote set-url origin {{local_repo}}
args:
chdir: "{{workingdir}}"
- name: and pull those commits from the bare repo to the working dir
2020-08-04 16:24:03 +02:00
command: git pull origin master
args:
chdir: "{{workingdir}}"
2015-01-06 16:30:46 +00:00
handlers:
- import_tasks: "{{ handlers_path }}/restart_services.yml"
2015-01-06 16:30:46 +00:00
- name: copy new badge art over to the badges web nodes
hosts: badges_web:badges_web_stg
user: root
gather_facts: False
vars_files:
- /srv/web/infra/ansible/vars/global.yml
- "/srv/private/ansible/vars.yml"
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
roles:
- badges/frontend
2015-01-06 16:30:46 +00:00
handlers:
- import_tasks: "{{ handlers_path }}/restart_services.yml"
2015-01-06 16:30:46 +00:00
- name: copy any new badges rules over to the badges backend and restart it
hosts: badges_backend:badges_backend_stg
user: root
gather_facts: False
vars_files:
- /srv/web/infra/ansible/vars/global.yml
- "/srv/private/ansible/vars.yml"
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
roles:
- badges/backend
2015-01-06 16:30:46 +00:00
handlers:
- import_tasks: "{{ handlers_path }}/restart_services.yml"