diff --git a/docs/services/changedetection.md b/docs/services/changedetection.md new file mode 100644 index 0000000..90cc957 --- /dev/null +++ b/docs/services/changedetection.md @@ -0,0 +1,54 @@ +# Changedetection.io + +[Changedetection.io](https://github.com/dgtlmoon/changedetection.io) is a simple **website change detection and restock monitoring** solution. + + +## Dependencies + +This service requires the following other services: + +- a [Traefik](traefik.md) reverse-proxy server + + +## Configuration + +To enable this service, add the following configuration to your `vars.yml` file and re-run the [installation](../installing.md) process: + +```yaml +######################################################################## +# # +# Changedetection.io # +# # +######################################################################## + +changedetection_enabled: true + +changedetection_hostname: mash.example.com + +changedetection_path_prefix: /changedetection + +######################################################################## +# # +# /Changedetection.io # +# # +######################################################################## +``` + +### Playwright webdriver + +Some advanced options like using javascript or using the Visual Selector tool use an additional playwright webdriver. To enable this driver, add the following **additional** configuration to your `vars.yml` file and re-run the [installation](../installing.md) process: + +```yaml +changedetection_playwright_driver_enabled: true +``` + + +### URL + +In the example configuration above, we configure the service to be hosted at `https://mash.example.com/changedetection`. + +You can remove the `changedetection_path_prefix` variable definition, to make it default to `/`, so that the service is served at `https://mash.example.com/`. + +## Usage + +After installation, you can go to your given URL and start setting up Changedetection.io diff --git a/docs/supported-services.md b/docs/supported-services.md index 1167eac..689a2fb 100644 --- a/docs/supported-services.md +++ b/docs/supported-services.md @@ -6,6 +6,7 @@ | [AdGuard Home](https://adguard.com/en/adguard-home/overview.html/) | A network-wide DNS software for blocking ads & tracking | [Link](services/adguard-home.md) | | [Appsmith](https://www.appsmith.com/) | Platform for building and deploying custom internal tools and applications without writing code | [Link](services/appsmith.md) | | [authentik](https://goauthentik.io/) | An open-source Identity Provider focused on flexibility and versatility. | [Link](services/authentik.md) | +| [Changedetection.io](https://github.com/dgtlmoon/changedetection.io) | A simple website change detection and restock monitoring solution. | [Link](services/changedetection.md) | | [ClickHouse](https://clickhouse.com/) | An open-source column-oriented DBMS for online analytical processing (OLAP) that allows users to generate analytical reports using SQL queries in real-time. | [Link](services/clickhouse.md) | | [Collabora Online](https://www.collaboraoffice.com/) | Your Private Office Suite In The Cloud | [Link](services/collabora-online.md) | | [Docker](https://www.docker.com/) | Open-source software for deploying containerized applications | [Link](services/docker.md) | diff --git a/group_vars/mash_servers b/group_vars/mash_servers index 83475e7..643b29d 100644 --- a/group_vars/mash_servers +++ b/group_vars/mash_servers @@ -73,6 +73,10 @@ devture_systemd_service_manager_services_list_auto: | + ([{'name': (authentik_worker_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'authentik']}] if authentik_enabled else []) + + ([{'name': (changedetection_identifier + '.service'), 'priority': 2100, 'groups': ['mash', 'changedetection']}] if changedetection_enabled else []) + + + ([{'name': (changedetection_playwright_driver_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'changedetection']}] if changedetection_playwright_driver_enabled else []) + + ([{'name': (clickhouse_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'clickhouse']}] if clickhouse_enabled else []) + ([{'name': (collabora_online_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'collabora-online']}] if collabora_online_enabled else []) @@ -713,6 +717,36 @@ backup_borg_systemd_required_services_list: | # # ######################################################################## +######################################################################## +# # +# Changedetection.io # +# # +######################################################################## + +changedetection_enabled: false + +changedetection_identifier: "{{ mash_playbook_service_identifier_prefix }}changedetection" + +changedetection_base_path: "{{ mash_playbook_base_path }}/{{ mash_playbook_service_base_directory_name_prefix }}changedetection" + +changedetection_uid: "{{ mash_playbook_uid }}" +changedetection_gid: "{{ mash_playbook_gid }}" + +changedetection_container_additional_networks_auto: | + {{ + ([mash_playbook_reverse_proxyable_services_additional_network] if mash_playbook_reverse_proxyable_services_additional_network else []) + }} + +changedetection_container_labels_traefik_enabled: "{{ mash_playbook_traefik_labels_enabled }}" +changedetection_container_labels_traefik_docker_network: "{{ mash_playbook_reverse_proxyable_services_additional_network }}" +changedetection_container_labels_traefik_entrypoints: "{{ devture_traefik_entrypoint_primary }}" +changedetection_container_labels_traefik_tls_certResolver: "{{ devture_traefik_certResolver_primary }}" + +######################################################################## +# # +# /Changedetection.io # +# # +######################################################################## ######################################################################## diff --git a/requirements.yml b/requirements.yml index 88efae1..422dfe7 100644 --- a/requirements.yml +++ b/requirements.yml @@ -14,6 +14,9 @@ name: auxiliary - src: git+https://gitlab.com/etke.cc/roles/backup_borg.git version: v1.2.4-1.7.15-1 +- src: git+https://github.com/nielscil/ansible-role-changedetection.git + version: v0.44-0 + name: changedetection - src: git+https://github.com/mother-of-all-self-hosting/ansible-role-clickhouse.git version: v23.6.1.1524-0 name: clickhouse diff --git a/setup.yml b/setup.yml index 7011d84..89c473b 100644 --- a/setup.yml +++ b/setup.yml @@ -64,6 +64,8 @@ - role: galaxy/backup_borg + - role: galaxy/changedetection + - role: galaxy/clickhouse - role: galaxy/collabora_online