Merge pull request #85 from nielscil/features/changedetection

Add Changedetection.io, a simple website change detection and restock monitoring solution
This commit is contained in:
Slavi Pantaleev 2023-08-02 16:38:51 +03:00 committed by GitHub
commit 92d97551ab
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 94 additions and 0 deletions

View file

@ -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

View file

@ -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) |

View file

@ -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 #
# #
########################################################################
########################################################################

View file

@ -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

View file

@ -64,6 +64,8 @@
- role: galaxy/backup_borg
- role: galaxy/changedetection
- role: galaxy/clickhouse
- role: galaxy/collabora_online