infrastructure/ansible/roles/traefik/tasks/main.yml

55 lines
1.3 KiB
YAML

- name: Create install directory
file:
path: /opt/traefik
state: directory
owner: "{{ docker_user.name }}"
mode: "{{ docker_compose_directory_mask }}"
become: true
- name: Create config directory
file:
path: /opt/traefik/traefik
state: directory
mode: "{{ docker_compose_directory_mask }}"
become: true
- name: Install compose file
template:
src: files/docker-compose.yml
dest: /opt/traefik/docker-compose.yml
mode: "{{ docker_compose_file_mask }}"
owner: "{{ docker_user.name }}"
validate: /usr/bin/docker-compose -f %s config
register: compose_file
become: true
- name: Install config
template:
src: files/traefik.yml
dest: /opt/traefik/traefik/traefik.yml
mode: "{{ docker_compose_file_mask }}"
owner: "{{ docker_user.name }}"
register: config_file
become: true
- name: Install file provider
template:
src: files/file-provider.yml
dest: /opt/traefik/traefik/file-provider.yml
mode: "{{ docker_compose_file_mask }}"
owner: "{{ docker_user.name }}"
register: file_provider
become: true
- name: Cycle container
docker_compose:
project_src: /opt/traefik
pull: true
remove_orphans: true
remove_volumes: true
state: "{{ item }}"
when: compose_file.changed or config_file.changed or file_provider.changed
loop:
- absent
- present