Add uptime kuma as a service we can deploy to a different host for monitoring. #196

Merged
samsapti merged 5 commits from add_uptime_data_coop into main 2024-03-01 19:47:58 +00:00
4 changed files with 24 additions and 17 deletions
Showing only changes of commit 7aae344da0 - Show all commits

View file

@ -15,6 +15,9 @@
smtp_host: "postfix" smtp_host: "postfix"
smtp_port: "587" smtp_port: "587"
services_exclude:
- uptime_kuma
tasks: tasks:
- import_role: - import_role:
name: ubuntu_base name: ubuntu_base

View file

@ -4,7 +4,6 @@ volume_root_folder: "/docker-volumes"
volume_website_folder: "{{ volume_root_folder }}/websites" volume_website_folder: "{{ volume_root_folder }}/websites"
services: services:
### Internal services ### ### Internal services ###
postfix: postfix:
domain: "smtp.{{ base_domain }}" domain: "smtp.{{ base_domain }}"
@ -62,7 +61,6 @@ services:
version: "2" version: "2"
### External services ### ### External services ###
nextcloud: nextcloud:
domain: "cloud.{{ base_domain }}" domain: "cloud.{{ base_domain }}"
volume_folder: "{{ volume_root_folder }}/nextcloud" volume_folder: "{{ volume_root_folder }}/nextcloud"
@ -208,3 +206,14 @@ services:
watchtower: watchtower:
volume_folder: "{{ volume_root_folder }}/watchtower" volume_folder: "{{ volume_root_folder }}/watchtower"
version: "1.5.3" 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) }}"

View file

@ -8,8 +8,10 @@
include_tasks: include_tasks:
file: block.yml file: block.yml
vars: vars:
service: "{{ item }}" service:
loop: "{{ services | dict2items(key_name='name', value_name='vars') }}" name: "{{ item }}"
vars: "{{ services[item] }}"
loop: "{{ services_include }}"
when: single_service is not defined and when: single_service is not defined and
(item.vars.disabled_in_vagrant is not defined or (item.vars.disabled_in_vagrant is not defined or
not (item.vars.disabled_in_vagrant and vagrant)) not (item.vars.disabled_in_vagrant and vagrant))
@ -18,7 +20,9 @@
include_tasks: include_tasks:
file: block.yml file: block.yml
vars: 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 when: single_service is defined and single_service in services and
(services[single_service].disabled_in_vagrant is not defined or (services[single_service].disabled_in_vagrant is not defined or
not (services[single_service].disabled_in_vagrant and vagrant)) not (services[single_service].disabled_in_vagrant and vagrant))

View file

@ -7,18 +7,9 @@
base_domain: "{{ 'datacoop.devel' if vagrant else 'data.coop' }}" base_domain: "{{ 'datacoop.devel' if vagrant else 'data.coop' }}"
letsencrypt_enabled: true letsencrypt_enabled: true
letsencrypt_email: "admin@{{ base_domain }}" letsencrypt_email: "admin@{{ base_domain }}"
services: services_include:
nginx_proxy: - nginx_proxy
volume_folder: "{{ volume_root_folder }}/nginx" - uptime_kuma
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"
do_not_change_ssh_port: true do_not_change_ssh_port: true
skip_dell_apt_repo: true skip_dell_apt_repo: true
vagrant: false vagrant: false