e5732b6137
Zuul is changing the way its key management system work from implicit "backups" to explicit exports that can be used for backups. Additionally to rename projects we will need to update those keys in zk which can be done with copy and delete commands. We update the rename playbook to use these. Depends-On: https://review.opendev.org/c/zuul/zuul/+/803973 Change-Id: I2ba8015392f22ea615bcba7fb0d73a138dc77034
113 lines
2.5 KiB
YAML
113 lines
2.5 KiB
YAML
- name: Copy main.yaml into place
|
|
copy:
|
|
remote_src: yes
|
|
src: /opt/project-config/zuul/main.yaml
|
|
dest: /etc/zuul/main.yaml
|
|
notify: Reload Zuul Scheduler
|
|
|
|
- name: Add github key
|
|
copy:
|
|
content: '{{ zuul_github_app_key }}'
|
|
dest: /etc/zuul/github.key
|
|
owner: '{{ zuul_user }}'
|
|
group: '{{ zuul_group }}'
|
|
mode: 0600
|
|
|
|
- name: Add opendev status backup
|
|
include_role:
|
|
name: zuul-status-backup
|
|
vars:
|
|
tenant: opendev
|
|
|
|
- name: Add openstack status backup
|
|
include_role:
|
|
name: zuul-status-backup
|
|
vars:
|
|
tenant: openstack
|
|
|
|
- name: Add vexxhost status backup
|
|
include_role:
|
|
name: zuul-status-backup
|
|
vars:
|
|
tenant: vexxhost
|
|
|
|
- name: Add zuul status backup
|
|
include_role:
|
|
name: zuul-status-backup
|
|
vars:
|
|
tenant: zuul
|
|
|
|
- name: Add pyca status backup
|
|
include_role:
|
|
name: zuul-status-backup
|
|
vars:
|
|
tenant: pyca
|
|
|
|
- name: Add pypa status backup
|
|
include_role:
|
|
name: zuul-status-backup
|
|
vars:
|
|
tenant: pypa
|
|
|
|
- name: Backup zk key data daily
|
|
cron:
|
|
name: Backup zuul zk key data
|
|
minute: 0
|
|
hour: 0
|
|
# Note we backup to /var/lib/zuul because that is what we have bind
|
|
# mounted in the container and we are operating relative to that context
|
|
job: docker exec zuul-scheduler_scheduler_1 zuul export-keys /var/lib/zuul/zuul-keys-backup.json
|
|
|
|
- name: Install logging config
|
|
copy:
|
|
src: logging.conf
|
|
dest: /etc/zuul/logging.conf
|
|
|
|
- name: Install geraman logging config
|
|
copy:
|
|
src: gearman-logging.conf
|
|
dest: /etc/zuul/gearman-logging.conf
|
|
|
|
- name: Rotate logs
|
|
include_role:
|
|
name: logrotate
|
|
vars:
|
|
logrotate_file_name: /var/log/zuul/zuul.log
|
|
logrotate_rotate: 30
|
|
|
|
- name: Rotate zuul debug logs
|
|
include_role:
|
|
name: logrotate
|
|
vars:
|
|
logrotate_file_name: /var/log/zuul/debug.log
|
|
logrotate_rotate: 30
|
|
|
|
- name: Rotate gearman logs
|
|
include_role:
|
|
name: logrotate
|
|
vars:
|
|
logrotate_file_name: /var/log/zuul/gearman-server.log
|
|
|
|
- name: Make docker-compose directory
|
|
file:
|
|
state: directory
|
|
path: /etc/zuul-scheduler
|
|
|
|
- name: Install docker-compose file
|
|
copy:
|
|
src: docker-compose.yaml
|
|
dest: /etc/zuul-scheduler/docker-compose.yaml
|
|
|
|
- name: Update container images
|
|
include_tasks: pull.yaml
|
|
|
|
- name: Start containers
|
|
include_tasks: start.yaml
|
|
when: zuul_scheduler_start is defined and zuul_scheduler_start | bool
|
|
|
|
# We can prune here as it should leave the "latest" tagged images
|
|
# as well as the currently running images.
|
|
- name: Run docker prune to cleanup unneeded images
|
|
shell:
|
|
cmd: docker image prune -f
|