Clark Boylan 506a11f9d2 Add ansible role to manage gerritbot
This new ansible role deploys gerritbot with docker-compose on
eavesdrop.openstack.org. This way we can run it where the other bots
live.

Testing is rudimentary for now as we don't really want to connect to a
production gerrit and freenode. We check things the best we can.

We will want to coordinate deployment of this change with disabling the
running service on the gerrit server.

Depends-On: https://review.opendev.org/745240
Change-Id: I008992978791ff0a38f92fb4bc529ff643f01dd6
2020-08-07 13:20:18 -07:00

68 lines
1.5 KiB
YAML

- name: Ensure /etc/gerritbot directory
file:
state: directory
path: /etc/gerritbot
mode: 0755
- name: Put gerritbot config in place
template:
src: gerritbot.config.j2
dest: /etc/gerritbot/gerritbot.config
owner: root
group: root
mode: 0600
- name: Put gerritbot logging config in place
copy:
src: logging.config
dest: /etc/gerritbot/logging.config
owner: root
group: root
mode: 0644
- name: Put gerritbot channel config in place
copy:
src: /opt/project-config/gerritbot/channels.yaml
remote_src: yes
dest: /etc/gerritbot/channel_config.yaml
owner: root
group: root
mode: 0644
register: channel_config_copied
- name: Put gerritbot ssh key in place
copy:
content: "{{ gerritbot_ssh_key }}"
dest: /etc/gerritbot/gerritbot_rsa
owner: root
group: root
mode: 0600
- name: Ensure /etc/gerritbot-docker directory
file:
state: directory
path: /etc/gerritbot-docker
mode: 0755
- name: Put docker-compose file in place
copy:
src: docker-compose.yaml
dest: /etc/gerritbot-docker/docker-compose.yaml
owner: root
group: root
mode: 0644
- name: Run docker-compose pull
shell:
cmd: docker-compose pull
chdir: /etc/gerritbot-docker/
- name: Run docker-compose up
shell:
cmd: "docker-compose up -d {{ channel_config_copied is changed | ternary('--force-recreate', '') }}"
chdir: /etc/gerritbot-docker/
- name: Run docker prune to cleanup unneeded images
shell:
cmd: docker image prune -f