computer-playbook/roles/docker-mailu/tasks/main.yml

74 lines
2.1 KiB
YAML

---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
vars:
nginx_docker_reverse_proxy_extra_configuration: "client_max_body_size 31M;"
- name: "create {{path_docker_compose_instances}}mailu"
file:
path: "{{path_docker_compose_instances}}mailu"
state: directory
mode: 0755
- name: "create {{path_administrator_scripts}}mailu"
file:
path: "{{path_administrator_scripts}}mailu"
state: directory
mode: 0755
- name: "create /etc/mailu/"
file:
path: "/etc/mailu"
state: directory
mode: 0755
- name: "create /etc/mailu/certs"
file:
path: "/etc/mailu/certs"
state: directory
mode: 0755
- name: add docker-compose.yml
template:
src: "docker-compose.yml.j2"
dest: "{{docker_compose_instance_directory}}docker-compose.yml"
notify: docker compose project setup
- name: add mailu.env
template:
src: "mailu.env.j2"
dest: "{{docker_compose_instance_directory}}mailu.env"
notify: docker compose project setup
- name: add deploy-letsencrypt-mailu.sh
template:
src: "deploy-letsencrypt-mailu.sh.j2"
dest: "{{path_administrator_scripts}}mailu/deploy-letsencrypt-mailu.sh"
- name: configure deploy-letsencrypt-mailu.service
template:
src: "deploy-letsencrypt-mailu.service.j2"
dest: "/etc/systemd/system/deploy-letsencrypt-mailu.service"
notify: restart deploy-letsencrypt-mailu.service
- name: "include role for systemd-timer for {{service_name}}"
include_role:
name: systemd-timer
vars:
on_calendar: "{{on_calendar_deploy_mailu_certificates}}"
service_name: "deploy-letsencrypt-mailu"
persistent: "true"
- name: flush docker service
meta: flush_handlers
when: setup | bool
- name: execute database migration
command:
cmd: "docker compose -p mailu exec admin flask mailu admin admin {{top_domain}} {{mailu_initial_root_password}}"
chdir: "{{docker_compose_instance_directory}}"
ignore_errors: true
when: setup | bool