From 7aae344da0515d1fd0c574dbf22db3adc23a3136 Mon Sep 17 00:00:00 2001 From: Sam Al-Sapti Date: Sun, 18 Feb 2024 17:18:54 +0100 Subject: [PATCH] Don't specify service settings twice --- playbook.yml | 3 +++ roles/docker/defaults/main.yml | 13 +++++++++++-- roles/docker/tasks/services.yml | 10 +++++++--- uptime.data.coop.yml | 15 +++------------ 4 files changed, 24 insertions(+), 17 deletions(-) diff --git a/playbook.yml b/playbook.yml index de51a46..df74f98 100644 --- a/playbook.yml +++ b/playbook.yml @@ -15,6 +15,9 @@ smtp_host: "postfix" smtp_port: "587" + services_exclude: + - uptime_kuma + tasks: - import_role: name: ubuntu_base diff --git a/roles/docker/defaults/main.yml b/roles/docker/defaults/main.yml index 457b302..a3128a0 100644 --- a/roles/docker/defaults/main.yml +++ b/roles/docker/defaults/main.yml @@ -4,7 +4,6 @@ volume_root_folder: "/docker-volumes" volume_website_folder: "{{ volume_root_folder }}/websites" services: - ### Internal services ### postfix: domain: "smtp.{{ base_domain }}" @@ -62,7 +61,6 @@ services: version: "2" ### External services ### - nextcloud: domain: "cloud.{{ base_domain }}" volume_folder: "{{ volume_root_folder }}/nextcloud" @@ -208,3 +206,14 @@ services: watchtower: volume_folder: "{{ volume_root_folder }}/watchtower" version: "1.5.3" + + ### Uptime monitoring ### + uptime_kuma: + domain: "uptime.{{ base_domain }}" + status_domain: "status.{{ base_domain }}" + volume_folder: "{{ volume_root_folder }}/uptime_kuma" + pre_deploy_tasks: true + version: "latest" + +services_exclude: [] +services_include: "{{ services | dict2items | map(attribute='key') | list | difference(services_exclude) }}" diff --git a/roles/docker/tasks/services.yml b/roles/docker/tasks/services.yml index 676335c..2c7276f 100644 --- a/roles/docker/tasks/services.yml +++ b/roles/docker/tasks/services.yml @@ -8,8 +8,10 @@ include_tasks: file: block.yml vars: - service: "{{ item }}" - loop: "{{ services | dict2items(key_name='name', value_name='vars') }}" + service: + name: "{{ item }}" + vars: "{{ services[item] }}" + loop: "{{ services_include }}" when: single_service is not defined and (item.vars.disabled_in_vagrant is not defined or not (item.vars.disabled_in_vagrant and vagrant)) @@ -18,7 +20,9 @@ include_tasks: file: block.yml vars: - service: "{{ {single_service: services[single_service]} | dict2items(key_name='name', value_name='vars') | join }}" + service: + name: "{{ single_service }}" + vars: "{{ services[single_service] }}" when: single_service is defined and single_service in services and (services[single_service].disabled_in_vagrant is not defined or not (services[single_service].disabled_in_vagrant and vagrant)) diff --git a/uptime.data.coop.yml b/uptime.data.coop.yml index 2eee6ae..e54e21c 100644 --- a/uptime.data.coop.yml +++ b/uptime.data.coop.yml @@ -7,18 +7,9 @@ base_domain: "{{ 'datacoop.devel' if vagrant else 'data.coop' }}" letsencrypt_enabled: true letsencrypt_email: "admin@{{ base_domain }}" - services: - nginx_proxy: - volume_folder: "{{ volume_root_folder }}/nginx" - pre_deploy_tasks: true - version: "1.3-alpine" - acme_companion_version: "2.2" - uptime_kuma: - domain: "uptime.{{ base_domain }}" - status_domain: "status.{{ base_domain }}" - volume_folder: "{{ volume_root_folder }}/uptime_kuma" - pre_deploy_tasks: true - version: "latest" + services_include: + - nginx_proxy + - uptime_kuma do_not_change_ssh_port: true skip_dell_apt_repo: true vagrant: false