You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
hetzner-ansible/roles/traefik/meta/tasks/main.yml

84 lines
2.1 KiB
YAML

---
- name: "Send mattermost messsge"
uri:
url: "{{ mattermost_hook_smardigo }}"
method: POST
body: "{{ lookup('template','mattermost-deploy-start.json.j2') }}"
body_format: json
headers:
Content-Type: "application/json"
delegate_to: 127.0.0.1
become: false
when:
- send_status_messages
- name: "Check if traefik/docker-compose.yml exists"
stat:
path: '{{ service_base_path }}/traefik/docker-compose.yml'
register: check_docker_compose_file
- name: "Stop traefik"
shell: docker-compose down
args:
chdir: '{{ service_base_path }}/traefik'
when: check_docker_compose_file.stat.exists
ignore_errors: yes
- name: "Deploy docker templates for traefik"
include_role:
name: _deploy
tasks_from: templates
vars:
current_config: "_docker"
current_base_path: "{{ service_base_path }}"
current_destination: "traefik"
current_owner: "{{ docker_owner }}"
current_group: "{{ docker_group }}"
current_docker: "{{ traefik_docker }}"
- name: "Deploy service templates for traefik"
include_role:
name: _deploy
tasks_from: templates
vars:
current_config: "traefik"
current_base_path: "{{ service_base_path }}"
current_destination: "traefik"
current_owner: "{{ docker_owner }}"
current_group: "{{ docker_group }}"
- name: "Ensure acme.json exists"
copy:
content: ""
dest: '{{ service_base_path }}/traefik/acme.json'
force: no
owner: "{{ docker_owner }}"
group: "{{ docker_group }}"
mode: '0600'
- name: "Update traefik"
shell: docker-compose pull
args:
chdir: '{{ service_base_path }}/traefik'
tags:
- update_deployment
- name: "Start traefik"
shell: docker-compose up -d
args:
chdir: '{{ service_base_path }}/traefik'
- name: "Send mattermost messsge"
uri:
url: "{{ mattermost_hook_smardigo }}"
method: POST
body: "{{ lookup('template','mattermost-deploy-end.json.j2') }}"
body_format: json
headers:
Content-Type: "application/json"
delegate_to: 127.0.0.1
become: false
when:
- send_status_messages