Compare commits

...
Sign in to create a new pull request.

459 commits

Author SHA1 Message Date
2075a8dfc9 Merge pull request 'Update renovate/renovate Docker tag to v39.219.2' () from renovate/renovate-renovate-39.x into master 2025-03-28 17:07:02 +01:00
801cd60f4d Update renovate/renovate Docker tag to v39.220.1 2025-03-28 15:18:04 +00:00
919f973164 Merge pull request '⬆️ Update cleanURI to fix extractor issues' () from cleanURI-updates into master
Reviewed-on: 
2025-03-27 11:56:23 +01:00
318c646515 ⬆️ Bump cleanuri-extractor to 0.5.3 2025-03-27 11:39:07 +01:00
cd7109cac9 ⬆️ Bump cleanuri-canonizer to 0.5.3 2025-03-27 11:39:07 +01:00
f799bef69a Merge pull request '⬆️ requirements: Migrate unattended-upgrades' () from alex/netz39-infra-ansible:unattended-upgrades into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2025-03-26 18:25:01 +01:00
8ec4dd5ae2 Merge pull request '⬆️ Update cleanURI components' () from bump-cleanrui-webui into master
Reviewed-on: 
Reviewed-by: Alexander Dahl <alex@netz39.de>
2025-03-26 16:33:06 +01:00
c564dd5df7 ⬆️ Bump cleanURI-extractor to 0.5.2 2025-03-26 15:19:06 +01:00
390d5015cb ⬆️ Bump cleanURI-canonizer to 0.5.2 2025-03-26 15:19:05 +01:00
edc9be4d51 ⬆️ Bump cleanURI-apigateway to 0.3.2 2025-03-26 15:16:57 +01:00
640596f73d ⬆️ Bumn mrtux/cleanuri-webui to 0.2.2 2025-03-26 15:16:57 +01:00
581b5d276c Merge pull request 'Update grafana/grafana Docker tag to v11.6.0' () from renovate/grafana-grafana-11.x into master
Reviewed-on: 
2025-03-26 13:30:26 +01:00
82523e8bcd Update grafana/grafana Docker tag to v11.6.0 2025-03-25 21:18:14 +00:00
fd039c143f Merge pull request 'Update netz39/ampel-controller Docker tag to v0.2.0' () from renovate/netz39-ampel-controller-0.x into master
Reviewed-on: 
2025-03-23 21:54:13 +01:00
94757d9785 Update netz39/ampel-controller Docker tag to v0.2.0 2025-03-23 21:53:57 +01:00
db49b5c862 Merge pull request 'Update dependency 24367dfa.dehydrated to v2.1.0' () from renovate/24367dfa.dehydrated-2.x into master
Reviewed-on: 
2025-03-23 21:53:24 +01:00
b1b480f415 Update dependency 24367dfa.dehydrated to v2.1.0 2025-03-23 20:23:14 +00:00
21125a3784 Merge pull request 'Update codeberg.org/forgejo/forgejo Docker tag to v10.0.3' () from renovate/codeberg.org-forgejo-forgejo-10.x into master
Reviewed-on: 
2025-03-23 11:33:17 +01:00
4c467865e7 Update codeberg.org/forgejo/forgejo Docker tag to v10.0.3 2025-03-23 09:18:06 +00:00
470cd03c57 Merge pull request 'Update renovate/renovate Docker tag to v39.211.0' () from renovate/renovate-renovate-39.x into master
Reviewed-on: 
2025-03-22 19:57:09 +01:00
5a41489246 Update renovate/renovate Docker tag to v39.211.0 2025-03-22 19:56:47 +01:00
1b2cb40096 Merge pull request 'Update codeberg.org/forgejo/forgejo Docker tag to v10.0.2' () from renovate/codeberg.org-forgejo-forgejo-10.x into master
Reviewed-on: 
2025-03-22 19:56:22 +01:00
1135385fe6 Update codeberg.org/forgejo/forgejo Docker tag to v10.0.2 2025-03-21 13:18:04 +00:00
392d1970f7 Merge pull request 'Update shlinkio/shlink Docker tag to v4.4.6' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2025-03-20 17:07:06 +01:00
cdc1d52a38 Update shlinkio/shlink Docker tag to v4.4.6 2025-03-20 11:58:41 +01:00
09359799b8 Merge pull request '✏️ host: pottwal: Fix misleading task name' () from alex/netz39-infra-ansible:pottwal into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2025-03-20 11:58:15 +01:00
725fa1d074 ✏️ host: pottwal: Fix misleading task name
Looks like a copy'n'paste mistake.  Improve the other task name while at
it.

Fixes: 88e14f7ca6 ("👌 pottwal: Move prosody config to /etc")
2025-03-19 22:00:12 +01:00
c01f6b263e Merge pull request 'Update renovate/renovate Docker tag to v39.206.0' () from renovate/renovate-renovate-39.x into master
Reviewed-on: 
2025-03-17 10:23:33 +01:00
b05df7aa1d Update renovate/renovate Docker tag to v39.206.0 2025-03-17 08:18:07 +00:00
40ae8191f2 Merge pull request '✏️ host: tau: Fix misleading task name' () from docker-registry into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2025-03-14 19:02:18 +01:00
7eebfd5d61 ✏️ host: tau: Fix misleading task name
Task here is to check the auth dir, not the data dir, that's a different
one.  Rename the used variable while at it.

Fixes: f539a42024 ("Add a docker registry")
2025-03-14 08:50:56 +01:00
28d80515b2 ⬆️ requirements: Migrate unattended-upgrades
The role was moved into a collection.

Link: https://github.com/hifis-net/ansible-collection-toolkit#looking-for-the-unattended_upgrades-role
Link: https://github.com/hifis-net/ansible-collection-toolkit/releases/tag/v4.0.0
Link: https://github.com/hifis-net/ansible-collection-toolkit/issues/165
2025-03-12 18:50:16 +01:00
e1b9349f19 Merge pull request '🚨 Fix linter warnings of type 'fqcn'' () from alex/netz39-infra-ansible:lint into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2025-03-12 17:59:47 +01:00
4c0c84b6a6 Merge pull request 'chore(deps): update renovate/renovate docker tag to v39.198.1' () from renovate/renovate-renovate-39.x into master
Reviewed-on: 
2025-03-12 15:15:06 +01:00
e5d1c2ac88 chore(deps): update renovate/renovate docker tag to v39.198.1 2025-03-12 15:14:43 +01:00
865b3c5495 Merge pull request 'renovate/renovate: Update once a week and allow automerge' () from renovate-config into master
Reviewed-on: 
2025-03-12 14:26:34 +01:00
5a591c4145 Allow automerge for renovate/renovate 2025-03-12 14:26:05 +01:00
b9416d0096 Limit renovate/renovate updates to Friday before 1am
This effectively reduces the renovate update PRs to (mostly) once per week.
2025-03-12 14:26:05 +01:00
031fe9c06e Add comment to clarify Renovate configuration source 2025-03-12 14:26:05 +01:00
585e8eb2b2 Merge pull request 'chore(deps): update redmine docker tag to v6.0.4' () from renovate/redmine-6.x into master
Reviewed-on: 
2025-03-12 14:25:30 +01:00
d1dbda444d chore(deps): update redmine docker tag to v6.0.4 2025-03-11 17:18:04 +00:00
6f1e80493a 🚨 group: all: Fix fqcn linter warnings
WARNING  Listing 3 violation(s) that are fatal
    fqcn[action-core]: Use FQCN for builtin module actions (apt).
    group-all.yml:16 Use `ansible.builtin.apt` or `ansible.legacy.apt` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (apt).
    group-all.yml:23 Use `ansible.builtin.apt` or `ansible.legacy.apt` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    group-all.yml:28 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    Read documentation for instructions on how to ignore specific rule violations.

                     Rule Violation Summary
     count tag               profile    rule associated tags
         3 fqcn[action-core] production formatting

    Failed after shared profile, 4/5 star rating: 3 failure(s), 0 warning(s) on 135 files.
2025-03-09 19:00:21 +01:00
2b9b1d1c39 🚨 host: krypton: Fix fqcn linter warnings
fqcn[action-core]: Use FQCN for builtin module actions (file).
    host-krypton.yml:41 Use `ansible.builtin.file` or `ansible.legacy.file` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-krypton.yml:52 Action `docker_container` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-krypton.yml:117 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-krypton.yml:130 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.
2025-03-09 19:00:21 +01:00
fcd3b9c87b 🚨 host: platon: Fix fqcn linter warnings
fqcn[action-core]: Use FQCN for builtin module actions (service).
    host-platon.yml:308 Use `ansible.builtin.service` or `ansible.legacy.service` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (service).
    host-platon.yml:314 Use `ansible.builtin.service` or `ansible.legacy.service` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (service).
    host-platon.yml:320 Use `ansible.builtin.service` or `ansible.legacy.service` instead.
2025-03-09 19:00:21 +01:00
d145039dbe 🚨 host: pottwal: Fix fqcn linter warnings
fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:57 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-pottwal.yml:83 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:91 Action `docker_container` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_network`.
    host-pottwal.yml:104 Action `docker_network` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:120 Action `docker_container` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:140 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-pottwal.yml:169 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:237 Action `docker_container` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:259 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-pottwal.yml:278 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (file).
    host-pottwal.yml:301 Use `ansible.builtin.file` or `ansible.legacy.file` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_network`.
    host-pottwal.yml:314 Action `docker_network` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:322 Action `docker_container` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:342 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-pottwal.yml:374 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (file).
    host-pottwal.yml:383 Use `ansible.builtin.file` or `ansible.legacy.file` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:393 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-pottwal.yml:413 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_network`.
    host-pottwal.yml:438 Action `docker_network` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:446 Action `docker_container` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:466 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-pottwal.yml:492 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (file).
    host-pottwal.yml:501 Use `ansible.builtin.file` or `ansible.legacy.file` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:511 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-pottwal.yml:528 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (file).
    host-pottwal.yml:537 Use `ansible.builtin.file` or `ansible.legacy.file` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:554 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-pottwal.yml:575 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (file).
    host-pottwal.yml:585 Use `ansible.builtin.file` or `ansible.legacy.file` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-pottwal.yml:599 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-pottwal.yml:619 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (template).
    host-pottwal.yml:629 Use `ansible.builtin.template` or `ansible.legacy.template` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (service).
    host-pottwal.yml:657 Use `ansible.builtin.service` or `ansible.legacy.service` instead.
2025-03-09 19:00:21 +01:00
9eedf004a5 🚨 host: radon: Fix fqcn linter warnings
fqcn[action-core]: Use FQCN for builtin module actions (file).
    host-radon.yml:40 Use `ansible.builtin.file` or `ansible.legacy.file` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (template).
    host-radon.yml:52 Use `ansible.builtin.template` or `ansible.legacy.template` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-radon.yml:61 Action `docker_container` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-radon.yml:91 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-radon.yml:111 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-radon.yml:132 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-radon.yml:153 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-radon.yml:162 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-radon.yml:180 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-radon.yml:188 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-radon.yml:204 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-radon.yml:213 Action `docker_container` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-radon.yml:230 Action `docker_container` is not FQCN.
2025-03-09 19:00:21 +01:00
95706d0ad4 🚨 host: tau: Fix fqcn linter warnings
fqcn[action]: Use FQCN for module actions, such `community.docker.docker_network`.
    host-tau.yml:28 Action `docker_network` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-tau.yml:37 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-tau.yml:54 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-tau.yml:61 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-tau.yml:78 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (file).
    host-tau.yml:94 Use `ansible.builtin.file` or `ansible.legacy.file` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-tau.yml:101 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-tau.yml:120 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-tau.yml:149 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-tau.yml:168 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-tau.yml:178 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    host-tau.yml:193 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.
2025-03-09 19:00:21 +01:00
5d1ca7ef9f 🚨 host: unicorn: Fix fqcn linter warning
fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-unicorn.yml:14 Action `docker_container` is not FQCN.
2025-03-09 19:00:21 +01:00
e61a68de53 🚨 host: wittgenstein: Fix fqcn linter warnings
fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-wittgenstein.yml:132 Action `docker_container` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    host-wittgenstein.yml:151 Action `docker_container` is not FQCN.
2025-03-09 19:00:21 +01:00
23bc6d7b69 🚨 roles: Fix remaining fqcn linter warnings
fqcn[action-core]: Use FQCN for builtin module actions (service).
    roles/apache_letsencrypt/handlers/main.yml:3 Use `ansible.builtin.service` or `ansible.legacy.service` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (apt).
    roles/dd24_dyndns_cron/tasks/main.yml:2 Use `ansible.builtin.apt` or `ansible.legacy.apt` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (apt).
    roles/desec_dyndns_cron/tasks/main.yml:2 Use `ansible.builtin.apt` or `ansible.legacy.apt` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (command).
    roles/nfs_host/handlers/main.yml:2 Use `ansible.builtin.command` or `ansible.legacy.command` instead.
2025-03-09 19:00:21 +01:00
bec6fc20b7 🚨 roles: apache: Fix fqcn linter warnings
fqcn[action-core]: Use FQCN for builtin module actions (service).
    roles/apache/handlers/main.yml:3 Use `ansible.builtin.service` or `ansible.legacy.service` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (apt).
    roles/apache/tasks/main.yml:2 Use `ansible.builtin.apt` or `ansible.legacy.apt` instead.

    fqcn[action]: Use FQCN for module actions, such `community.general.apache2_module`.
    roles/apache/tasks/main.yml:8 Action `apache2_module` is not FQCN.
2025-03-09 19:00:21 +01:00
8b54b36392 🚨 roles: cleanuri: Fix fqcn linter warnings
fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    roles/cleanuri/tasks/main.yml:3 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    roles/cleanuri/tasks/main.yml:17 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    roles/cleanuri/tasks/main.yml:25 Action `docker_container` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    roles/cleanuri/tasks/main.yml:44 Action `docker_container` is not FQCN.

    fqcn[action]: Use FQCN for module actions, such `community.docker.docker_container`.
    roles/cleanuri/tasks/main.yml:61 Action `docker_container` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (include_role).
    roles/cleanuri/tasks/main.yml:78 Use `ansible.builtin.include_role` or `ansible.legacy.include_role` instead.
2025-03-09 18:26:03 +01:00
11e98a4d8e 🚨 roles: nginx_https_ingress: Fix fqcn linter warnings
fqcn[action-core]: Use FQCN for builtin module actions (service).
    roles/nginx_https_ingress/handlers/main.yml:3 Use `ansible.builtin.service` or `ansible.legacy.service` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (apt_key).
    roles/nginx_https_ingress/tasks/main.yml:20 Use `ansible.builtin.apt_key` or `ansible.legacy.apt_key` instead.
2025-03-08 22:25:28 +01:00
eeb87d2108 🚨 roles: setup_http_site_forward: Fix fqcn linter warnings
fqcn[action-core]: Use FQCN for builtin module actions (service).
    roles/setup_http_site_forward/handlers/main.yml:2 Use `ansible.builtin.service` or `ansible.legacy.service` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (template).
    roles/setup_http_site_forward/tasks/main.yml:2 Use `ansible.builtin.template` or `ansible.legacy.template` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (command).
    roles/setup_http_site_forward/tasks/main.yml:8 Use `ansible.builtin.command` or `ansible.legacy.command` instead.
2025-03-08 22:17:23 +01:00
cb50012dd3 🚨 roles: setup_http_site_proxy: Fix fqcn linter warnings
fqcn[action-core]: Use FQCN for builtin module actions (service).
    roles/setup_http_site_proxy/handlers/main.yml:2 Use `ansible.builtin.service` or `ansible.legacy.service` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (template).
    roles/setup_http_site_proxy/tasks/main.yml:2 Use `ansible.builtin.template` or `ansible.legacy.template` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (command).
    roles/setup_http_site_proxy/tasks/main.yml:9 Use `ansible.builtin.command` or `ansible.legacy.command` instead.
2025-03-08 22:12:00 +01:00
2b0e31870d 🚨 roles: users: Fix linter warnings of type 'fqcn'
fqcn[action-core]: Use FQCN for builtin module actions (shell).
    roles/users/handlers/main.yml:2 Use `ansible.builtin.shell` or `ansible.legacy.shell` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (package).
    roles/users/tasks/main.yml:2 Use `ansible.builtin.package` or `ansible.legacy.package` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (lineinfile).
    roles/users/tasks/main.yml:8 Use `ansible.builtin.lineinfile` or `ansible.legacy.lineinfile` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (user).
    roles/users/tasks/main.yml:16 Use `ansible.builtin.user` or `ansible.legacy.user` instead.

    fqcn[action]: Use FQCN for module actions, such `ansible.posix.authorized_key`.
    roles/users/tasks/main.yml:24 Action `authorized_key` is not FQCN.

    fqcn[action-core]: Use FQCN for builtin module actions (user).
    roles/users/tasks/main.yml:34 Use `ansible.builtin.user` or `ansible.legacy.user` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (stat).
    roles/users/tasks/main.yml:42 Use `ansible.builtin.stat` or `ansible.legacy.stat` instead.

    fqcn[action-core]: Use FQCN for builtin module actions (lineinfile).
    roles/users/tasks/main.yml:47 Use `ansible.builtin.lineinfile` or `ansible.legacy.lineinfile` instead.
2025-03-08 22:04:04 +01:00
f541f8f6fe Merge pull request 'Update eclipse-mosquitto Docker tag to v2.0.21' () from renovate/eclipse-mosquitto-2.x into master
Reviewed-on: 
2025-03-07 12:05:20 +01:00
7915336812 Update eclipse-mosquitto Docker tag to v2.0.21 2025-03-06 20:18:10 +00:00
b8e4746343 Merge pull request 'Update dependency lespocky.telegraf_docker_in_docker to v0.2.2' () from renovate/lespocky.telegraf_docker_in_docker-0.x into master
Reviewed-on: 
Reviewed-by: Alexander Dahl <alex@netz39.de>
2025-03-06 17:26:49 +01:00
856253de98 Update dependency lespocky.telegraf_docker_in_docker to v0.2.2 2025-03-06 13:18:03 +00:00
de7d285ee4 Merge pull request 'Fix linter warnings of type 'name'' () from alex/netz39-infra-ansible:lint into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2025-03-05 18:13:58 +01:00
0f9060a2b1 Merge pull request 'Limit telegraf role to supported arch and unify docker host setup' () from unify-docker-hosts into master
Reviewed-on: 
Reviewed-by: Alexander Dahl <alex@netz39.de>
2025-03-05 18:10:35 +01:00
fca9c9ea3b Add wittgenstein to docker group 2025-03-05 12:26:17 +01:00
289ff674f9 Limit telegraf role to hosts with supporting arch
Temporary fix for https://github.com/LeSpocky/ansible-role-telegraf-docker-in-docker/issues/17
2025-03-05 12:26:17 +01:00
371f6b2907 Merge pull request 'Update dependency netz39.host_docker to v0.5.0' () from renovate/netz39.host_docker-0.x into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2025-03-05 12:05:45 +01:00
dc6943354f Adjust variable docker_image_prune to change in netz39.host_docker 0.5.0 2025-03-05 12:00:46 +01:00
32bcc7e70b Update dependency netz39.host_docker to v0.5.0 2025-03-05 10:18:01 +00:00
0d8e580338 Merge pull request 'Update mrtux/grafana-screenshot Docker tag to v0.1.3' () from renovate/mrtux-grafana-screenshot-0.x into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2025-03-05 08:47:45 +01:00
eef2d8b4fb Update mrtux/grafana-screenshot Docker tag to v0.1.3 2025-03-05 00:18:07 +00:00
daf17468d3 Merge pull request 'Update postgres Docker tag to v16.8' () from renovate/postgres-16.x into master
Reviewed-on: 
2025-03-04 10:15:37 +01:00
761dd212a8 Update postgres Docker tag to v16.8 2025-03-04 10:10:12 +01:00
cfa3175f24 Merge pull request 'Update mysql Docker tag to v9' () from renovate/mysql-9.x into master
Reviewed-on: 
2025-03-04 10:04:29 +01:00
7553d64b80 chore(deps): update mysql docker tag to v9 2025-03-04 09:29:39 +01:00
962948e76a Merge pull request 'Update netz39/entities_validation_svc Docker tag to v1.0.4' () from renovate/netz39-entities_validation_svc-1.x into master
Reviewed-on: 
2025-03-03 14:48:19 +01:00
bbfff8f481 Update netz39/entities_validation_svc Docker tag to v1.0.4 2025-03-02 17:18:08 +00:00
43d1c94d66 Merge pull request 'Update shlinkio/shlink Docker tag to v4.4.5' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2025-03-02 15:22:16 +01:00
bc43af38d9 🚨 Add names to plays to fix name[play] linter warnings
Adds basic descriptions on what those host are supposed to do.
2025-03-02 09:22:05 +01:00
e3d2e8a31b 🚨 Fix linter warning of type 'name[template]'
This warning:

    name[template]: Jinja templates should only be at the end of 'name'
    setup-ssh.yml:6 Task/Handler: Ensure {{ lookup('env', 'HOME') }}/.ssh/config.d/ dir is present

Reason for that warning is thin.  Using the actual home dir here adds
not much value, so keep it symbolic.

Link: https://ansible.readthedocs.io/projects/lint/rules/name/
2025-03-01 22:09:10 +01:00
8b2ab7753d 🚨 Fix linter warnings of type 'name[casing]'
ansible-lint reads like this:

    name[casing]: All names should start with an uppercase letter.

While at it: Some task/handler names were slightly adapted to better
match what should be done.
2025-03-01 21:21:22 +01:00
d96a2770cf Update shlinkio/shlink Docker tag to v4.4.5 2025-03-01 09:18:08 +00:00
266ba39473 Merge pull request 'Rename roles to comply with linter' () from alex/netz39-infra-ansible:lint into master
Reviewed-on: 
Reviewed-by: dkdent <dkdent@netz39.de>
2025-03-01 08:55:33 +01:00
94bdf60700 🚨 roles: setup_http_site_forward: Rename
Roles names should be lowercase with underscores only.
ansible-lint complained:

    % ansible-lint -t role-name
    WARNING  Listing 1 violation(s) that are fatal
    role-name: Role name setup-http-site-forward does not match ``^[a-z][a-z0-9_]*$`` pattern.
    roles/setup-http-site-forward:1

    Read documentation for instructions on how to ignore specific rule violations.

                 Rule Violation Summary
     count tag       profile rule associated tags
         1 role-name basic   deprecations, metadata

    Failed after min profile: 1 failure(s), 0 warning(s) on 135 files.

Fixes: 85c09ea2ae ("Add role for apache forward site")
2025-02-28 08:49:53 +01:00
7e5b723a3a 🚨 roles: nfs_host: Rename
Roles names are expected to be lower case with underscores only,
see ansible-lint warning:

    % ansible-lint -t role-name
    WARNING  Listing 1 violation(s) that are fatal
    role-name: Role name nfs-host does not match ``^[a-z][a-z0-9_]*$`` pattern.
    roles/nfs-host:1

    Read documentation for instructions on how to ignore specific rule violations.

                 Rule Violation Summary
     count tag       profile rule associated tags
         1 role-name basic   deprecations, metadata

    Failed after min profile: 1 failure(s), 0 warning(s) on 135 files.

Fixes: 2138870520 ("nfs server wird nicht im k3s laufen, labeling entfernt")
2025-02-28 08:49:18 +01:00
db7a419ced Merge pull request 'Update kiosk Grafana URL to re-enable kiosk mode' () from grafana-kiosk-url into master
Reviewed-on: 
2025-02-27 22:00:04 +01:00
dc8e51322e Downgrade grafana-screenshot Docker image to v0.1.1 2025-02-27 21:59:36 +01:00
d065738f92 Update kiosk Grafana URL to enable kiosk mode
The kiosk setup mechanism seems to have changed in the past and now this parameter is needed in the Grafana URL.
2025-02-27 21:59:36 +01:00
17855e8849 Merge pull request '📝 mailmap: Merge some new identies' () from alex/netz39-infra-ansible:mailmap into master
Reviewed-on: 
2025-02-27 21:59:12 +01:00
53fe6b4427 📝 mailmap: Merge some new identies
Prefer private mail address over company mail address.
Prefer netz39 mail address over private mail address.

Output of `git shortlog -es` diffed:

```diff
--- before      2025-02-26 12:29:28.323774025 +0100
+++ after       2025-02-26 12:30:29.355141593 +0100
@@ -1,11 +1,8 @@
     99 Alexander Dahl <alex@netz39.de>
    284 David Kilias <dkdent@netz39.de>
-     2 Jens Winter-Hübenthal <jens.winter-huebenthal@bridgefield.de>
-     1 JensWH <jens.winter@gmail.com>
-     1 MG-95 <mg-95@gitea.n39.eu>
+     3 Jens Winter-Hübenthal <jens.winter@gmail.com>
      4 Maximilian Deubel <maximilian.deubel@gmail.com>
-     5 Maximilian Grau <mg-95@t-online.de>
+     6 Maximilian Grau <mg-95@t-online.de>
    259 Renovate Bot <accounts+renovatebot@netz39.de>
    670 Stefan Haun <tux@netz39.de>
-     1 timo <n39@therr.de>
-     1 timo <timo@netz39.de>
+     2 timo <timo@netz39.de>
```
2025-02-27 21:59:00 +01:00
7df49482c4 Merge pull request 'dyndns: Fix not executed cron jobs' () from alex/netz39-infra-ansible:cron into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2025-02-27 18:56:45 +01:00
338dfc7410 🔊 Redirect curl output to debug log
curl only logs its own errors to stderr with the given options (--silent
--show-error).  Requests answered by the remote webserver, regardless of
HTTP status code, go to stdout.  So in case of an unsuccesful update
with some error condition we could not see that before.  Redirect those
to debug log, because it's still quite noisy otherwise.

This adds 288 log messages per day and service to the debug log,
accounting to max. 30k per day and service, and thus should not hurt.

desec log output is only the word "good" in case of success.

dd24 full output would be this, and is thus reduced to the relevant
lines merged in one line:

    [RESPONSE]
    code = 200
    description = Command completed successfully
    runtime = 0.067
    queuetime = 0
    EOF

Sample journald entry:

    Feb 27 12:48:15 pottwal dd24[519651]: code = 200,description = Command completed successfully
2025-02-27 14:06:19 +01:00
58e27dec10 🐛 Use bash as shell in cron jobs to make process substitution work
The cron jobs were executed, but dash (/bin/sh) complained, and so the
actual command was never run.  This is why our dyndns update did not
work through cron, but when executed manually in bash by an admin.

Example for such a fail when done manually in sh:

    # echo test3 > >(/usr/bin/logger -p user.debug -t dd24)
    /bin/sh: 7: Syntax error: redirection unexpected

Process substitution with `>(command)` is a feature supported by bash
and other shells, but not by POSIX shell which was supposed to used here
(set by `SHELL=…`).  Instead of building complicated redirect magic for
sh just switch to bash, which should be available on the hosts affected.

Link: https://www.shellcheck.net/wiki/SC3001
Fixes: 03dbd132eb ("🔊 Send DD24 cron errors to syslog")
Fixes: 38fbff30b5 ("feat: add role to manage dyndns entry on desec.io")
2025-02-27 14:03:18 +01:00
7074d12bae Merge pull request 'Update mrtux/grafana-screenshot Docker tag to v0.1.2' () from renovate/mrtux-grafana-screenshot-0.x into master
Reviewed-on: 
2025-02-27 12:27:46 +01:00
e4340c1aba Update mrtux/grafana-screenshot Docker tag to v0.1.2 2025-02-27 12:27:29 +01:00
8ee48afa7c Merge pull request 'Update dependency netz39.host_docker to v0.4.0' () from renovate/netz39.host_docker-0.x into master
Reviewed-on: 
2025-02-27 12:26:49 +01:00
7c3220ad2e Update dependency netz39.host_docker to v0.4.0 2025-02-27 09:18:09 +00:00
7b5317cd12 Merge pull request 'Update bitnami/rabbitmq Docker tag to v4.0.7' () from renovate/bitnami-rabbitmq-4.x into master
Reviewed-on: 
2025-02-27 09:45:25 +01:00
3239237bbc Update bitnami/rabbitmq Docker tag to v4.0.7 2025-02-27 06:18:06 +00:00
c116035395 Merge pull request 'Update renovate/renovate Docker tag to v39.180.2' () from renovate/renovate-renovate-39.x into master
Reviewed-on: 
2025-02-26 10:05:25 +01:00
5df5a155c8 Update renovate/renovate Docker tag to v39.180.2 2025-02-25 09:22:15 +00:00
5de9b8be40 Merge pull request '🚚 Migrate docker_host role to external project' () from alex/netz39-infra-ansible:host-docker into master
Reviewed-on: 
Reviewed-by: dkdent <dkdent@netz39.de>
Reviewed-by: Stefan Haun <tux@netz39.de>
2025-02-24 17:31:23 +01:00
cc41217ad8 🔧 Enable automatic docker image prune again
The feature was part of the old role but unconditionally.  When porting
to external role we made it optional with variable
`docker_cron_image_prune` but default to false.  Restore the previous
behaviour in this playbook.
2025-02-23 19:18:21 +01:00
e946fe37b4 🔧 renovate: Remove docker_compose match
The role matched by this was removed, and is handled through
requirements.yml now.  That should already be covered by renovate
without additional configuration.
2025-02-23 19:18:21 +01:00
b22c86758e 🚚 Migrate docker_host role to external project
We used a similar local role here, in the Freifunk Magdeburg project,
and in personal playbooks.  That was moved to an external project,
unified, and reworked, so the external role can act as replacement for
the distributed, redundant copies.

Link: https://github.com/netz39/ansible-role-host-docker
2025-02-23 19:18:21 +01:00
2fe2420a10 Merge pull request 'Update shlinkio/shlink Docker tag to v4.4.4' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2025-02-21 17:41:12 +01:00
028e4ffadd chore(deps): update shlinkio/shlink docker tag to v4.4.4 2025-02-21 17:41:01 +01:00
12c0b271a9 Merge pull request 'Update grafana/grafana Docker tag to v11.5.2' () from renovate/grafana-grafana-11.x into master
Reviewed-on: 
2025-02-21 17:40:38 +01:00
0cc1d052ad chore(deps): update grafana/grafana docker tag to v11.5.2 2025-02-21 17:40:19 +01:00
41875c04b2 Merge pull request 'Update quay.io/hedgedoc/hedgedoc Docker tag to v1.10.2' () from renovate/quay.io-hedgedoc-hedgedoc-1.x into master
Reviewed-on: 
2025-02-21 17:40:02 +01:00
635b87a300 chore(deps): update quay.io/hedgedoc/hedgedoc docker tag to v1.10.2 2025-02-21 17:39:44 +01:00
38ecaf4e92 Merge pull request 'Update joseluisq/static-web-server Docker tag to v2.36' () from renovate/joseluisq-static-web-server-2.x into master
Reviewed-on: 
Reviewed-by: Alexander Dahl <alex@netz39.de>
2025-02-21 17:38:34 +01:00
7a08b136ab Update joseluisq/static-web-server Docker tag to v2.36 2025-02-21 14:18:59 +00:00
540f489a04 Merge pull request 'Update bitnami/rabbitmq Docker tag to v4.0.6' () from renovate/bitnami-rabbitmq-4.x into master
Reviewed-on: 
2025-02-21 14:41:59 +01:00
c1acfd6671 chore(deps): update bitnami/rabbitmq docker tag to v4.0.6 2025-02-21 14:41:36 +01:00
517bf90b7b Merge pull request '🚨 reduce ansible-lint warning count (trivial yaml and jinja warnings)' () from lint into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2025-02-20 10:10:01 +01:00
71f68604d7 🔧 yamllint: Disable comment-indentation warnings
Looked at the first three or five warnings, and those all look sane.
The linter seems to be overly picky here.

ansible-lint is happy about yaml now:

    % ansible-lint -t yaml

    Passed with production profile: 0 failure(s), 0 warning(s) on 142 files.

Link: https://yamllint.readthedocs.io/en/stable/rules.html#module-yamllint.rules.comments_indentation
2025-02-20 08:23:17 +01:00
41ab4622b3 🚨 Fix trivial jinja spacing warnings
Fixes the following ansible-lint warnings:

    jinja[spacing]: Jinja2 spacing could be improved: group:Admins:{{ users | map(attribute = 'logname') | join("@pam,") }}@pam:: -> group:Admins:{{ users | map(attribute='logname') | join("@pam,") }}@pam:: (warning)
    host-beaker.yml:23 Jinja2 template rewrite recommendation: `group:Admins:{{ users | map(attribute='logname') | join("@pam,") }}@pam::`.

    jinja[spacing]: Jinja2 spacing could be improved: {{  docker_ip_ranges  }} -> {{  docker_ip_ranges }} (warning)
    host-krypton.yml:95 Jinja2 template rewrite recommendation: `{{  docker_ip_ranges }}`.

    jinja[spacing]: Jinja2 spacing could be improved: {{  item  }} -> {{  item }} (warning)
    host-krypton.yml:98 Jinja2 template rewrite recommendation: `{{  item }}`.

    jinja[spacing]: Jinja2 spacing could be improved: {{  docker_ip_ranges  }} -> {{  docker_ip_ranges }} (warning)
    host-krypton.yml:105 Jinja2 template rewrite recommendation: `{{  docker_ip_ranges }}`.

    jinja[spacing]: Jinja2 spacing could be improved: {{  item  }} -> {{  item }} (warning)
    host-krypton.yml:108 Jinja2 template rewrite recommendation: `{{  item }}`.

    jinja[spacing]: Jinja2 spacing could be improved: {{ cleanuri_amqp_user  }} -> {{ cleanuri_amqp_user }} (warning)
    roles/cleanuri/tasks/main.yml:36 Jinja2 template rewrite recommendation: `{{ cleanuri_amqp_user }}`.

    jinja[spacing]: Jinja2 spacing could be improved: {{ cleanuri_amqp_user  }} -> {{ cleanuri_amqp_user }} (warning)
    roles/cleanuri/tasks/main.yml:53 Jinja2 template rewrite recommendation: `{{ cleanuri_amqp_user }}`.

    jinja[spacing]: Jinja2 spacing could be improved: {{ cleanuri_amqp_user  }} -> {{ cleanuri_amqp_user }} (warning)
    roles/cleanuri/tasks/main.yml:70 Jinja2 template rewrite recommendation: `{{ cleanuri_amqp_user }}`.
2025-02-20 06:43:59 +01:00
a0021c4979 🚨 Add more spaces before comment
Fixes the following ansible-lint warnings:

    yaml[comments]: Too few spaces before comment
    host-unicorn.yml:31

    yaml[comments]: Too few spaces before comment
    host-wittgenstein.yml:143
2025-02-19 22:01:13 +01:00
cbbcccdcae 🚨 Remove extra blank line
Fixes the following ansible-lint warning:

    yaml[empty-lines]: Too many blank lines (1 > 0)
    host_vars/radon.n39.eu/vars.yml:14
2025-02-19 21:58:48 +01:00
42710413d7 🚨 Add missing document start
Fixes the following ansible-lint warning:

    yaml[document-start]: Missing document start "---"
    host_vars/wittgenstein.n39.eu/vars.yml:1
2025-02-19 21:57:30 +01:00
a9e5a509a5 🚨 Fix wrong indentation
Fixes the following ansible-lint warnings:

    yaml[indentation]: Wrong indentation: expected 6 but found 4
    roles/nfs-host/tasks/main.yml:6

    yaml[indentation]: Wrong indentation: expected 6 but found 4
    roles/nginx_https_ingress/tasks/main.yml:11

    yaml[indentation]: Wrong indentation: expected 6 but found 4
    roles/nginx_https_ingress/tasks/main.yml:48
2025-02-19 21:55:53 +01:00
fa7e94403f 🚨 Remove extra spaces
Fixes the following ansible-lint warning:

    yaml[colons]: Too many spaces after colon
    host-wittgenstein.yml:149
2025-02-19 21:52:39 +01:00
3730c67be0 🚨 Add newline at eof
Fixes the following ansible-lint warning:

    yaml[new-line-at-end-of-file]: No new line character at the end of file
    group-k3s.yml:9
2025-02-19 21:49:57 +01:00
49dd796a05 🚨 Modernize ansible-lint silence markup
Fixes the following warning when running `ansible-lint`:

    WARNING  Replaced outdated tag '503' with 'no-handler', replace it to avoid future regressions

Link: https://ansible.readthedocs.io/projects/lint/rules/no-handler/
2025-02-19 21:40:23 +01:00
fd01c68746 Merge pull request 'chore(deps): update quay.io/hedgedoc/hedgedoc docker tag to v1.10.1' () from renovate/quay.io-hedgedoc-hedgedoc-1.x into master
Reviewed-on: 
2025-02-10 19:18:46 +01:00
ec6a8b60ae chore(deps): update quay.io/hedgedoc/hedgedoc docker tag to v1.10.1 2025-02-10 19:17:18 +01:00
dc729d3826 Merge pull request 'chore(deps): update jacobalberty/unifi docker tag to v9.0.114' () from renovate/jacobalberty-unifi-9.x into master
Reviewed-on: 
2025-02-10 19:16:33 +01:00
e518a25dd4 chore(deps): update jacobalberty/unifi docker tag to v9.0.114 2025-02-10 19:16:15 +01:00
9da60fa37a Merge pull request 'chore(deps): update codeberg.org/forgejo/forgejo docker tag to v10.0.1' () from renovate/codeberg.org-forgejo-forgejo-10.x into master
Reviewed-on: 
2025-02-10 19:15:35 +01:00
7094eae031 chore(deps): update codeberg.org/forgejo/forgejo docker tag to v10.0.1 2025-02-08 14:18:55 +00:00
d98a506c92 Merge pull request 'chore(deps): update grafana/grafana docker tag to v11.5.1' () from renovate/grafana-grafana-11.x into master
Reviewed-on: 
2025-02-05 18:06:18 +01:00
80c32ea4c8 chore(deps): update grafana/grafana docker tag to v11.5.1 2025-02-05 18:06:01 +01:00
57d44ada7d Merge pull request 'chore(deps): update renovate/renovate docker tag to v39.161.0' () from renovate/renovate-renovate-39.x into master
Reviewed-on: 
2025-02-05 18:03:21 +01:00
a3c14b1fb0 chore(deps): update renovate/renovate docker tag to v39.161.0 2025-02-05 09:18:51 +00:00
0963a11ceb Merge pull request 'chore(deps): update grafana/grafana docker tag to v11.5.0' () from renovate/grafana-grafana-11.x into master
Reviewed-on: 
2025-02-02 20:52:16 +01:00
be22683021 chore(deps): update grafana/grafana docker tag to v11.5.0 2025-02-02 20:51:46 +01:00
ab070b8da2 Merge pull request 'chore(deps): update shlinkio/shlink docker tag to v4.4.2' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2025-02-02 20:51:17 +01:00
f820443c46 chore(deps): update shlinkio/shlink docker tag to v4.4.2 2025-02-02 20:50:34 +01:00
6c58b37fee Merge pull request 'chore(deps): update redmine docker tag to v6.0.3' () from renovate/redmine-6.x into master
Reviewed-on: 
2025-02-02 20:48:34 +01:00
c6b221d3fd chore(deps): update redmine docker tag to v6.0.3 2025-01-30 00:18:45 +00:00
e2942cca27 Merge pull request 'chore(deps): update jacobalberty/unifi docker tag to v9' () from renovate/jacobalberty-unifi-9.x into master
Reviewed-on: 
2025-01-19 23:19:59 +01:00
0e377866ff chore(deps): update jacobalberty/unifi docker tag to v9 2025-01-19 23:19:28 +01:00
253bf3b0c4 Merge pull request 'chore(deps): update codeberg.org/forgejo/forgejo docker tag to v10' () from renovate/codeberg.org-forgejo-forgejo-10.x into master
Reviewed-on: 
2025-01-19 22:58:13 +01:00
cda2836764 chore(deps): update codeberg.org/forgejo/forgejo docker tag to v10 2025-01-19 22:56:42 +01:00
0711ceaf1d Merge pull request 'Add host Rhodium' () from rhodium into master
Reviewed-on: 
Reviewed-by: dkdent <dkdent@netz39.de>
2025-01-19 22:55:54 +01:00
50d1b6098d Make a note about adding SSH keys to host Rhodium 2025-01-13 10:31:59 +01:00
8a692376d3 Add SSH entry for host Rhodium
Please note that it is still necessary to
manually add the SSH keys to the OpenWRT config.
2025-01-13 10:28:59 +01:00
15ed271490 Add note on host Rhodium to inventory 2025-01-13 10:28:59 +01:00
5e97232b90 Merge pull request '🚚 requirements: Use namespaced role names' () from alex/netz39-infra-ansible:alex/requirements into master
Reviewed-on: 
Reviewed-by: dkdent <dkdent@netz39.de>
Reviewed-by: Stefan Haun <tux@netz39.de>
2025-01-13 08:36:00 +01:00
a253be9c02 chore(deps): update joseluisq/static-web-server docker tag to v2.35 ()
Minor version bump, should be fine.
2025-01-10 20:25:54 +01:00
8dd1a5a860 chore(deps): update joseluisq/static-web-server docker tag to v2.35 2025-01-10 18:18:45 +00:00
7ea6716b03 Merge pull request 'chore(deps): update shlinkio/shlink docker tag to v4.4.0' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2024-12-28 12:44:22 +01:00
65dfee7777 Merge pull request 'chore(deps): update renovate/renovate docker tag to v39.84.0' () from renovate/renovate-renovate-39.x into master
Reviewed-on: 
2024-12-28 12:42:08 +01:00
cf10544a02 🚚 roles: ble_keykeeper: Use namespaced name
Removed redundant word "role" from role name, which originates from git
repo name.  Makes it clear we use an external role here.

Link: https://docs.ansible.com/ansible/latest/galaxy/user_guide.html#installing-multiple-roles-from-a-file
2024-12-28 12:24:16 +01:00
605eca4c38 🚚 roles: dehydrated_cron: Use namespaced name
Removes the redundant words "ansible" and "role" from the role name
originating from the Git repo name, and uses the author's name as
namespace instead.  This makes it easier to recognize as external role.

Note: the host-wittgenstein recipe already used that new name, but we
did not set it up in requirements, yet.  (How did that ever work?)

Link: https://docs.ansible.com/ansible/latest/galaxy/user_guide.html#installing-multiple-roles-from-a-file
Fixes: f4db6fa395 ("Add Ansible setup for wittgenstein")
2024-12-28 12:16:21 +01:00
832094843a 🚚 roles: dehydrated: Use namespaced role name
In "ansible-role-dehydrated" the words "ansible" and "role" are
redundant, because implicit anyway.  What actually helps here is using a
namespaced name in the format galaxy would use, to make clear it's an
external role, and where it comes from.

Link: https://docs.ansible.com/ansible/latest/galaxy/user_guide.html#installing-multiple-roles-from-a-file
2024-12-28 12:07:20 +01:00
7059204766 🚚 roles: timezone: Override with galaxy name
The repository name differs from the galaxy name.  Although not strictly
necessary, makes origin of role more clear in code and would allow
easier switching between galaxy, and git.  Using the namespaced name
makes it clear it's an external role.  Same name as in role
documentation now.  No change in actual role or version of role.

Link: https://docs.ansible.com/ansible/latest/galaxy/user_guide.html#installing-multiple-roles-from-a-file
2024-12-28 12:00:40 +01:00
39ae509e20 chore(deps): update renovate/renovate docker tag to v39.84.0 2024-12-28 09:18:52 +00:00
b1d76e4fc9 chore(deps): update shlinkio/shlink docker tag to v4.4.0 2024-12-27 16:22:18 +00:00
adc73cbbf3 Merge pull request 'chore(deps): update louislam/uptime-kuma docker tag to v1.23.16' () from renovate/louislam-uptime-kuma-1.x into master
Reviewed-on: 
2024-12-21 14:49:23 +01:00
68fcfb098b chore(deps): update louislam/uptime-kuma docker tag to v1.23.16 2024-12-20 17:18:45 +00:00
581cd6954f Merge pull request 'chore(deps): update bitnami/rabbitmq docker tag to v4.0.5' () from renovate/bitnami-rabbitmq-4.x into master
Reviewed-on: 
2024-12-18 19:05:26 +01:00
dbd1b98130 chore(deps): update bitnami/rabbitmq docker tag to v4.0.5 2024-12-18 19:05:07 +01:00
c26a4617ca Merge pull request 'chore(deps): update redmine docker tag to v6.0.2' () from renovate/redmine-6.x into master
Reviewed-on: 
2024-12-18 19:04:45 +01:00
b044f0a993 chore(deps): update redmine docker tag to v6.0.2 2024-12-17 21:18:50 +00:00
cad9ad8afb Merge pull request 'chore(deps): update codeberg.org/forgejo/forgejo docker tag to v9.0.3' () from renovate/codeberg.org-forgejo-forgejo-9.x into master
Reviewed-on: 
2024-12-15 17:48:46 +01:00
a2012faaf3 chore(deps): update codeberg.org/forgejo/forgejo docker tag to v9.0.3 2024-12-15 17:48:20 +01:00
69481ee4e5 Merge pull request 'chore(deps): update redmine docker tag to v6' () from renovate/redmine-6.x into master
Reviewed-on: 
2024-12-15 08:51:30 +01:00
6b004b8825 Merge pull request 'chore(deps): update renovate/renovate docker tag to v39.67.0' () from renovate/renovate-renovate-39.x into master
Reviewed-on: 
2024-12-14 10:22:47 +01:00
c557930861 chore(deps): update renovate/renovate docker tag to v39.68.1 2024-12-14 09:18:55 +00:00
efdcbaa43b Merge pull request 'chore(deps): update bitnami/rabbitmq docker tag to v4.0.4' () from renovate/bitnami-rabbitmq-4.x into master
Reviewed-on: 
2024-12-08 00:28:56 +01:00
3abd35d79f chore(deps): update bitnami/rabbitmq docker tag to v4.0.4 2024-12-08 00:28:39 +01:00
d9d18086bb Merge pull request 'chore(deps): update shlinkio/shlink docker tag to v4.3.1' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2024-12-08 00:28:17 +01:00
339c7b0f77 chore(deps): update shlinkio/shlink docker tag to v4.3.1 2024-12-08 00:27:46 +01:00
3f4edcd08d Merge pull request 'chore(deps): update joseluisq/static-web-server docker tag to v2.34' () from renovate/joseluisq-static-web-server-2.x into master
Reviewed-on: 
2024-12-08 00:27:27 +01:00
8221be4e53 chore(deps): update joseluisq/static-web-server docker tag to v2.34 2024-12-08 00:26:44 +01:00
2bf1a4648e Merge pull request 'chore(deps): update grafana/grafana docker tag to v11.4.0' () from renovate/grafana-grafana-11.x into master
Reviewed-on: 
2024-12-08 00:25:51 +01:00
feb596dc5b chore(deps): update grafana/grafana docker tag to v11.4.0 2024-12-05 19:18:55 +00:00
7a1ee21a87 Merge pull request 'Install sudo access to i2c tools for Asterisk' () from sudo-asterisk-i2c into master
Reviewed-on: 
Reviewed-by: dkdent <dkdent@netz39.de>
2024-11-18 21:50:21 +01:00
bfe56fdde8 chore(deps): update redmine docker tag to v6 2024-11-18 20:55:39 +01:00
76325d195f Merge pull request 'chore(deps): update codeberg.org/forgejo/forgejo docker tag to v9.0.2' () from renovate/codeberg.org-forgejo-forgejo-9.x into master
Reviewed-on: 
2024-11-16 14:44:10 +01:00
0cdbb5f7bb chore(deps): update codeberg.org/forgejo/forgejo docker tag to v9.0.2 2024-11-15 20:18:49 +00:00
f30712cbc9 Merge pull request 'chore(deps): update renovate/renovate docker tag to v39' () from renovate/renovate-renovate-39.x into master
Reviewed-on: 
2024-11-13 21:38:00 +01:00
1dd4e24340 chore(deps): update renovate/renovate docker tag to v39 2024-11-13 19:25:13 +00:00
e0589fde30 Merge pull request 'chore(deps): update jacobalberty/unifi docker tag to v8.6.9' () from renovate/jacobalberty-unifi-8.x into master
Reviewed-on: 
2024-11-11 20:09:57 +01:00
6b5597f7fe chore(deps): update jacobalberty/unifi docker tag to v8.6.9 2024-11-11 20:03:23 +01:00
34f11d7603 Merge pull request 'chore(deps): update redmine docker tag to v5.1.4' () from renovate/redmine-5.x into master
Reviewed-on: 
2024-11-11 20:00:02 +01:00
ec6b03a644 chore(deps): update redmine docker tag to v5.1.4 2024-11-05 00:22:33 +00:00
64eee7b7de Install sudo config for Asterisk I2C 2024-11-04 10:13:40 +01:00
4fbfd031a3 Add sudo configuration for Asterisk I2C access 2024-11-04 10:13:40 +01:00
00341f7121 Merge pull request 'chore(deps): update netz39/spaceapi-service docker tag to v0.1.1' () from renovate/netz39-spaceapi-service-0.x into master
Reviewed-on: 
2024-11-03 16:45:38 +01:00
23cf970dcc chore(deps): update netz39/spaceapi-service docker tag to v0.1.1 2024-11-03 15:22:39 +00:00
d900245cd2 Merge pull request 'chore(deps): update shlinkio/shlink docker tag to v4.2.5' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2024-11-03 13:59:43 +01:00
522b8fb7f7 chore(deps): update shlinkio/shlink docker tag to v4.2.5 2024-11-03 11:24:35 +00:00
f61ba6c46e Merge pull request 'Fix reboot on Wittgenstein' () from wittgenstein-reboot into master
Reviewed-on: 
Reviewed-by: dkdent <dkdent@netz39.de>
2024-11-03 00:12:47 +01:00
032c1f067e Remove obsolete call for spaceAPI handling 2024-11-03 00:10:52 +01:00
0f4c916f78 Start tmux detached because there is no Term in CRON 2024-11-03 00:09:46 +01:00
56679fc77f Merge pull request 'chore: remove inactive admin kwasir' () from chore/remove-admin-kwasir into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2024-11-03 00:02:34 +01:00
f54f371c72 chore: remove inactive admin kwasir 2024-11-02 23:59:56 +01:00
5df522d13c Merge pull request 'Ansible playbook for wittgenstein' () from wittgenstein into master
Reviewed-on: 
Reviewed-by: dkdent <dkdent@netz39.de>
2024-11-02 23:23:47 +01:00
7fdfe89ed8 Setup docker container Ampel Controller 2024-11-02 23:01:13 +01:00
2108f90584 Change forwarding for SpaceAPI according to the new service 2024-11-02 23:01:13 +01:00
5f4e63c1de Set the wittgenstein MAC address 2024-11-02 23:01:13 +01:00
04c6a6d586 Set up the SpaceAPI service docker container 2024-11-02 23:01:13 +01:00
136c2c8985 Add paho-mqtt library to install dependencies 2024-11-02 23:01:13 +01:00
7693e0be94 Add wittgenstein to main playbook 2024-11-02 23:01:13 +01:00
c73cff2cee Add wittgenstein to inventory 2024-11-02 23:01:13 +01:00
f4db6fa395 Add Ansible setup for wittgenstein 2024-11-02 23:01:13 +01:00
c1a56fa80b Add reboot/unstuck script for wittgenstein 2024-11-02 23:01:13 +01:00
518455b7de Add switch on/off scripts for wittgenstein 2024-11-02 23:01:13 +01:00
f9285f8451 Merge pull request 'feat: add role to manage dyndns entry on desec.io' () from feat/desec-dyndns into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2024-11-02 22:50:23 +01:00
38fbff30b5 feat: add role to manage dyndns entry on desec.io 2024-11-02 22:31:28 +01:00
daa51d3a2a Merge pull request 'chore(deps): update renovate/renovate docker tag to v38.142.1' () from renovate/renovate-renovate-38.x into master
Reviewed-on: 
2024-11-01 15:40:27 +01:00
590442e058 chore(deps): update renovate/renovate docker tag to v38.142.1 2024-11-01 09:22:31 +00:00
cebc1ef02d Merge pull request 'chore(deps): update bitnami/rabbitmq docker tag to v4.0.3' () from renovate/bitnami-rabbitmq-4.x into master
Reviewed-on: 
2024-10-31 18:06:19 +01:00
e572996755 chore(deps): update bitnami/rabbitmq docker tag to v4.0.3 2024-10-31 18:06:01 +01:00
a531671d84 Merge pull request 'chore(deps): update codeberg.org/forgejo/forgejo docker tag to v9.0.1' () from renovate/codeberg.org-forgejo-forgejo-9.x into master
Reviewed-on: 
2024-10-31 18:05:43 +01:00
f7ee5f709d chore(deps): update codeberg.org/forgejo/forgejo docker tag to v9.0.1 2024-10-30 15:18:11 +00:00
17ce053a32 Merge pull request 'chore(deps): update shlinkio/shlink docker tag to v4.2.4' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2024-10-27 22:57:28 +01:00
2d9a3f4123 chore(deps): update shlinkio/shlink docker tag to v4.2.4 2024-10-27 22:44:45 +01:00
763f782972 Merge pull request 'chore(deps): update renovate/renovate docker tag to v38.132.3' () from renovate/renovate-renovate-38.x into master
Reviewed-on: 
2024-10-27 22:43:58 +01:00
75a5b1b7bc chore(deps): update renovate/renovate docker tag to v38.132.3 2024-10-27 14:22:42 +00:00
cbfbdb0bf6 Merge pull request 'Upgrade Forgejo' () from forgejo-updates into master
Reviewed-on: 
2024-10-24 10:41:05 +02:00
131920f29e After upgrading, pin to 9.0.0 2024-10-24 10:40:18 +02:00
fd2445361d Upgrade forgejo to v9 2024-10-24 10:37:44 +02:00
1bdf8068d7 Upgrade forgejo to v8 2024-10-24 10:33:02 +02:00
a1f651235f Upgrade forgejo to v7 2024-10-24 10:31:13 +02:00
6f6fe8ab21 Merge pull request 'chore(deps): update dependency community.grafana to v2' () from renovate/community.grafana-2.x into master
Reviewed-on: 
2024-10-23 16:48:34 +02:00
18f86dc490 chore(deps): update dependency community.grafana to v2 2024-10-23 16:48:07 +02:00
cb1276a53c Merge pull request 'chore(deps): update jacobalberty/unifi docker tag to v8.5.6' () from renovate/jacobalberty-unifi-8.x into master
Reviewed-on: 
2024-10-23 16:00:18 +02:00
a7f098c5d6 chore(deps): update jacobalberty/unifi docker tag to v8.5.6 2024-10-23 15:59:27 +02:00
61f46c879d Merge pull request 'chore(deps): update bitnami/rabbitmq docker tag to v4' () from renovate/bitnami-rabbitmq-4.x into master
Reviewed-on: 
2024-10-23 15:58:37 +02:00
19b3d3d5f7 chore(deps): update bitnami/rabbitmq docker tag to v4 2024-10-23 15:32:26 +02:00
908e4a18fc Merge pull request 'chore(deps): update netz39/entities_validation_svc docker tag to v1.0.3' () from renovate/netz39-entities_validation_svc-1.x into master
Reviewed-on: 
2024-10-23 15:30:28 +02:00
7e91c59631 chore(deps): update netz39/entities_validation_svc docker tag to v1.0.3 2024-10-23 15:30:16 +02:00
ae806af3c9 Merge pull request 'chore(deps): update grafana/grafana docker tag to v11' () from renovate/grafana-grafana-11.x into master
Reviewed-on: 
2024-10-23 15:29:38 +02:00
cc5b4be06f chore(deps): update grafana/grafana docker tag to v11 2024-10-23 15:29:19 +02:00
ca1ca07556 Merge pull request 'chore(deps): update renovate/renovate docker tag to v38.130.0' () from renovate/renovate-renovate-38.x into master
Reviewed-on: 
2024-10-23 15:28:46 +02:00
6e9d2dd1c6 chore(deps): update renovate/renovate docker tag to v38.130.0 2024-10-22 22:22:41 +00:00
9dce27dcaa Merge pull request 'chore(deps): update louislam/uptime-kuma docker tag to v1.23.15' () from renovate/louislam-uptime-kuma-1.x into master
Reviewed-on: 
2024-10-20 18:25:34 +02:00
286997eb23 chore(deps): update louislam/uptime-kuma docker tag to v1.23.15 2024-10-20 18:25:09 +02:00
d0b38eaf91 Merge pull request 'chore(deps): update grafana/grafana docker tag to v10.4.10' () from renovate/grafana-grafana-10.x into master
Reviewed-on: 
2024-10-20 18:24:36 +02:00
cdc3ef1305 chore(deps): update grafana/grafana docker tag to v10.4.10 2024-10-20 18:24:20 +02:00
4ee1e400c3 Merge pull request 'chore(deps): update eclipse-mosquitto docker tag to v2.0.20' () from renovate/eclipse-mosquitto-2.x into master
Reviewed-on: 
2024-10-20 18:23:46 +02:00
df4dbbfdb3 chore(deps): update eclipse-mosquitto docker tag to v2.0.20 2024-10-18 13:22:24 +00:00
dee1710b29 Merge pull request 'chore(deps): update shlinkio/shlink docker tag to v4.2.3' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2024-10-18 15:02:22 +02:00
7b753d26b3 chore(deps): update shlinkio/shlink docker tag to v4.2.3 2024-10-17 08:22:26 +00:00
c97bac38fa Merge pull request 'chore(deps): update eclipse-mosquitto docker tag to v2.0.19' () from renovate/eclipse-mosquitto-2.x into master
Reviewed-on: 
2024-10-07 15:32:28 +02:00
4b7968f11b chore(deps): update eclipse-mosquitto docker tag to v2.0.19 2024-10-03 01:22:22 +00:00
d4c1d118a4 Merge pull request 'chore(deps): update grafana/grafana docker tag to v10.4.9' () from renovate/grafana-grafana-10.x into master
Reviewed-on: 
2024-09-27 11:22:14 +02:00
ff212c05a4 chore(deps): update grafana/grafana docker tag to v10.4.9 2024-09-26 13:30:41 +00:00
04b21f3833 Merge pull request 'chore(deps): update renovate/renovate docker tag to v38.92.0' () from renovate/renovate-renovate-38.x into master
Reviewed-on: 
2024-09-21 14:35:27 +02:00
ba19eb59bd chore(deps): update renovate/renovate docker tag to v38.92.0 2024-09-21 14:35:18 +02:00
f67465a5b8 Merge pull request 'chore(deps): update jacobalberty/unifi docker tag to v8.4.62' () from renovate/jacobalberty-unifi-8.x into master
Reviewed-on: 
2024-09-21 14:34:56 +02:00
9de9948015 chore(deps): update jacobalberty/unifi docker tag to v8.4.62 2024-09-20 20:28:55 +00:00
280ae3b8ba Merge pull request 'chore(deps): update joseluisq/static-web-server docker tag to v2.33' () from renovate/joseluisq-static-web-server-2.x into master
Reviewed-on: 
2024-09-18 11:22:10 +02:00
69655030ed chore(deps): update joseluisq/static-web-server docker tag to v2.33 2024-09-17 22:27:32 +00:00
2e3ade1483 Merge pull request 'chore(deps): update jacobalberty/unifi docker tag to v8.4.59' () from renovate/jacobalberty-unifi-8.x into master
Reviewed-on: 
2024-09-17 23:04:31 +02:00
5f570352cf Merge pull request 'chore(deps): update renovate/renovate docker tag to v38.84.0' () from renovate/renovate-renovate-38.x into master
Reviewed-on: 
2024-09-16 23:29:04 +02:00
66e3649d97 chore(deps): update renovate/renovate docker tag to v38.84.0 2024-09-16 19:19:20 +00:00
003c6c6b29 Merge pull request 'chore(deps): update grafana/grafana docker tag to v10.4.8' () from renovate/grafana-grafana-10.x into master
Reviewed-on: 
2024-09-15 22:54:12 +02:00
c6fb82a3d3 chore(deps): update grafana/grafana docker tag to v10.4.8 2024-09-15 22:53:28 +02:00
3e06295c38 Merge pull request 'feat: add docker images prune cron job to docker_setup role' () from feat/cron-docker-prune into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2024-09-10 20:42:47 +02:00
83a9b81cbc feat: add docker images prune cron job to docker_setup role 2024-09-10 20:42:30 +02:00
1883d1da9a Merge pull request 'chore(deps): update quay.io/hedgedoc/hedgedoc docker tag to v1.10.0' () from renovate/quay.io-hedgedoc-hedgedoc-1.x into master
Reviewed-on: 
2024-09-10 11:04:21 +02:00
5e5c7f3337 chore(deps): update quay.io/hedgedoc/hedgedoc docker tag to v1.10.0 2024-09-09 10:19:23 +00:00
952c606ea2 Merge pull request 'chore(deps): update renovate/renovate docker tag to v38.71.0' () from renovate/renovate-renovate-38.x into master
Reviewed-on: 
2024-09-07 10:43:58 +02:00
ab2f9cd576 chore(deps): update renovate/renovate docker tag to v38.71.0 2024-09-06 20:23:13 +00:00
f3fce1664e Merge pull request 'chore(deps): update bitnami/rabbitmq docker tag to v3.13.7' () from renovate/bitnami-rabbitmq-3.x into master
Reviewed-on: 
2024-08-27 22:36:23 +02:00
f16eb3eef0 Merge pull request 'chore(deps): update postgres docker tag to v16.4' () from renovate/postgres-16.x into master
Reviewed-on: 
2024-08-27 22:33:21 +02:00
281b07a33b chore(deps): update postgres docker tag to v16.4 2024-08-27 22:27:11 +02:00
5515336441 Merge pull request 'chore(deps): update shlinkio/shlink docker tag to v4.2.0' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2024-08-27 22:24:18 +02:00
120959aa2a Merge pull request 'chore(deps): update renovate/renovate docker tag to v38.55.4' () from renovate/renovate-renovate-38.x into master
Reviewed-on: 
2024-08-27 22:21:54 +02:00
8e029b7fab chore(deps): update renovate/renovate docker tag to v38.55.5 2024-08-27 20:18:38 +00:00
ad3b98ee0d chore(deps): update jacobalberty/unifi docker tag to v8.4.59 2024-08-26 15:18:33 +00:00
f2f0ffbe11 chore(deps): update bitnami/rabbitmq docker tag to v3.13.7 2024-08-26 07:19:17 +00:00
983ac8f340 Merge pull request 'chore(deps): update grafana/grafana docker tag to v10.4.7' () from renovate/grafana-grafana-10.x into master
Reviewed-on: 
2024-08-14 17:09:12 +02:00
5a2e8ba607 chore(deps): update grafana/grafana docker tag to v10.4.7 2024-08-14 13:18:38 +00:00
ec2b0db3f5 chore(deps): update shlinkio/shlink docker tag to v4.2.0 2024-08-11 17:21:05 +00:00
ba4ac3883f Merge pull request 'chore(deps): update netz39/entities_validation_svc docker tag to v1.0.2' () from renovate/netz39-entities_validation_svc-1.x into master
Reviewed-on: 
2024-08-07 17:04:22 +02:00
4e418220c2 chore(deps): update netz39/entities_validation_svc docker tag to v1.0.2 2024-08-07 14:18:27 +00:00
eedf837513 Merge pull request 'chore(deps): update renovate/renovate docker tag to v38.18.12' () from renovate/renovate-renovate-38.x into master
Reviewed-on: 
2024-08-04 16:40:44 +02:00
f9ab91301f chore(deps): update renovate/renovate docker tag to v38.18.12 2024-08-04 16:40:28 +02:00
d53417d630 Merge pull request 'chore(deps): update grafana/grafana docker tag to v10.4.6' () from renovate/grafana-grafana-10.x into master
Reviewed-on: 
2024-08-04 16:40:06 +02:00
6fbd06f1e9 chore(deps): update grafana/grafana docker tag to v10.4.6 2024-08-04 16:39:42 +02:00
4103dfd08f Merge pull request 'name uses all lower case characters' () from JensWH/netz39-infra-ansible:fix-casing into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2024-08-04 16:39:10 +02:00
Jens Winter-Hübenthal
d0b53af9d3 name uses all lower case characters 2024-08-04 16:38:57 +02:00
1d7e0649f0 Merge pull request 'add Jens as user' () from JensWH/netz39-infra-ansible:add-user-jens into master
Reviewed-on: 
2024-08-02 19:51:49 +02:00
Jens Winter-Hübenthal
fa4d9912ac add Jens as user 2024-08-02 19:34:51 +02:00
b541197c05 Merge pull request 'chore(deps): update bitnami/rabbitmq docker tag to v3.13.6' () from renovate/bitnami-rabbitmq-3.x into master
Reviewed-on: 
2024-08-01 10:46:23 +02:00
f2f195a528 chore(deps): update bitnami/rabbitmq docker tag to v3.13.6 2024-08-01 10:45:31 +02:00
23fcaf0eae Merge pull request 'chore(deps): update renovate/renovate docker tag to v38' () from renovate/renovate-renovate-38.x into master
Reviewed-on: 
2024-08-01 10:44:01 +02:00
6875c74593 chore(deps): update renovate/renovate docker tag to v38 2024-07-31 23:21:35 +00:00
0c9f39c16c Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.431.7' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-07-15 21:22:59 +02:00
871550055a chore(deps): update renovate/renovate docker tag to v37.431.7 2024-07-15 19:18:17 +00:00
0050a9e6da Merge pull request 'chore(deps): update bitnami/rabbitmq docker tag to v3.13.4' () from renovate/bitnami-rabbitmq-3.x into master
Reviewed-on: 
2024-07-11 21:20:03 +02:00
62348a06c2 chore(deps): update bitnami/rabbitmq docker tag to v3.13.4 2024-07-03 15:18:16 +00:00
5f3462f510 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.422.0' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-07-02 22:46:38 +02:00
7e668a651b chore(deps): update renovate/renovate docker tag to v37.422.0 2024-07-02 16:18:19 +00:00
fa98687933 Merge pull request 'chore(deps): update grafana/grafana docker tag to v10.4.5' () from renovate/grafana-grafana-10.x into master
Reviewed-on: 
2024-06-25 22:42:57 +02:00
6b7f666473 chore(deps): update grafana/grafana docker tag to v10.4.5 2024-06-25 08:18:18 +00:00
2a32a18c6b Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.413.3' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-06-20 22:35:29 +02:00
b1c3a04970 chore(deps): update renovate/renovate docker tag to v37.413.3 2024-06-20 22:35:15 +02:00
c97d4b0a24 Merge pull request 'chore(deps): update redmine docker tag to v5.1.3' () from renovate/redmine-5.x into master
Reviewed-on: 
2024-06-20 22:34:50 +02:00
f3b233f1b5 chore(deps): update redmine docker tag to v5.1.3 2024-06-20 22:34:32 +02:00
77789d01f5 Merge pull request 'chore(deps): update grafana/grafana docker tag to v10.4.4' () from renovate/grafana-grafana-10.x into master
Reviewed-on: 
2024-06-20 22:34:02 +02:00
8b96762996 chore(deps): update grafana/grafana docker tag to v10.4.4 2024-06-20 22:33:42 +02:00
a97852845e Merge pull request 'chore(deps): update joseluisq/static-web-server docker tag to v2.32' () from renovate/joseluisq-static-web-server-2.x into master
Reviewed-on: 
2024-06-20 22:33:19 +02:00
dec9767e5d chore(deps): update joseluisq/static-web-server docker tag to v2.32 2024-06-19 05:18:07 +00:00
fd5a9fe75d Merge pull request 'chore(deps): update bitnami/rabbitmq docker tag to v3.13.3' () from renovate/bitnami-rabbitmq-3.x into master
Reviewed-on: 
2024-06-06 22:46:58 +02:00
991232bdbb chore(deps): update bitnami/rabbitmq docker tag to v3.13.3 2024-06-06 22:46:45 +02:00
c66d44d4e1 Merge pull request 'chore(deps): update shlinkio/shlink docker tag to v4.1.1' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2024-06-06 22:46:27 +02:00
1057d3958f chore(deps): update shlinkio/shlink docker tag to v4.1.1 2024-06-06 22:46:10 +02:00
6549d08335 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.395.0' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-06-06 22:45:42 +02:00
c1ffd772c0 chore(deps): update renovate/renovate docker tag to v37.395.0 2024-06-06 22:45:26 +02:00
7f4ec585fe Merge pull request 'chore(deps): update dependency community.grafana to v1.9.1' () from renovate/community.grafana-1.x into master
Reviewed-on: 
2024-06-06 22:44:56 +02:00
cf350a3de9 chore(deps): update dependency community.grafana to v1.9.1 2024-06-06 22:43:45 +02:00
5ba766887d Merge pull request 'Mount a config directory for redmine-mysql' () from mysql-native-password into master
Reviewed-on: 
Reviewed-by: dkdent <dkdent@netz39.de>
2024-05-30 00:04:38 +02:00
dec35c785a Mount a config directory for redmine-mysql
This mount allows to add additional configuration, such as enabling
the native password plugin for now so that we can continue using
our database.
2024-05-30 00:04:06 +02:00
48bea2f979 Add missing newline 2024-05-30 00:04:06 +02:00
ba101937b5 Merge pull request 'chore(deps): update joseluisq/static-web-server docker tag to v2.31' () from renovate/joseluisq-static-web-server-2.x into master
Reviewed-on: 
2024-05-29 23:25:06 +02:00
e03f281a42 chore(deps): update joseluisq/static-web-server docker tag to v2.31 2024-05-19 21:18:20 +00:00
b75fe72ddd Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.368.6' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-05-18 12:37:12 +02:00
62a246b872 chore(deps): update renovate/renovate docker tag to v37.368.6 2024-05-18 12:37:00 +02:00
7fcc062e7a Merge pull request 'chore(deps): update grafana/grafana docker tag to v10.4.3' () from renovate/grafana-grafana-10.x into master
Reviewed-on: 
2024-05-18 12:36:39 +02:00
277cbb350d chore(deps): update grafana/grafana docker tag to v10.4.3 2024-05-18 12:36:00 +02:00
1eb8e502dd Merge pull request 'Add ssh key for timo' () from feat/ssh-key-timo into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2024-05-18 12:35:04 +02:00
34788797b8 Add ssh key 2024-05-17 09:58:40 +02:00
7a7b032777 Merge pull request 'chore(deps): update postgres docker tag to v16.3' () from renovate/postgres-16.x into master
Reviewed-on: 
2024-05-10 20:10:46 +02:00
532d76f7e1 chore(deps): update postgres docker tag to v16.3 2024-05-10 00:18:23 +00:00
b4cfdfbfe6 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.349.2' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-05-07 19:53:25 +02:00
1153b0e75c chore(deps): update renovate/renovate docker tag to v37.349.2 2024-05-07 11:18:22 +00:00
360f2d0e98 Merge pull request 'chore(deps): update dersimn/brother_ql_web docker tag to v2.1.9' () from renovate/dersimn-brother_ql_web-2.x into master
Reviewed-on: 
2024-05-05 23:57:43 +02:00
b1c2fff035 chore(deps): update dersimn/brother_ql_web docker tag to v2.1.9 2024-05-03 21:18:17 +00:00
116ae65ada Merge pull request 'Update cleanURI-webui to 0.2.1' () from cleanuri-webui-0.2.1 into master
Reviewed-on: 
2024-05-02 10:11:19 +02:00
e6a2cb9e97 Update cleanURI-webui to 0.2.1
Security Updates
2024-05-02 10:10:48 +02:00
8325a21336 Merge pull request 'chore(deps): update dersimn/brother_ql_web docker tag to v2.1.8' () from renovate/dersimn-brother_ql_web-2.x into master
Reviewed-on: 
2024-05-02 10:08:51 +02:00
64b604d2c0 chore(deps): update dersimn/brother_ql_web docker tag to v2.1.8 2024-05-01 16:18:17 +00:00
faab6f46db Merge pull request 'Set Door audio volume to 70%' () from platon-door-audio into master
Reviewed-on: 
Reviewed-by: dkdent <dkdent@netz39.de>
2024-05-01 13:16:47 +02:00
0695984e6a Set Door audio volume to 70% 2024-05-01 13:16:17 +02:00
19c77a63ed Merge pull request 'chore(deps): update bitnami/rabbitmq docker tag to v3.13.2' () from renovate/bitnami-rabbitmq-3.x into master
Reviewed-on: 
2024-05-01 12:46:10 +02:00
b4a9b6df08 chore(deps): update bitnami/rabbitmq docker tag to v3.13.2 2024-05-01 12:45:56 +02:00
3f0cf94df4 Merge pull request 'chore(deps): update mysql docker tag to v8.4' () from renovate/mysql-8.x into master
Reviewed-on: 
2024-05-01 12:45:29 +02:00
8bd3d2f4c6 chore(deps): update mysql docker tag to v8.4 2024-05-01 00:18:18 +00:00
b7a2162710 Merge pull request 'chore(deps): update joseluisq/static-web-server docker tag to v2.30' () from renovate/joseluisq-static-web-server-2.x into master
Reviewed-on: 
2024-04-29 08:29:09 +02:00
edc9f49550 add tags to prosody-web tasks 2024-04-29 08:28:43 +02:00
77108a5d14 chore(deps): update joseluisq/static-web-server docker tag to v2.30 2024-04-29 08:26:01 +02:00
dc7595f246 Merge pull request 'chore(deps): update louislam/uptime-kuma docker tag to v1.23.13' () from renovate/louislam-uptime-kuma-1.x into master
Reviewed-on: 
2024-04-29 08:24:19 +02:00
2194a36804 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.326.3' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-04-29 08:20:10 +02:00
efd592d039 chore(deps): update renovate/renovate docker tag to v37.326.3 2024-04-28 18:18:22 +00:00
d025bbfe40 chore(deps): update louislam/uptime-kuma docker tag to v1.23.13 2024-04-25 08:18:16 +00:00
ef2c8e4b16 Merge pull request 'chore(deps): update louislam/uptime-kuma docker tag to v1.23.12' () from renovate/louislam-uptime-kuma-1.x into master
Reviewed-on: 
2024-04-23 21:58:46 +02:00
578bd32ad9 chore(deps): update louislam/uptime-kuma docker tag to v1.23.12 2024-04-23 21:58:33 +02:00
02b75c6502 Merge pull request 'chore(deps): update codeberg.org/forgejo/forgejo docker tag to v1.21.11' () from renovate/codeberg.org-forgejo-forgejo-1.x into master
Reviewed-on: 
2024-04-23 21:58:09 +02:00
da027ecef9 chore(deps): update codeberg.org/forgejo/forgejo docker tag to v1.21.11 2024-04-20 19:18:15 +00:00
4b02f90d6b Merge pull request 'chore(deps): update shlinkio/shlink docker tag to v4.1.0' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2024-04-14 14:10:05 +02:00
039d216158 chore(deps): update shlinkio/shlink docker tag to v4.1.0 2024-04-14 08:19:52 +00:00
565116ebfc Merge pull request 'chore(deps): update grafana/grafana docker tag to v10.4.2' () from renovate/grafana-grafana-10.x into master
Reviewed-on: 
2024-04-14 09:31:19 +02:00
7f1e9ff3a8 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.293.0' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-04-14 09:24:18 +02:00
e25f5082b2 chore(deps): update renovate/renovate docker tag to v37.293.0 2024-04-14 06:18:12 +00:00
e9de372867 chore(deps): update grafana/grafana docker tag to v10.4.2 2024-04-11 16:18:37 +00:00
db23562b20 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.286.0' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-04-11 11:08:38 +02:00
5bbbe72ba5 chore(deps): update renovate/renovate docker tag to v37.286.0 2024-04-11 07:18:17 +00:00
932c3eab46 Merge pull request 'chore(deps): update bitnami/rabbitmq docker tag to v3.13.1' () from renovate/bitnami-rabbitmq-3.x into master
Reviewed-on: 
2024-04-10 13:27:23 +02:00
71ff7a276c chore(deps): update bitnami/rabbitmq docker tag to v3.13.1 2024-04-10 08:18:13 +00:00
1e9c9c42be Merge pull request 'chore(deps): update codeberg.org/forgejo/forgejo docker tag to v1.21.10' () from renovate/codeberg.org-forgejo-forgejo-1.x into master
Reviewed-on: 
2024-04-04 21:34:49 +02:00
28e0587202 chore(deps): update codeberg.org/forgejo/forgejo docker tag to v1.21.10 2024-04-04 19:18:10 +00:00
bccd4fc06c Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.278.0' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-03-31 12:00:55 +02:00
0bc1bdad65 chore(deps): update renovate/renovate docker tag to v37.278.0 2024-03-30 09:18:10 +00:00
cc9a512922 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.269.5' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-03-25 18:11:38 +01:00
8126e08afa chore(deps): update renovate/renovate docker tag to v37.269.5 2024-03-25 16:18:14 +00:00
c7e2ca611c Merge pull request 'chore(deps): update codeberg.org/forgejo/forgejo docker tag to v1.21.8' () from renovate/codeberg.org-forgejo-forgejo-1.x into master
Reviewed-on: 
2024-03-23 19:09:16 +01:00
9a5f4efe85 chore(deps): update codeberg.org/forgejo/forgejo docker tag to v1.21.8 2024-03-23 17:18:10 +00:00
7df3774ffc Merge pull request 'chore(deps): update grafana/grafana docker tag to v10.4.1' () from renovate/grafana-grafana-10.x into master
Reviewed-on: 
2024-03-22 10:17:13 +01:00
f1fa13c6f2 chore(deps): update grafana/grafana docker tag to v10.4.1 2024-03-22 10:17:02 +01:00
621eedcea8 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.265.0' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-03-22 10:16:46 +01:00
5af857bdf8 chore(deps): update renovate/renovate docker tag to v37.265.0 2024-03-22 10:16:28 +01:00
9f7b144f66 Merge pull request 'chore(deps): update jacobalberty/unifi docker tag to v8.1.113' () from renovate/jacobalberty-unifi-8.x into master
Reviewed-on: 
2024-03-22 10:16:07 +01:00
907c1f83a1 chore(deps): update jacobalberty/unifi docker tag to v8.1.113 2024-03-22 05:18:16 +00:00
fa160f3622 Merge pull request 'chore(deps): update shlinkio/shlink docker tag to v4.0.3' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2024-03-17 20:20:35 +01:00
aaee26d2f6 chore(deps): update shlinkio/shlink docker tag to v4.0.3 2024-03-17 20:20:25 +01:00
d4320ce402 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.252.0' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-03-17 20:20:05 +01:00
5ed4c6ba5d chore(deps): update renovate/renovate docker tag to v37.252.0 2024-03-17 11:18:21 +00:00
2362c145e7 Merge pull request 'chore(deps): update bitnami/dokuwiki docker tag to v20240206' () from renovate/bitnami-dokuwiki-20240206.x into master
Reviewed-on: 
2024-03-09 17:28:56 +01:00
ff1198c411 fix: use non digest tag for dokuwiki image 2024-03-09 17:26:16 +01:00
8227e68865 Merge pull request 'chore(deps): update grafana/grafana docker tag to v10.4.0' () from renovate/grafana-grafana-10.x into master
Reviewed-on: 
2024-03-09 17:17:25 +01:00
413af72c49 Merge pull request 'chore(deps): update codeberg.org/forgejo/forgejo docker tag to v1.21.7' () from renovate/codeberg.org-forgejo-forgejo-1.x into master
Reviewed-on: 
2024-03-09 17:14:17 +01:00
2abb85989a Merge pull request 'chore(deps): update redmine docker tag to v5.1.2' () from renovate/redmine-5.x into master
Reviewed-on: 
2024-03-09 17:09:45 +01:00
e9c6a96dd0 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.233.1' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-03-09 17:04:01 +01:00
5e1c64551e Merge pull request 'chore(deps): update joseluisq/static-web-server docker tag to v2.28' () from renovate/joseluisq-static-web-server-2.x into master
Reviewed-on: 
2024-03-09 17:01:18 +01:00
3d90cf94ec Merge pull request 'chore(deps): update shlinkio/shlink docker tag to v4' () from renovate/shlinkio-shlink-4.x into master
Reviewed-on: 
2024-03-09 16:27:03 +01:00
e5aacca5d9 chore(deps): update shlinkio/shlink docker tag to v4 2024-03-09 16:20:14 +01:00
49c991f090 Merge pull request 'chore(deps): update shlinkio/shlink docker tag to v3.7.4' () from renovate/shlinkio-shlink-3.x into master
Reviewed-on: 
2024-03-09 16:11:00 +01:00
648af52e35 chore(deps): update shlinkio/shlink docker tag to v3.7.4 2024-03-09 09:18:13 +00:00
a83007bafd chore(deps): update bitnami/dokuwiki docker tag to v20240206 2024-03-09 00:19:59 +00:00
693cdb085f chore(deps): update joseluisq/static-web-server docker tag to v2.28 2024-03-09 00:18:18 +00:00
3433dddea0 chore(deps): update renovate/renovate docker tag to v37.233.1 2024-03-08 21:18:15 +00:00
a158bc4969 chore(deps): update grafana/grafana docker tag to v10.4.0 2024-03-06 15:18:15 +00:00
adc44ee08c chore(deps): update codeberg.org/forgejo/forgejo docker tag to v1.21.7 2024-03-06 12:18:14 +00:00
0326be4e11 chore(deps): update redmine docker tag to v5.1.2 2024-03-05 03:18:12 +00:00
0d198ba00f Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.224.4' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-03-03 18:36:34 +01:00
da2f73811c chore(deps): update renovate/renovate docker tag to v37.224.4 2024-03-03 13:18:11 +00:00
bb8826a255 Merge pull request 'chore(deps): update netz39/entities_validation_svc docker tag to v1.0.1' () from renovate/netz39-entities_validation_svc-1.x into master
Reviewed-on: 
2024-02-26 22:38:02 +01:00
0f5c908997 chore(deps): update netz39/entities_validation_svc docker tag to v1.0.1 2024-02-26 22:37:01 +01:00
da9d491675 Merge pull request 'Update cleanURI components to the latest versions' () from cleanuri-update into master
Reviewed-on: 
2024-02-26 22:35:45 +01:00
5f890d4858 Update cleanURI components to the latest versions
This completes the switch to the new Site API and external site
implementations.

As there is some trouble with Amazon (see https://github.com/penguineer/cleanURI-site-implementations/pull/5)
Amazon is not available for now.
2024-02-26 20:10:04 +01:00
123d0ca51d Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.214.1' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-02-26 20:09:36 +01:00
9feb544687 chore(deps): update renovate/renovate docker tag to v37.214.1 2024-02-26 18:18:18 +00:00
d4a9148e4a Merge pull request 'chore(deps): update bitnami/dokuwiki:20230404 docker digest to 30e5bb9' () from renovate/bitnami-dokuwiki-20230404 into master
Reviewed-on: 
2024-02-24 15:15:39 +01:00
801974e13d chore(deps): update bitnami/dokuwiki:20230404 docker digest to 30e5bb9 2024-02-24 01:18:11 +00:00
88f745d74e Merge pull request 'chore(deps): update codeberg.org/forgejo/forgejo docker tag to v1.21.6' () from renovate/codeberg.org-forgejo-forgejo-1.x into master
Reviewed-on: 
2024-02-23 21:14:45 +01:00
c5aba025c9 chore(deps): update codeberg.org/forgejo/forgejo docker tag to v1.21.6 2024-02-23 21:14:30 +01:00
2847fff35c Merge pull request 'fix: remove GEOLITE_LICENSE_KEY to disable geolocating requests to shlink' () from feat/shlink-disable-geolocation into master
Reviewed-on: 
Reviewed-by: Stefan Haun <tux@netz39.de>
2024-02-23 21:14:01 +01:00
6d389a3c2a fix: remove GEOLITE_LICENSE_KEY to disable geolocating requests to shlink 2024-02-22 13:52:26 +01:00
4088a07602 Merge pull request 'chore(deps): update bitnami/dokuwiki:20230404 docker digest to 91dbc4a' () from renovate/bitnami-dokuwiki-20230404 into master
Reviewed-on: 
2024-02-21 20:14:22 +01:00
790b8a3f39 chore(deps): update bitnami/dokuwiki:20230404 docker digest to 91dbc4a 2024-02-21 20:14:08 +01:00
3ed60a4319 Merge pull request 'chore(deps): update dependency community.grafana to v1.8.0' () from renovate/community.grafana-1.x into master
Reviewed-on: 
2024-02-21 20:13:45 +01:00
78b03a5320 chore(deps): update dependency community.grafana to v1.8.0 2024-02-21 09:18:21 +00:00
5c0d179392 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.198.0' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-02-18 22:55:32 +01:00
ed1b8cc0c1 chore(deps): update renovate/renovate docker tag to v37.198.0 2024-02-18 19:19:08 +00:00
6ba0a982e0 Merge pull request 'chore(deps): update postgres docker tag to v16.2' () from renovate/postgres-16.x into master
Reviewed-on: 
2024-02-16 20:50:21 +01:00
4b9870f5d5 chore(deps): update postgres docker tag to v16.2 2024-02-16 20:49:48 +01:00
031cf6d28e Merge pull request 'chore(deps): update joseluisq/static-web-server docker tag to v2.27' () from renovate/joseluisq-static-web-server-2.x into master
Reviewed-on: 
2024-02-16 20:49:24 +01:00
8dccd53f44 chore(deps): update joseluisq/static-web-server docker tag to v2.27 2024-02-16 20:49:10 +01:00
3b94496d35 Merge pull request 'chore(deps): update grafana/grafana docker tag to v10.3.3' () from renovate/grafana-grafana-10.x into master
Reviewed-on: 
2024-02-16 20:48:24 +01:00
5ef38f2d66 chore(deps): update grafana/grafana docker tag to v10.3.3 2024-02-16 20:47:58 +01:00
412eda5764 Merge pull request 'chore(deps): update bitnami/rabbitmq docker tag to v3.12.13' () from renovate/bitnami-rabbitmq-3.x into master
Reviewed-on: 
2024-02-16 20:47:28 +01:00
e89c21282f chore(deps): update bitnami/rabbitmq docker tag to v3.12.13 2024-02-16 20:47:13 +01:00
139ee5500e Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.193.0' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-02-16 20:46:38 +01:00
cada9bac51 chore(deps): update renovate/renovate docker tag to v37.193.0 2024-02-16 20:46:15 +01:00
d6a1d875f6 Merge pull request 'chore(deps): update bitnami/dokuwiki:20230404 docker digest to d195188' () from renovate/bitnami-dokuwiki-20230404 into master
Reviewed-on: 
2024-02-16 20:45:37 +01:00
61bb75f50c chore(deps): update bitnami/dokuwiki:20230404 docker digest to d195188 2024-02-16 18:18:19 +00:00
306bfc24fc Merge pull request 'chore(deps): update bitnami/dokuwiki:20230404 docker digest to a8eb470' () from renovate/bitnami-dokuwiki-20230404 into master
Reviewed-on: 
2024-02-10 18:57:16 +01:00
4d85eeee8e chore(deps): update bitnami/dokuwiki:20230404 docker digest to a8eb470 2024-02-10 18:57:01 +01:00
d1feefd2e6 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.181.11' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-02-10 16:42:48 +01:00
eb2242407e chore(deps): update renovate/renovate docker tag to v37.181.11 2024-02-10 08:18:17 +00:00
4002a99ec4 Merge pull request 'chore(deps): update bitnami/dokuwiki:20230404 docker digest to aaee2ed' () from renovate/bitnami-dokuwiki-20230404 into master
Reviewed-on: 
2024-02-03 19:53:42 +01:00
9aef7ac868 chore(deps): update bitnami/dokuwiki:20230404 docker digest to aaee2ed 2024-02-03 19:53:31 +01:00
33a6c76e04 Merge pull request 'chore(deps): update jacobalberty/unifi docker tag to v8.0.28' () from renovate/jacobalberty-unifi-8.x into master
Reviewed-on: 
2024-02-03 19:53:02 +01:00
f0128df182 chore(deps): update jacobalberty/unifi docker tag to v8.0.28 2024-02-03 19:52:47 +01:00
02a33eb764 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.168.4' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-02-03 19:51:51 +01:00
d8a1d9b957 chore(deps): update renovate/renovate docker tag to v37.168.4 2024-02-03 13:18:22 +00:00
c30f7803a5 Merge pull request 'chore(deps): update codeberg.org/forgejo/forgejo docker tag to v1.21.5' () from renovate/codeberg.org-forgejo-forgejo-1.x into master
Reviewed-on: 
2024-01-31 20:50:41 +01:00
56d90da96e chore(deps): update codeberg.org/forgejo/forgejo docker tag to v1.21.5 2024-01-31 20:50:33 +01:00
fe7b568e6c Merge pull request 'chore(deps): update mrtux/grafana-screenshot docker tag to v0.1.1' () from renovate/mrtux-grafana-screenshot-0.x into master
Reviewed-on: 
2024-01-31 20:50:07 +01:00
24fa6a74bb chore(deps): update mrtux/grafana-screenshot docker tag to v0.1.1 2024-01-31 19:48:53 +00:00
d997534070 Merge pull request 'chore(deps): update dependency community.grafana to v1.7.0' () from renovate/community.grafana-1.x into master
Reviewed-on: 
Reviewed-by: Alexander Dahl <alex@netz39.de>
2024-01-28 00:17:01 +01:00
e8b3099e5e chore(deps): update dependency community.grafana to v1.7.0 2024-01-28 00:16:30 +01:00
f7c0910ede Merge pull request 'chore(deps): update bitnami/dokuwiki:20230404 docker digest to 95c012d' () from renovate/bitnami-dokuwiki-20230404 into master
Reviewed-on: 
2024-01-28 00:16:16 +01:00
78008cfd77 chore(deps): update bitnami/dokuwiki:20230404 docker digest to 95c012d 2024-01-28 00:16:05 +01:00
bb1268aa43 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.153.2' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-01-28 00:12:10 +01:00
0bc6f615a7 chore(deps): update renovate/renovate docker tag to v37.153.2 2024-01-27 12:23:20 +00:00
829f5ad70f Merge pull request 'chore(deps): update grafana/grafana docker tag to v10.3.1' () from renovate/grafana-grafana-10.x into master
Reviewed-on: 
2024-01-24 09:57:55 +01:00
34f85ccf99 chore(deps): update grafana/grafana docker tag to v10.3.1 2024-01-23 15:18:24 +00:00
73672a2df4 Merge pull request 'chore(deps): update joseluisq/static-web-server docker tag to v2.25' () from renovate/joseluisq-static-web-server-2.x into master
Reviewed-on: 
Reviewed-by: Alexander Dahl <alex@netz39.de>
2024-01-23 09:45:37 +01:00
ba936bee56 chore(deps): update joseluisq/static-web-server docker tag to v2.25 2024-01-23 00:18:18 +00:00
c6743d2ca6 Merge pull request 'chore(deps): update bitnami/dokuwiki:20230404 docker digest to 36d39f3' () from renovate/bitnami-dokuwiki-20230404 into master
Reviewed-on: 
2024-01-22 16:14:01 +01:00
e2e51b9e98 chore(deps): update bitnami/dokuwiki:20230404 docker digest to 36d39f3 2024-01-22 16:13:04 +01:00
66d60816f5 Merge pull request 'chore(deps): update renovate/renovate docker tag to v37.140.14' () from renovate/renovate-renovate-37.x into master
Reviewed-on: 
2024-01-20 17:23:31 +01:00
4da296b91b chore(deps): update renovate/renovate docker tag to v37.140.14 2024-01-20 14:18:20 +00:00
72 changed files with 647 additions and 420 deletions

View file

@ -2,4 +2,8 @@ Alexander Dahl <alex@netz39.de> <post@lespocky.de>
David Kilias <dkdent@netz39.de>
David Kilias <dkdent@netz39.de> <david.kilias@gmail.com>
Maximilian Grau <mg-95@t-online.de>
Maximilian Grau <mg-95@t-online.de> <mg-95@gitea.n39.eu>
Jens Winter-Hübenthal <jens.winter@gmail.com>
Jens Winter-Hübenthal <jens.winter@gmail.com> <jens.winter-huebenthal@bridgefield.de>
Stefan Haun <tux@netz39.de>
<timo@netz39.de> <n39@therr.de>

View file

@ -2,6 +2,7 @@
extends: default
rules:
comments-indentation: disable
line-length: disable
truthy:
allowed-values:

View file

@ -20,6 +20,9 @@ SSH_KEY=<absolute/path/to/ssh/private/key>
ansible-playbook setup-ssh.yml --ask-vault-pass -e "setup_ssh_logname=$LOGUSER" -e "setup_ssh_key=$SSH_KEY"
```
This playbook also adds `rhodium.n39.eu` (OpenWRT router), but our Ansible cannot set up SSH keys (yet).
Please [add your key to OpenWRT manually](https://openwrt.org/docs/guide-user/security/dropbear.public-key.auth#from_the_luci_web_interface).
## Edit vault encrypted vars files
```bash

View file

@ -0,0 +1 @@
asterisk ALL=(root) NOPASSWD: /usr/sbin/i2cget, /usr/sbin/i2cset

View file

@ -1,11 +1,13 @@
#!/bin/sh
PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games'
echo 'set PCM volume'
sudo amixer set "PCM" "70%"
echo 'start i2c-foo'
sudo modprobe i2c_dev
sudo modprobe i2c_bcm2708
echo 'starting log'
tmux new-session -s status -d 'sudo less /var/log/shuttercontrol.log'
cd /home/pi/netz39_rollladensteuerung/raspberry/shuttercontrol
cd /home/pi/netz39_rollladensteuerung/raspberry/shuttercontrol
echo 'switch-on.sh'
../switch-on.sh
cd /home/pi

19
files/wittgenstein/reboot.sh Executable file
View file

@ -0,0 +1,19 @@
#!/bin/sh
PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games'
echo 'switch-on.sh'
/home/pi/switch-on.sh
echo 'start i2c-foo'
sudo modprobe i2c_dev
sudo modprobe i2c_bcm2708
# wait for network devices
sleep 30
cd /home/pi
echo 'start ampel controller'
tmux new-session -s ampel -d 'cd /home/pi/netz39_space_notification/raspberry/ledcontrol && ./ledcontrol'
echo 'start lever controller'
tmux new-window -t ampel:1 'cd /home/pi/netz39_space_notification/raspberry/statusswitch && ./statusswitch'

View file

@ -0,0 +1,7 @@
#!/bin/bash
gpio write 2 0
gpio write 3 0
gpio mode 2 tri
gpio mode 3 tri

11
files/wittgenstein/switch-on.sh Executable file
View file

@ -0,0 +1,11 @@
#!/bin/bash
# INT
gpio mode 0 tri
# Power
gpio mode 2 out
gpio mode 3 out
gpio write 2 1
gpio write 3 1

7
files/wittgenstein/unstuck.sh Executable file
View file

@ -0,0 +1,7 @@
#!/bin/bash
logger -t unstuck "unstuck $(date)"
killall tmux
sleep 1
/home/pi/reboot.sh

View file

@ -1,34 +1,33 @@
---
# tasks for all hosts
- hosts: all
- name: Tasks for all hosts
hosts: all
become: true
vars:
ansible_python_interpreter: /usr/bin/python3
roles:
- role: ansible.timezone
- role: adriagalin.timezone
vars:
ag_timezone: "{{ timezone }}"
- role: users
tasks:
- name: Update and clean package cache
apt:
ansible.builtin.apt:
update_cache: true
cache_valid_time: 3600
autoclean: true
changed_when: false
- name: Ensure unattended-upgrades is installed and up to date
apt:
ansible.builtin.apt:
name: unattended-upgrades
state: present
- name: Setup unattended-upgrades
include_role:
name: hifis.unattended_upgrades
ansible.builtin.include_role:
name: hifis.toolkit.unattended_upgrades
vars:
unattended_origins_patterns:
- "origin=*"

View file

@ -1,15 +1,18 @@
---
- hosts: docker_host
- name: Tasks for docker hosts
hosts: docker_host
become: true
roles:
- role: docker_setup
- role: netz39.host_docker
- hosts: docker_host:&location_space
- name: Tasks for docker hosts at location space
hosts: docker_host:&location_space
become: true
roles:
- role: lespocky.telegraf_docker_in_docker
when: (ansible_architecture == "x86_64")
vars:
tdid_conf_dir: "/etc/telegraf"
tdid_influxdb_org: "{{ influxdb_org }}"

View file

@ -1,9 +1,10 @@
---
- hosts: k3s
- name: Tasks for kubernetes hosts
hosts: k3s
become: true
tasks:
- name: Ensure nfs-common is installed on k3s VMs
ansible.builtin.apt:
pkg: nfs-common
state: present
state: present

View file

@ -1,5 +1,6 @@
---
- hosts: proxmox
- name: Tasks for virtual machines on proxmox host
hosts: proxmox
become: true
tasks:

View file

@ -24,11 +24,6 @@ users:
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGmU7MfOFuc6z5Vbwh4CbBFSg19f8B9rUO2ITjgmEvkY alex@lemmy
sudo: yes
docker: yes
- logname: "kwasir"
viewname: "Peter Seidel"
email: "kwasir@netz39.de"
sudo: yes
docker: yes
- logname: "tux"
viewname: "Stefan Haun"
email: "tux@netz39.de"
@ -61,12 +56,23 @@ users:
ssh_pub:
- !unsafe >
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILKhKHCPibswu2p6UQHKsBSqGaXzMFM+oMX0XEWsxCIc timo@Space-Lap
- !unsafe >
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMJoS7nsLLzSAsZA4us2/7JaQhgRjj/BY+LOpDQnfy8u timo@mac
sudo: yes
docker: yes
- logname: "jens"
viewname: "Jens Winter-Hübenthal"
email: "jens.winter@gmail.com"
ssh_pub:
- !unsafe >
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIII4FS2sROKs2nIW8uzDuWmj8q127UoljtkVMthY8g// jens@work-lenovo
sudo: yes
docker: yes
# Data for DD24 dyndns updates
# Data for dyndns updates
dyndns_domain: "dyndns.n39.eu"
dyndns_password: "{{ vault_dyndns_password }}"
dyndns_token: "{{ vault_dyndns_token }}"
# Shared influxdb items
influxdb_org: "netz39"

View file

@ -1,7 +1,10 @@
$ANSIBLE_VAULT;1.1;AES256
34303066383937623831333466333965323161376134353838346235323662373164303163363734
3134626237346361656533636161363331666537633538380a613761643431356530343663626666
62646361316364333533316638646261373661633863363733366337373338336565366536386237
3138646266613837310a396139363830613463393861336161363533343362383462623265356563
31333862613937306463353130316365636634353862363039663762326263313366363530636631
3630653638333831303432316266633833643739643533353536
37306233306262383862373661626635346436316265663162343433303432653536376632316439
6336396564613232363337303266643965346333396331620a316536636666393461353633366466
39333362306166376462353739626139623835326461373834303330346538366637626363306438
3033376133373330330a356236396366643938323666663836643738386337373362323933623838
30316663646134623232336563343562393037363463303739626464633461323539306261316638
61343330626263393065636230303632663965653939373437386561656539646533653661613236
35326334313232633738633933653939383830636361373938373864643133363539623734646435
32336630613231353337336466646164373734386539653936313865316336616264373061633139
3839

View file

@ -1,2 +1,3 @@
---
docker_data_root: "/srv/docker"
docker_image_prune: true

View file

@ -1,5 +1,6 @@
---
- hosts: beaker.n39.eu
- name: Setup things on host 'beaker' (proxmox server im space)
hosts: beaker.n39.eu
become: true
vars:
@ -9,7 +10,7 @@
tasks:
- name: enable proxmox gui login for admin users
- name: Enable proxmox gui login for admin users
ansible.builtin.lineinfile:
path: /etc/pve/user.cfg
regexp: "^user:{{ item.logname }}@pam"
@ -18,11 +19,10 @@
state: present
loop: "{{ users }}"
- name: configure proxmox admin group
- name: Configure proxmox admin group
ansible.builtin.lineinfile:
path: /etc/pve/user.cfg
regexp: "^group:Admins:"
# group:Admins:kwasir@pam,lespocky@pam,tux@pam::
line: "group:Admins:{{ users | map(attribute = 'logname') | join(\"@pam,\") }}@pam::"
line: "group:Admins:{{ users | map(attribute='logname') | join(\"@pam,\") }}@pam::"
handlers:

View file

@ -1,5 +1,6 @@
---
- hosts: hobbes.n39.eu
- name: Setup things on host 'hobbes' (raspberry pi for kiosk screen)
hosts: hobbes.n39.eu
become: true
vars:

View file

@ -1,5 +1,6 @@
---
- hosts: holmium.n39.eu
- name: Setup things on host 'holmium' (http ingress vm)
hosts: holmium.n39.eu
become: true
vars:

View file

@ -1,5 +1,6 @@
---
- hosts: krypton.n39.eu
- name: Setup things on host 'krypton' (ldap vm)
hosts: krypton.n39.eu
become: true
vars:
@ -19,26 +20,26 @@
roles:
# role 'docker_setup' applied through group 'docker_host'
# role 'netz39.host_docker' applied through group 'docker_host'
- role: apache
- role: apache_letsencrypt # Uses configuration from dehydrated setup
- role: ansible-role-dehydrated
- role: 24367dfa.dehydrated
vars:
dehydrated_contact_email: "{{ server_admin }}"
dehydrated_domains:
- name: entities-validation.svc.n39.eu
- role: ansible-role-dehydrated_cron
- role: penguineer.dehydrated_cron
tasks:
# - name: Setup dehydrated challenge endpoint for {{ openldap_domain }}
# include_role:
# ansible.builtin.include_role:
# name: setup-http-dehydrated
# vars:
# site_name: "{{ openldap_domain }}"
- name: Ensure openLDAP directories are present.
file:
ansible.builtin.file:
path: "{{ item.path }}"
mode: "0755"
state: directory
@ -49,7 +50,7 @@
- path: "{{ dehydrated_certs_dir }}/{{ openldap_domain }}"
- name: Ensure container for openLDAP is running.
docker_container:
community.docker.docker_container:
name: openLDAP
image: osixia/openldap:1.5.0
detach: yes
@ -98,9 +99,9 @@
rule: allow
port: '389'
proto: tcp
from: "{{ item }}"
from: "{{ item }}"
comment: LDAP Docker Access
loop: "{{ docker_ip_ranges }}"
loop: "{{ docker_ip_ranges }}"
- name: Allow access to openLDAP from local docker container [2/2]
become: true
@ -108,15 +109,15 @@
rule: allow
port: '636'
proto: tcp
from: "{{ item }}"
from: "{{ item }}"
comment: LDAP Docker Access
loop: "{{ docker_ip_ranges }}"
loop: "{{ docker_ip_ranges }}"
- name: Ensure container for entities validation service is running
docker_container:
community.docker.docker_container:
name: entities_validation_svc
image: netz39/entities_validation_svc:v1.0.0
image: netz39/entities_validation_svc:v1.0.4
pull: true
state: started
detach: yes
@ -127,7 +128,7 @@
TZ: "{{ timezone }}"
- name: Setup proxy site entities-validation.svc.n39.eu
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: entities-validation.svc.n39.eu

View file

@ -1,5 +1,6 @@
---
- hosts: oganesson.n39.eu
- name: Setup things on host 'oganesson' (ssh jump host vm)
hosts: oganesson.n39.eu
become: true
vars:

View file

@ -1,12 +1,13 @@
---
- hosts: platon.n39.eu
- name: Setup things on host 'platon' (raspberry pi for entrance door)
hosts: platon.n39.eu
become: true
vars:
ansible_python_interpreter: /usr/bin/python3
door_open_command: '/home/pi/sesame-open.sh'
ble_keykeeper_dir: '/home/pi/netz39_ble_keykeeper'
roles:
- role: ble-keykeeper-role
- role: maz3max.ble_keykeeper
vars:
ble_keykeeper_user: "{{ gatekeeper_user }}"
ble_keykeeper_group: "{{ gatekeeper_user }}"
@ -63,7 +64,7 @@
owner: root
group: root
mode: '0644'
notify: restart mosquitto
notify: Restart mosquitto service
### Sesam for SSH access
@ -141,7 +142,7 @@
mode: "0644"
register: wiringPi_copy
- name: Install wiringPi library # noqa 503
- name: Install wiringPi library # noqa: no-handler
ansible.builtin.apt:
state: present
deb: "/home/{{ gatekeeper_user }}/wiringpi-latest.deb"
@ -245,7 +246,7 @@
owner: root
group: root
mode: "0644"
notify: restart rsyslog
notify: Restart rsyslog
### Asterisk
@ -258,7 +259,7 @@
owner: root
group: root
mode: "0644"
notify: restart asterisk
notify: Restart asterisk
- name: Set up extensions for asterisk
# This uses the variables gatekeeper_user and door_open_command
@ -268,14 +269,25 @@
owner: root
group: root
mode: "0644"
notify: restart asterisk
notify: Restart asterisk
- name: Ensure asterisk is in the right groups
ansible.builtin.user:
name: asterisk
groups: audio,i2c,gpio
append: yes
notify: restart asterisk
notify: Restart asterisk
# Asterisk now executes shell scripts with reduced privileges, so we need to
# use sudo for I2C access.
- name: Set up sudo configuration for Asterisk I2C access
ansible.builtin.copy:
src: "files/platon/11_asterisk_i2c"
dest: "/etc/sudoers.d/"
owner: root
group: root
mode: "0644"
# Asterisk restart is not necessary
- name: Copy sounds
ansible.builtin.copy:
@ -293,20 +305,20 @@
handlers:
- name: restart mosquitto
service:
- name: Restart mosquitto service
ansible.builtin.service:
name: mosquitto
state: restarted
enabled: yes
- name: restart rsyslog
service:
- name: Restart rsyslog
ansible.builtin.service:
name: rsyslog
state: restarted
enabled: yes
- name: restart asterisk
service:
- name: Restart asterisk
ansible.builtin.service:
name: asterisk
state: restarted
enabled: yes

View file

@ -1,9 +1,10 @@
---
- hosts: plumbum.n39.eu
- name: Setup things on host 'plumbum' (nfs server)
hosts: plumbum.n39.eu
become: true
roles:
- role: nfs-host
- role: nfs_host
vars:
nfs_host_exports:
- directory: "/srv/nfs/backup"

View file

@ -1,12 +1,13 @@
---
- hosts: pottwal.n39.eu
- name: Setup things on host 'pottwal' (the big docker container host)
hosts: pottwal.n39.eu
become: true
roles:
# role 'docker_setup' applied through group 'docker_host'
# role 'netz39.host_docker' applied through group 'docker_host'
- role: apache
- role: apache_letsencrypt # Uses configuration from dehydrated setup
- role: ansible-role-dehydrated
- role: 24367dfa.dehydrated
vars:
dehydrated_contact_email: "{{ server_admin }}"
dehydrated_domains:
@ -25,9 +26,11 @@
- name: "{{ grafana_domain_name }}"
- name: "{{ homebox_domain_name }}"
- name: spaceapi.n39.eu
- role: ansible-role-dehydrated_cron
- role: penguineer.dehydrated_cron
- role: dd24_dyndns_cron
# variables are set in the inventory
- role: desec_dyndns_cron
# variables are set in the inventory
- role: cleanuri
vars:
cleanuri_ui_domain: uritools.n39.eu
@ -52,7 +55,7 @@
# If port 2222 is changed here, it must also be adapted
# in the forgejo config file (see application volume)!!
- name: Setup the docker container for forgejo
docker_container:
community.docker.docker_container:
name: forgejo
image: "{{ forgejo_image }}"
pull: true
@ -78,7 +81,7 @@
tags: ["forgejo"]
- name: Setup proxy site "{{ forgejo_domain_name }}"
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "{{ forgejo_domain_name }}"
@ -86,7 +89,7 @@
tags: ["forgejo"]
- name: Ensure apt-cacher container is running
docker_container:
community.docker.docker_container:
name: apt_cacher_ng
image: mrtux/apt-cacher-ng:latest
pull: true
@ -99,7 +102,7 @@
TZ: "{{ timezone }}"
- name: Setup docker network
docker_network:
community.docker.docker_network:
name: shlinknet
state: present
internal: true
@ -115,9 +118,9 @@
- shlink
- name: Ensure shlink database container is running
docker_container:
community.docker.docker_container:
name: shlinkdb
image: postgres:16.1-alpine
image: postgres:16.8-alpine
pull: true
state: started
restart_policy: unless-stopped
@ -135,7 +138,7 @@
- shlink
- name: Ensure container for shlink is running
docker_container:
community.docker.docker_container:
name: shlink
image: "{{ shlink_image }}"
pull: true
@ -147,7 +150,6 @@
env:
TZ: "{{ timezone }}"
DEFAULT_DOMAIN: "{{ shlink_domain_name }}"
GEOLITE_LICENSE_KEY: "{{ shlink_geolite_license_key }}"
INITIAL_API_KEY: "{{ shlink_initial_api_key }}"
DB_DRIVER: "postgres"
DB_HOST: shlinkdb
@ -165,7 +167,7 @@
- shlink
- name: Setup proxy site {{ shlink_domain_name }}
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "{{ shlink_domain_name }}"
@ -182,7 +184,7 @@
msg: "prosody data dir is missing, please restore from the backup!"
when: not prosody_dir.stat.exists
- name: Ensure prosody config dir exists
- name: Ensure prosody main config dir exists
ansible.builtin.file:
path: "{{ prosody_config_dir }}"
state: directory
@ -202,7 +204,7 @@
state: directory
mode: 0755
- name: Ensure prosody certs dir exists
- name: Ensure prosody conf.d dir exists
ansible.builtin.file:
path: "{{ prosody_config_dir }}/conf.d"
state: directory
@ -233,7 +235,7 @@
- Restart prosody
- name: Ensure container for prosody XMPP server is running
docker_container:
community.docker.docker_container:
name: prosody
image: "{{ prosody_image }}"
pull: true
@ -255,7 +257,7 @@
- name: Ensure container for static XMPP website is running
docker_container:
community.docker.docker_container:
name: jabber-static-website
image: "{{ prosody_web_image }}"
pull: true
@ -270,14 +272,18 @@
- "127.0.0.1:{{ jabber_host_port }}:80"
volumes:
- "{{ prosody_data_dir }}/var/www:/public:ro"
tags:
- prosody-web
- name: Setup proxy site {{ prosody_domain_name }}
# point to static website for now
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "{{ prosody_domain_name }}"
proxy_port: "{{ jabber_host_port }}"
tags:
- prosody-web
- name: Check if hedgedoc data dir exists
ansible.builtin.stat:
@ -293,7 +299,7 @@
- hedgedoc
- name: Ensure the hedgedoc directories exist
file:
ansible.builtin.file:
path: "{{ item.path }}"
mode: "{{ item.mode }}"
state: directory
@ -306,7 +312,7 @@
- hedgedoc
- name: Setup docker network
docker_network:
community.docker.docker_network:
name: hedgedocnet
state: present
internal: true
@ -314,7 +320,7 @@
- hedgedoc
- name: Install HedgeDoc database container
docker_container:
community.docker.docker_container:
name: hedgedocdb
image: "{{ hedgedoc_db_image }}"
pull: true
@ -334,7 +340,7 @@
- hedgedoc
- name: Ensure container for hedgedoc is running
docker_container:
community.docker.docker_container:
name: hedgedoc
image: "{{ hedgedoc_image }}"
pull: true
@ -366,7 +372,7 @@
- hedgedoc
- name: Setup proxy site "{{ hedgedoc_domain_name }}"
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "{{ hedgedoc_domain_name }}"
@ -375,7 +381,7 @@
- hedgedoc
- name: Ensure the influxdb directories exist
file:
ansible.builtin.file:
path: "{{ item }}"
mode: 0700
state: directory
@ -385,7 +391,7 @@
- "{{ data_dir }}/influxdb/cfg"
- name: Ensure container for influxdb is running
docker_container:
community.docker.docker_container:
name: influxdb
image: "{{ influxdb_image }}"
pull: true
@ -405,7 +411,7 @@
- "{{ data_dir }}/influxdb/cfg:/etc/influxdb2"
- name: Setup proxy site {{ influxdb_domain_name }}
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "{{ influxdb_domain_name }}"
@ -430,7 +436,7 @@
- redmine
- name: Setup Redmine docker network
docker_network:
community.docker.docker_network:
name: redminenet
state: present
internal: true
@ -438,7 +444,7 @@
- redmine
- name: Setup Redmine MySQL container
docker_container:
community.docker.docker_container:
name: redminedb
image: "{{ redmine_mysql_image }}"
pull: true
@ -451,13 +457,14 @@
MYSQL_DATABASE: "{{ redmine_database }}"
volumes:
- "{{ data_dir }}/redmine/mysql:/var/lib/mysql"
- "{{ data_dir }}/redmine/mysql-config:/etc/mysql/conf.d"
networks:
- name: redminenet
tags:
- redmine
- name: Setup Redmine container
docker_container:
community.docker.docker_container:
name: redmine
image: "{{ redmine_image }}"
pull: true
@ -483,7 +490,7 @@
- redmine
- name: Setup proxy site "{{ redmine_domain_name }}"
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "{{ redmine_domain_name }}"
@ -492,7 +499,7 @@
- redmine
- name: Ensure the uptime-kuma directories exist
file:
ansible.builtin.file:
path: "{{ item }}"
mode: "0755"
state: directory
@ -502,7 +509,7 @@
- uptimekuma
- name: Ensure container for uptime-kuma is running
docker_container:
community.docker.docker_container:
name: uptime-kuma
image: "{{ uptimekuma_image }}"
pull: true
@ -519,7 +526,7 @@
- uptimekuma
- name: Setup proxy site "{{ uptimekuma_domain_name }}"
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "{{ uptimekuma_domain_name }}"
@ -528,7 +535,7 @@
- uptimekuma
- name: Ensure the grafana directories exist
file:
ansible.builtin.file:
path: "{{ item.path }}"
owner: "{{ item.owner | default('root') }}"
mode: "{{ item.mode }}"
@ -545,7 +552,7 @@
- grafana
- name: Ensure container for grafana is running
docker_container:
community.docker.docker_container:
name: grafana
image: "{{ grafana_image }}"
pull: true
@ -566,7 +573,7 @@
- grafana
- name: Setup proxy site "{{ grafana_domain_name }}"
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "{{ grafana_domain_name }}"
@ -576,7 +583,7 @@
- grafana
- name: Ensure the homebox directories exist
file:
ansible.builtin.file:
path: "{{ item.path }}"
owner: "{{ item.owner | default('root') }}"
mode: "{{ item.mode }}"
@ -590,7 +597,7 @@
- homebox
- name: Ensure container for homebox is running
docker_container:
community.docker.docker_container:
name: homebox
image: "{{ homebox_image }}"
pull: true
@ -610,7 +617,7 @@
- homebox
- name: Setup proxy site {{ homebox_domain_name }}
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "{{ homebox_domain_name }}"
@ -620,7 +627,7 @@
- homebox
- name: Setup proxy site spaceapi.n39.eu
template:
ansible.builtin.template:
src: templates/pottwal/spaceapi-apache-site.j2
dest: /etc/apache2/sites-available/spaceapi.n39.eu.conf
mode: "0644"
@ -628,13 +635,16 @@
site_name: "spaceapi.n39.eu"
proxy_preserve_host: "On"
notify: Restart apache2
tags:
- spaceapi
# Renovate configuration is sourced from `renovate.json` in each repository
- name: Ensure renovate bot cronjob is present
ansible.builtin.template:
src: templates/pottwal/renovate-cron.j2
dest: /etc/cron.hourly/renovate-bot
mode: "0700"
notify: reload cron
notify: Reload cron
tags:
- renovate
@ -646,14 +656,14 @@
restart: yes
- name: Restart apache2
service:
ansible.builtin.service:
name: apache2
state: restarted
- name: reload cron
- name: Reload cron
ansible.builtin.shell:
cmd: service cron reload
# Use the shell call because the task sometimes has problems finding the service state
# service:
# ansible.builtin.service:
# name: cron
# state: restarted

View file

@ -1,5 +1,6 @@
---
- hosts: radon.n39.eu
- name: Setup things on host 'radon' (services for space automation)
hosts: radon.n39.eu
become: true
vars:
@ -7,13 +8,13 @@
data_dir: "/srv/data"
mosquitto_image: eclipse-mosquitto:2.0.18
mosquitto_image: eclipse-mosquitto:2.0.21
mosquitto_data: "{{ data_dir }}/mosquitto"
nodered_image: nodered/node-red:3.0.1-1-18
nodered_data: "{{ data_dir }}/nodered"
rabbitmq_image: bitnami/rabbitmq:3.12.12
rabbitmq_image: bitnami/rabbitmq:4.0.7
rabbitmq_data: "{{ data_dir }}/rabbitmq"
pwr_meter_pulse_gw_image: netz39/power-meter-pulse-gateway:0.3.0
@ -21,10 +22,10 @@
brotherql_host_port: 9004
roles:
# role 'docker_setup' applied through group 'docker_host'
# role 'netz39.host_docker' applied through group 'docker_host'
- role: apache
- role: apache_letsencrypt # Uses configuration from dehydrated setup
- role: ansible-role-dehydrated
- role: 24367dfa.dehydrated
vars:
dehydrated_contact_email: "{{ server_admin }}"
dehydrated_domains:
@ -32,12 +33,12 @@
- name: rabbitmq.n39.eu
- name: pwr-meter-pulse-gw-19i.svc.n39.eu
- name: labelprinter.n39.eu
- role: ansible-role-dehydrated_cron
- role: penguineer.dehydrated_cron
tasks:
- name: Ensure the mosquitto directories exist
file:
ansible.builtin.file:
path: "{{ item }}"
mode: 0755
state: directory
@ -49,16 +50,16 @@
- mosquitto
- name: Make sure mosquitto config is there
template:
ansible.builtin.template:
src: "templates/mosquitto.conf.j2"
dest: "{{ mosquitto_data }}/config/mosquitto.conf"
mode: 0644
notify: restart mosquitto
notify: Restart mosquitto container
tags:
- mosquitto
- name: Ensure mosquitto is running
docker_container:
community.docker.docker_container:
name: mosquitto
image: "{{ mosquitto_image }}"
pull: true
@ -88,7 +89,7 @@
when: not nodered_dir.stat.exists
- name: Ensure nodered is running
docker_container:
community.docker.docker_container:
name: nodered
image: "{{ nodered_image }}"
pull: true
@ -108,7 +109,7 @@
restart_policy: unless-stopped
- name: Setup proxy site nodered.n39.eu
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "nodered.n39.eu"
@ -129,7 +130,7 @@
- rabbitmq
- name: Ensure rabbitmq docker container is running
docker_container:
community.docker.docker_container:
name: rabbitmq
image: "{{ rabbitmq_image }}"
ports:
@ -150,7 +151,7 @@
- rabbitmq
- name: Setup proxy site rabbitmq.n39.eu
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "rabbitmq.n39.eu"
@ -159,7 +160,7 @@
- rabbitmq
- name: Ensure Power Meter Pulse Gateway for 19i room is running
docker_container:
community.docker.docker_container:
name: pwr-meter-pulse-gw-19i
image: "{{ pwr_meter_pulse_gw_image }}"
ports:
@ -177,7 +178,7 @@
restart_policy: unless-stopped
- name: Setup proxy site pwr-meter-pulse-gw-19i.svc.n39.eu
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "pwr-meter-pulse-gw-19i.svc.n39.eu"
@ -185,9 +186,9 @@
- name: Setup docker container for BrotherQL Web UI printer
docker_container:
community.docker.docker_container:
name: brotherql-web
image: dersimn/brother_ql_web:2.1.7-alpine
image: dersimn/brother_ql_web:2.1.9-alpine
pull: true
restart_policy: unless-stopped
state: started
@ -201,7 +202,7 @@
- labelprinter
- name: Setup proxy site labelprinter.n39.eu
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: labelprinter.n39.eu
@ -210,9 +211,9 @@
- labelprinter
- name: Setup docker container for Grafana Screenshots
docker_container:
community.docker.docker_container:
name: grafana-screenshot
image: mrtux/grafana-screenshot:0.1.0
image: mrtux/grafana-screenshot:0.1.3
pull: true
restart_policy: unless-stopped
detach: yes
@ -226,8 +227,8 @@
- grafana-screenshot
handlers:
- name: restart mosquitto
docker_container:
- name: Restart mosquitto container
community.docker.docker_container:
name: mosquitto
state: started
restart: yes

View file

@ -1,5 +1,6 @@
---
- hosts: tau.netz39.de
- name: Setup things on host 'tau' (vserver for wiki etc.)
hosts: tau.netz39.de
become: true
vars:
@ -14,18 +15,18 @@
dokuwiki_port: 9005
# This container is pinned, because there are issues
# with backwards compatibility within the same tag!
dokuwiki_image: bitnami/dokuwiki:20230404@sha256:37e5b6e946851fc1fbd0f37a11e4521fdaca7da698d461da5207168c7364c142
dokuwiki_image: bitnami/dokuwiki:20240206.1.0
discord_invite_domain: discord.netz39.de
roles:
# role 'docker_setup' applied through group 'docker_host'
# role 'netz39.host_docker' applied through group 'docker_host'
- role: apache
- role: ansible-role-dehydrated_cron
- role: penguineer.dehydrated_cron
tasks:
- name: Setup docker network
docker_network:
community.docker.docker_network:
name: dockernet
driver: bridge
ipam_config:
@ -34,8 +35,8 @@
state: present
- name: Setup Dehydrated
include_role:
name: ansible-role-dehydrated
ansible.builtin.include_role:
name: 24367dfa.dehydrated
vars:
dehydrated_contact_email: "{{ server_admin }}"
dehydrated_domains:
@ -51,14 +52,14 @@
deploy_challenge_hook: "/bin/systemctl restart apache2"
- name: Setup proxy site testredmine.netz39.de
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: testredmine.netz39.de
proxy_port: 9004
- name: Setup phpmyadmin
docker_container:
community.docker.docker_container:
name: phpmyadmin
state: started
image: phpmyadmin:5.2
@ -75,7 +76,7 @@
- 9001:80
- name: Setup proxy site mysql.adm.netz39.de
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: mysql.adm.netz39.de
@ -85,20 +86,20 @@
- name: Check if Docker Registry auth dir exists
ansible.builtin.stat:
path: "{{ data_dir }}/registry/auth"
register: docker_dir
- name: Fail if docker registry data dir does not exist
register: docker_registry_auth_dir
- name: Fail if Docker Registry auth dir does not exist
ansible.builtin.fail:
msg: "Docker Registry auth dir is missing, please restore from the backup!"
when: not docker_dir.stat.exists
when: not docker_registry_auth_dir.stat.exists
- name: Ensure the Docker Registry data directory exists
# This may not be part of the backup
file:
ansible.builtin.file:
path: "{{ data_dir }}/registry/data"
state: directory
mode: "0755"
- name: Setup Docker Registry Container
docker_container:
community.docker.docker_container:
name: registry
image: registry:2
pull: true
@ -117,7 +118,7 @@
- "{{ data_dir }}/registry/auth:/auth:rw"
- name: Setup proxy site for the Docker Registry
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "{{ docker_registry_domain }}"
@ -146,7 +147,7 @@
- dokuwiki
- name: Setup Dokuwiki Container
docker_container:
community.docker.docker_container:
name: dokuwiki
image: "{{ dokuwiki_image }}"
pull: true
@ -165,7 +166,7 @@
- dokuwiki
- name: Setup proxy site for Dokuwiki
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "{{ dokuwiki_domain }}"
@ -175,7 +176,7 @@
- name: Setup container for secondary FFMD DNS
docker_container:
community.docker.docker_container:
name: bind9-md-freifunk-net
image: ffmd/bind9-md-freifunk-net:v2022122301
pull: true
@ -190,8 +191,8 @@
- ffmd-dns
- name: Setup forwarding for Discord invite
include_role:
name: setup-http-site-forward
ansible.builtin.include_role:
name: setup_http_site_forward
vars:
site_name: "{{ discord_invite_domain }}"
# forward_to: "https://discord.com/invite/8FcDvAf"

View file

@ -1,19 +1,20 @@
---
# this is for a dedicated vm just hosting the unifi controller.
- hosts: unicorn.n39.eu
- name: Setup things on host 'unicorn' (vm for ubiquiti unifi controller)
hosts: unicorn.n39.eu
become: true
vars:
ansible_python_interpreter: /usr/bin/python3
data_dir: "/srv/data"
roles:
# role 'docker_setup' applied through group 'docker_host'
# role 'netz39.host_docker' applied through group 'docker_host'
tasks:
- name: Setup the docker container for unifi-controller
docker_container:
community.docker.docker_container:
name: unifi-controller
image: jacobalberty/unifi:v8.0.26
image: jacobalberty/unifi:v9.0.114
state: started
restart_policy: unless-stopped
container_default_behavior: no_defaults
@ -22,13 +23,13 @@
# These fixed ports are needed.
# https://help.ui.com/hc/en-us/articles/218506997-UniFi-Ports-Used
ports:
- "8080:8080/tcp" # Device command/control
- "8443:8443/tcp" # Web interface + API
- "8843:8843/tcp" # HTTPS portal
- "8880:8880/tcp" # HTTP portal
- "3478:3478/udp" # STUN service
- "6789:6789/tcp" # Speed Test (unifi5 only)
- "10001:10001/udp" # Used for device discovery.
- "8080:8080/tcp" # Device command/control
- "8443:8443/tcp" # Web interface + API
- "8843:8843/tcp" # HTTPS portal
- "8880:8880/tcp" # HTTP portal
- "3478:3478/udp" # STUN service
- "6789:6789/tcp" # Speed Test (unifi5 only)
- "10001:10001/udp" # Used for device discovery.
volumes:
- "{{ data_dir }}/unifi-controller/data:/unifi/data"
- "{{ data_dir }}/unifi-controller/log:/unifi/log"

170
host-wittgenstein.yml Normal file
View file

@ -0,0 +1,170 @@
---
- name: Setup things on host 'wittgenstein' (raspberry pi for ampel and spaceapi)
hosts: wittgenstein.n39.eu
become: true
roles:
- role: apache
- role: apache_letsencrypt # Uses configuration from dehydrated setup
- role: 24367dfa.dehydrated
vars:
dehydrated_contact_email: "{{ server_admin }}"
- role: penguineer.dehydrated_cron
tasks:
- name: Install packages needed for the system
# This is a list of all packages,
# unless they are installed by a specific role
ansible.builtin.apt:
state: present
name:
# This is needed for the user-executed tasks
- acl
# Regular packages
- tmux
- git-core
- cmake
- build-essential
- libmosquitto-dev
- libconfig-dev
- mosquitto-clients
- python3-paho-mqtt
- i2c-tools
- name: Set MAC address for proper DHCP recognition
# Uses mac variable from inventory
ansible.builtin.template:
src: templates/network-interfaces-dhcp-mac.j2
dest: /etc/network/interfaces.d/wittgenstein-mac
owner: root
group: root
mode: '0644'
- name: Disable IPv6
# Because it is not working....
ansible.builtin.copy:
src: files/sysctl-no-ipv6.conf
dest: /etc/sysctl.d/99-systcl-no-ipv6.conf
owner: root
group: root
mode: '0644'
### Gatekeeper user (pi for now)
#
# All the gatekeeping / door control stuff is here!
- name: Ensure gatekeeper user is there
ansible.builtin.user:
name: "{{ gatekeeper_user }}"
groups: dialout,audio,plugdev,input,netdev,i2c,gpio
append: yes
- name: Copy management scripts
ansible.builtin.copy:
src: "files/wittgenstein/{{ item }}"
dest: "/home/{{ gatekeeper_user }}/{{ item }}"
owner: "{{ gatekeeper_user }}"
group: "{{ gatekeeper_user }}"
mode: "0750"
loop:
- reboot.sh
- unstuck.sh
- switch-on.sh
- switch-off.sh
- name: Install start-up cron
ansible.builtin.cron:
name: Start the gatekeeper services
job: "/home/{{ gatekeeper_user }}/reboot.sh"
user: "{{ gatekeeper_user }}"
special_time: reboot
- name: Download wiringPi library
# WiringPi needs to be installed, but that library seems to be
# obsolete. We download something and hope it works...
ansible.builtin.get_url:
url: https://project-downloads.drogon.net/wiringpi-latest.deb
dest: "/home/{{ gatekeeper_user }}/wiringpi-latest.deb"
mode: "0644"
force: no
register: wiringPi_download
- name: Install wiringPi library # noqa: no-handler
ansible.builtin.apt:
state: present
deb: "/home/{{ gatekeeper_user }}/wiringpi-latest.deb"
when: wiringPi_download.changed
### Ampelsteuerung
- name: Clone netz39_space_notification initial checkout
# Do this as the gatekeeper user!
become: yes
become_user: "{{ gatekeeper_user }}"
ansible.builtin.git:
repo: https://github.com/netz39/space_notification.git
dest: "/home/{{ gatekeeper_user }}/netz39_space_notification"
clone: yes
update: no
- name: Compile ledcontrol agent
# Do this as the gatekeeper user!
become: yes
become_user: "{{ gatekeeper_user }}"
ansible.builtin.shell:
chdir: "/home/{{ gatekeeper_user }}/netz39_space_notification/raspberry/ledcontrol"
cmd: make
creates: "/home/{{ gatekeeper_user }}/netz39_space_notification/raspberry/ledcontrol/ledcontrol"
- name: Compile statusswitch agent
# Do this as the gatekeeper user!
become: yes
become_user: "{{ gatekeeper_user }}"
ansible.builtin.shell:
chdir: "/home/{{ gatekeeper_user }}/netz39_space_notification/raspberry/statusswitch"
cmd: make
creates: "/home/{{ gatekeeper_user }}/netz39_space_notification/raspberry/statusswitch/statusswitch"
### Space API
- name: Setup the SpaceAPI Docker container
community.docker.docker_container:
name: spaceapi
image: "{{ spaceapi_image }}"
pull: true
state: started
detach: yes
restart_policy: unless-stopped
ports:
- "0.0.0.0:{{ spaceapi_host_port }}:8080" # Must be reached by pottwal
# - "127.0.0.1:{{ spaceapi_host_port }}:8080"
env:
TZ: "{{ timezone }}"
MQTT_BROKER: "platon.n39.eu"
MQTT_TOPIC_STATUS: "{{ spaceapi_topic_status }}"
MQTT_TOPIC_LASTCHANGE: "{{ spaceapi_topic_lastchange }}"
tags:
- spaceapi
- name: Setup the Ampel Controller Docker container
community.docker.docker_container:
name: ampelcontroller
image: "{{ ampelcontroller_image }}"
pull: true
state: started
detach: yes
restart_policy: unless-stopped
env:
TZ: "{{ timezone }}"
MQTT_BROKER: "platon.n39.eu"
MQTT_LEVER_STATE_TOPIC: "{{ topic_lever_state }}"
MQTT_DOOR_EVENTS_TOPIC: "{{ topic_door_events }}"
MQTT_SPACESTATUS_ISOPEN_TOPIC: "{{ spaceapi_topic_status }}"
MQTT_SPACESTATUS_LASTCHANGE_TOPIC: "{{ spaceapi_topic_lastchange }}"
MQTT_TRAFFIC_LIGHT_TOPIC: "{{ topic_traffic_light }}"
tags:
- spaceapi
handlers:

View file

@ -12,25 +12,24 @@ cleanuri_amqp_vhost: "/cleanuri"
forgejo_host_port: 9091
forgejo_ssh_port: 2222
forgejo_domain_name: git.n39.eu
forgejo_image: codeberg.org/forgejo/forgejo:1.21.4-0
forgejo_image: codeberg.org/forgejo/forgejo:10.0.3
shlink_host_port: 8083
shlink_domain_name: sl.n39.eu
shlink_image: shlinkio/shlink:3.7.3
shlink_geolite_license_key: "{{ vault_shlink_geolite_license_key }}"
shlink_image: shlinkio/shlink:4.4.6
shlink_initial_api_key: "{{ vault_shlink_initial_api_key }}"
shlink_postgres_password: "{{ vault_shlink_postgres_password }}"
hedgedoc_host_port: 8084
hedgedoc_domain_name: pad.n39.eu
hedgedoc_image: quay.io/hedgedoc/hedgedoc:1.9.9
hedgedoc_db_image: postgres:16.1-alpine
hedgedoc_image: quay.io/hedgedoc/hedgedoc:1.10.2
hedgedoc_db_image: postgres:16.8-alpine
hedgedoc_postgres_password: "{{ vault_hedgedoc_postgres_password }}"
redmine_host_port: 8087
redmine_domain_name: redmine.n39.eu
redmine_image: redmine:5.1.1
redmine_mysql_image: mysql:8.3
redmine_image: redmine:6.0.4
redmine_mysql_image: mysql:9.2
redmine_database: redmine
redmine_database_password: "{{ vault_redmine_database_password }}"
@ -43,24 +42,24 @@ influxdb_init_password: "{{ vault_influxdb_init_password }}"
jabber_host_port: 8086
prosody_domain_name: jabber.n39.eu
prosody_image: netz39/prosody:0.11
prosody_web_image: joseluisq/static-web-server:2.24
prosody_web_image: joseluisq/static-web-server:2.36
prosody_config_dir: "/etc/prosody"
prosody_data_dir: "{{ data_dir }}/prosody"
uptimekuma_host_port: 8085
uptimekuma_domain_name: uptime.n39.eu
uptimekuma_image: louislam/uptime-kuma:1.23.11
uptimekuma_image: louislam/uptime-kuma:1.23.16
grafana_host_port: 8089
grafana_domain_name: grafana.n39.eu
grafana_image: grafana/grafana:10.2.3
grafana_image: grafana/grafana:11.6.0
grafana_admin_password: "{{ vault_grafana_admin_password }}"
homebox_host_port: 8092
homebox_domain_name: inventory.n39.eu
homebox_image: ghcr.io/hay-kot/homebox:v0.10.3
renovate_image: renovate/renovate:37.107.0
renovate_image: renovate/renovate:39.220.1
renovate_forgejo_pat: "{{ vault_renovate_forgejo_pat }}"
renovate_github_pat: "{{ vault_renovate_github_pat }}"
renovate_git_user: "Renovate Bot <accounts+renovatebot@netz39.de>"
renovate_git_user: "Renovate Bot <accounts+renovatebot@netz39.de>"

View file

@ -1,35 +1,33 @@
$ANSIBLE_VAULT;1.1;AES256
33383365663237393662386363396661323463396239653830396164316538323362376337326233
3730346439376362396261333165616536616135366637660a323435346262353061323130303362
66656533633333346536653638303463386334306461313830383631323331343332376435636631
6662323136306538370a616563376364373737396134616161356134636663613262366234306530
36396635383933393034613863386338613266333834616666393939393261613235366132663866
65356162633934633066336532396662356163386335313833386230643165633464663065383131
32366534366335623136363738653066336339623832636166343239613535623333343035633662
39663638386364306361643861666530323730626265633865343534643564363961636463356431
34333463383137363064323634656561313464303266653138383038303964363263326165643130
63613162383030323263613964303932623339626139326161393439663763386462313562636330
65323762356135333736316564623565316533646132303265623364386263383733306136326237
36353638663936666633393332623436643436333164633566386130396638633637323538633033
37326663636139646236636164353066626136396566633363333236313266656139646563386234
66633735396532613838646561643563623538363264383763303363313266363134353232643666
33333531386238356232306164346331353366636565656463323134333362353764663437663330
63363065353430353861316134656533363533666335373163303661656134646237386664636564
33643836386331363461383934666335336533353331363735346566323139646362343765383766
38306462313033353831626439626235393036393765306139313161353163636233616139396430
65373236336562343939356266333037643838363333396462336331303366333362393462313233
61343632646431616461343861626437623362343762393265323461343263396338373434623065
63316438323732326531316534613531366464623435623163663830343962343532353136366338
36646663363763633432376632353164366463336166356465333238383637623633663039343938
31613662666336316137376338393131393331653331663465373266313164303962363932656430
63623733313362323166356435346634333431306431393633346430336461663965643362643634
37666635633937323635373837333034653835363939623938306462366234343130386430303965
39323563343033343137363065396134366434383637363661323538343135323336333962646131
36356436396431646566613133336263653466633237373839626361393738383865313238363535
66623031623562386634366238383632326238636231626637633436326336633335626433653363
36626237333962653863613932376230396535303834323030353239623161653734303966633930
38653338636431383730376262386630613062366231366239616233616439386531313338343166
38656138303363643933633864616366343039626237616633643961346338623737313266633537
36623731323639643530363766323530616462366264613265303861663863306461393834393565
38656535353138306264386433323337343661326435316632323838303639353830613832613461
6461613532393237393866613765396530633561663838613461
61323135656430613464613334653239613865623361363734306139383261653563373365306364
3232353634356664323235393135653762383538353635660a363461393133376566613064366233
32323065633164646535386461373261373461343961383333333063663831353961656265313836
6231356666356266390a333230376264313537376461326331313134313737616137636465336430
38616261333534393464343630616464326331653163616435613863616165633730353263656565
66346536393737353962666438333661663636636339613633653363323438326635643738656430
38313635323066376532396666653633393736633939306566333337336635386430373662666534
64653662333832313964323039353838353638313337306631613564383933663166633164373132
33326537366135613733386436663366613238636133343065376534323561656265613433336637
64613330306530323238663738356133663166303730633735656562636139626232396130656337
34323238326437303730643736646430646239383239613061333033343733663832656262383732
66343236326537633539353230376365666462393264303532346431383838303963613731343263
63656630623934643763636237366630386333646263336261386162656439323232653066393266
36633239323638396639623734666466343164663539316165386632306235363435303139356433
37633731366565393339326235616264616535363461653531613331356239666534653232376235
36623431343136633964656330313833643161353738303564663662363062653631363661633333
31663339643034333336313630356266393062323637333664646335363961386433303662343734
32313338613064373966393163623863633037353564316361656162323234313435646532343231
30356336626435306332316566323932313564626164316165646530656365363330643033376134
32363530306536633531326535373136326364356237376264646130663430343838323834386264
35306561353866346430393837346333396236356465666334656139373764653365396534613034
36393239623930656266336130303236393336373063623738653939393563336130316461393535
32313932396263306439356663373361393539633639343238393631343830306532336162616565
32336264646333613238363065613130633966656164666333303332313536616334623639613630
34323665366131663736623638636263616131393133346464653037366465633332363131316332
65356563373036353432376234626262313266316435656562646365363539386361653966366465
39383536313764663732613462383466616238363765633062333830373038656334363764643663
61346664353064333238313038303333386436653738316630383237366532353765346633383862
65666235666663666638656337303762626563663135613431616439633731383638653466623434
62663164633032666638656464666130623566356636343330386236336266386263323936396330
31613339623034663466613930613062343666633530306136623734393862333365646538326261
63646439343565366463

View file

@ -6,9 +6,8 @@ pwr_meter_api_token: "{{ vault_pwr_meter_api_token }}"
brotherql_printer_host: "brotherql-720nw.n39.eu"
# URL for the grafana kiosk in our Bastelbereich
kiosk_grafana_url: "https://grafana.n39.eu/d/xpLj6UD4z/hobbes-space-monitor?orgId=1"
kiosk_grafana_url: "https://grafana.n39.eu/d/xpLj6UD4z/hobbes-space-monitor?orgId=1&kiosk"
kiosk_grafana_user: "{{ vault_kiosk_grafana_user }}"
kiosk_grafana_pass: "{{ vault_kiosk_grafana_pass }}"
kiosk_mqtt_host: "mqtt.n39.eu"
kiosk_mqtt_topic: "Netz39/Things/HackingDashboard/Screenshot"

View file

@ -0,0 +1,17 @@
---
server_admin: "admin+wittgenstein@netz39.de"
mac: "b8:27:eb:48:f1:59"
ansible_python_interpreter: /usr/bin/python3
gatekeeper_user: pi
data_dir: "/srv/data"
spaceapi_host_port: 8001
spaceapi_domain_name: spaceapi.n39.eu
spaceapi_image: netz39/spaceapi-service:0.1.1
spaceapi_topic_status: "Netz39/SpaceAPI/isOpen"
spaceapi_topic_lastchange: "Netz39/SpaceAPI/lastchange"
ampelcontroller_image: netz39/ampel-controller:0.2.0
topic_lever_state: "Netz39/Things/StatusSwitch/Lever/State"
topic_door_events: "Netz39/Things/Door/Events"
topic_traffic_light: "Netz39/Things/Ampel/Light"

View file

@ -12,12 +12,15 @@ all:
pottwal.n39.eu:
radon.n39.eu:
unicorn.n39.eu:
wittgenstein.n39.eu:
k3s-c1.n39.eu:
k3s-c2.n39.eu:
k3s-c3.n39.eu:
k3s-w1.n39.eu:
k3s-w2.n39.eu:
k3s-w3.n39.eu:
# Host rhodium.n39.eu is the OpenWRT router, but cannot be added here
# as it would be treated like a Debian host
children:
docker_host:
@ -27,6 +30,7 @@ all:
radon.n39.eu:
tau.netz39.de:
unicorn.n39.eu:
wittgenstein.n39.eu:
proxmox:
hosts:
holmium.n39.eu:

View file

@ -42,3 +42,6 @@
- name: Plumbum specific setup
import_playbook: host-plumbum.yml
- name: Wittgenstein specific setup
import_playbook: host-wittgenstein.yml

View file

@ -11,24 +11,14 @@
"matchStrings": [
"image: (?<depName>.*?):(?<currentValue>.*?)(@(?<currentDigest>sha256:.*?))?\\s"
]
},
{
"fileMatch": [
"^roles/docker_setup/defaults/main.yml$"
],
"datasourceTemplate": "github-release",
"versioningTemplate": "semver",
"depNameTemplate": "docker-compose",
"matchStrings": [
"docker_compose_version: (?<currentValue>.*?)\\s"
]
}
],
"packageRules": [
{
"matchDatasources": ["docker"],
"matchPackageNames": ["renovate/renovate"],
"schedule": [ "on friday" ]
"schedule": [ "before 1am on friday" ],
"automerge": true
}
]
}
}

View file

@ -1,18 +1,26 @@
---
roles:
- src: hifis.unattended_upgrades
version: v3.2.1
- src: git+https://github.com/adriagalin/ansible.timezone.git
- name: adriagalin.timezone
src: git+https://github.com/adriagalin/ansible.timezone.git
version: 4.0.0
- src: git+https://github.com/24367dfa/ansible-role-dehydrated.git
version: 2.0.0
- src: https://github.com/penguineer/ansible-role-dehydrated_cron.git
- name: 24367dfa.dehydrated
src: git+https://github.com/24367dfa/ansible-role-dehydrated.git
version: 2.1.0
- name: penguineer.dehydrated_cron
src: https://github.com/penguineer/ansible-role-dehydrated_cron.git
version: v1.1.0
- src: git+https://github.com/maz3max/ble-keykeeper-role.git
- name: maz3max.ble_keykeeper
src: git+https://github.com/maz3max/ble-keykeeper-role.git
version: v1.1.0
- src: lespocky.telegraf_docker_in_docker
version: v0.2.1
version: v0.2.2
- name: netz39.host_docker
src: git+https://github.com/netz39/ansible-role-host-docker.git
version: v0.5.0
collections:
- name: community.grafana
version: 1.6.1
version: 2.1.0
# for role 'hifis.toolkit.unattended_upgrades'
- name: hifis.toolkit
version: 5.3.0

View file

@ -1,6 +1,6 @@
# Handlers for role apache
---
- name: restart apache2
service:
- name: Restart apache2
ansible.builtin.service:
name: apache2
state: restarted

View file

@ -1,12 +1,12 @@
---
- name: Ensure Apache2 and modules are installed and up to date
apt:
ansible.builtin.apt:
name:
- apache2
state: present
- name: Ensure necessary modules are enabled
apache2_module:
community.general.apache2_module:
name: "{{ item }}"
state: present
with_items:
@ -23,7 +23,7 @@
mode: "0644"
owner: root
group: root
notify: restart apache2
notify: Restart apache2
- name: Add symlink to enable configuration
ansible.builtin.file:
@ -32,4 +32,4 @@
state: link
owner: root
group: root
notify: restart apache2
notify: Restart apache2

View file

@ -1,6 +1,6 @@
# Handlers for role apache_letsencrypt
---
- name: restart apache2
service:
- name: Restart apache2
ansible.builtin.service:
name: apache2
state: restarted

View file

@ -7,7 +7,7 @@
mode: "0644"
owner: root
group: root
notify: restart apache2
notify: Restart apache2
- name: Add symlink to enable configuration
ansible.builtin.file:
@ -17,4 +17,4 @@
mode: "0644"
owner: root
group: root
notify: restart apache2
notify: Restart apache2

View file

@ -19,7 +19,7 @@ cleanuri_amqp_canonizer: "canonizer"
cleanuri_amqp_retrieval: "extractor"
# Docker images
cleanuri_image_webui: mrtux/cleanuri-webui:0.2.0
cleanuri_image_apigateway: mrtux/cleanuri-apigateway:0.3.1
cleanuri_image_canonizer: mrtux/cleanuri-canonizer:0.4.0
cleanuri_image_extractor: mrtux/cleanuri-extractor:0.4.0
cleanuri_image_webui: mrtux/cleanuri-webui:0.2.2
cleanuri_image_apigateway: mrtux/cleanuri-apigateway:0.3.2
cleanuri_image_canonizer: mrtux/cleanuri-canonizer:0.5.3
cleanuri_image_extractor: mrtux/cleanuri-extractor:0.5.3

View file

@ -1,7 +1,7 @@
# Tasks for the cleanuri role
---
- name: Ensure CleanURI WebUI is running
docker_container:
community.docker.docker_container:
name: cleanuri-webui
image: "{{ cleanuri_image_webui }}"
pull: true
@ -15,7 +15,7 @@
REACT_APP_API_GATEWAY: "https://{{ cleanuri_api_domain }}"
- name: Setup proxy site for the CleanURI WebUI
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "{{ cleanuri_ui_domain }}"
@ -23,7 +23,7 @@
- name: Ensure CleanURI API Gateway is running
docker_container:
community.docker.docker_container:
name: cleanuri-apigateway
image: "{{ cleanuri_image_apigateway }}"
pull: true
@ -35,14 +35,14 @@
env:
TZ: "{{ timezone }}"
AMQP_HOST: "{{ cleanuri_amqp_host }}"
AMQP_USER: "{{ cleanuri_amqp_user }}"
AMQP_USER: "{{ cleanuri_amqp_user }}"
AMQP_PASS: "{{ cleanuri_amqp_pass }}"
AMQP_VHOST: "{{ cleanuri_amqp_vhost }}"
GATEWAY_RESULT_QUEUE: "{{ cleanuri_amqp_results }}"
GATEWAY_TASK_RK: "{{ cleanuri_amqp_canonizer }}"
- name: Ensure CleanURI Canonizer is running
docker_container:
community.docker.docker_container:
name: cleanuri-canonizer
image: "{{ cleanuri_image_canonizer }}"
pull: true
@ -52,14 +52,14 @@
env:
TZ: "{{ timezone }}"
AMQP_HOST: "{{ cleanuri_amqp_host }}"
AMQP_USER: "{{ cleanuri_amqp_user }}"
AMQP_USER: "{{ cleanuri_amqp_user }}"
AMQP_PASS: "{{ cleanuri_amqp_pass }}"
AMQP_VHOST: "{{ cleanuri_amqp_vhost }}"
CANONIZER_TASK_QUEUE: "{{ cleanuri_amqp_canonizer }}"
EXTRACTOR_TASK_RK: "{{ cleanuri_amqp_retrieval }}"
- name: Ensure CleanURI Extractor is running
docker_container:
community.docker.docker_container:
name: cleanuri-extractor
image: "{{ cleanuri_image_extractor }}"
pull: true
@ -69,14 +69,14 @@
env:
TZ: "{{ timezone }}"
AMQP_HOST: "{{ cleanuri_amqp_host }}"
AMQP_USER: "{{ cleanuri_amqp_user }}"
AMQP_USER: "{{ cleanuri_amqp_user }}"
AMQP_PASS: "{{ cleanuri_amqp_pass }}"
AMQP_VHOST: "{{ cleanuri_amqp_vhost }}"
EXTRACTION_TASK_QUEUE: "{{ cleanuri_amqp_retrieval }}"
- name: Setup proxy site the CleanURI API Gateway
include_role:
ansible.builtin.include_role:
name: setup_http_site_proxy
vars:
site_name: "{{ cleanuri_api_domain }}"

View file

@ -1,6 +1,6 @@
# handlers file for cron-dd24-dyndns
---
- name: reload cron
- name: Reload cron
ansible.builtin.shell:
cmd: service cron reload
warn: no

View file

@ -1,6 +1,6 @@
---
- name: Make sure cron and curl are installed
apt:
ansible.builtin.apt:
name:
- cron
- curl
@ -13,6 +13,6 @@
owner: root
group: root
mode: "0644"
notify: reload cron
notify: Reload cron
# There is ansible.builtin.cron, but this makes configuration much
# more complicated, so we stick to the template.

View file

@ -1,6 +1,6 @@
# /etc/cron.d/dd24-dyndns: Cron call to renew DynDNS entry
SHELL=/bin/sh
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
*/5 * * * * root curl --silent --show-error "https://dynamicdns.key-systems.net/update.php?hostname={{dyndns_domain}}&password={{dyndns_password}}&ip={{dyndns_ip}}" > /dev/null 2> >(/usr/bin/logger -p user.error -t dd24)
*/5 * * * * root curl --silent --show-error "https://dynamicdns.key-systems.net/update.php?hostname={{dyndns_domain}}&password={{dyndns_password}}&ip={{dyndns_ip}}" > >(grep 'code\|description' | paste -d',' - - | logger -p user.debug -t dd24) 2> >(/usr/bin/logger -p user.error -t dd24)

View file

@ -0,0 +1,4 @@
# desec.io Cron configuration
---
dyndns_domain: www.example.com
dyndns_token: yourtoken

View file

@ -0,0 +1,10 @@
# handlers file for desec_dyndns_cron
---
- name: Reload cron
ansible.builtin.shell:
cmd: service cron reload
warn: no
# Use the shell call because the task sometimes has problems finding the service state
# service:
# name: cron
# state: restarted

View file

@ -0,0 +1,18 @@
---
- name: Make sure cron and curl are installed
ansible.builtin.apt:
name:
- cron
- curl
state: present
- name: Setup cron file for desec.io updates
ansible.builtin.template:
src: "templates/desec-dyndns.cron.j2"
dest: "/etc/cron.d/desec-dyndns"
owner: root
group: root
mode: "0644"
notify: Reload cron
# There is ansible.builtin.cron, but this makes configuration much
# more complicated, so we stick to the template.

View file

@ -0,0 +1,6 @@
# /etc/cron.d/desec-dyndns: Cron call to renew DynDNS entry
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
*/5 * * * * root curl --silent --show-error --user {{ dyndns_domain }}:{{ dyndns_token }} "https://update.dedyn.io/" > >(logger -p user.debug -t desec) 2> >(/usr/bin/logger -p user.error -t desec)

View file

@ -1,5 +0,0 @@
---
docker_compose_version: "1.25.4"
docker_compose_path: /usr/local/bin/docker-compose
docker_data_root: "/var/lib/docker"
docker_storage_driver: "overlay2"

View file

@ -1,6 +0,0 @@
---
- name: restart docker
service:
name: docker
state: restarted
enabled: yes

View file

@ -1,84 +0,0 @@
# This file is a mash-up of:
# https://github.com/geerlingguy/ansible-role-docker/blob/master/tasks/docker-compose.yml
# https://www.digitalocean.com/community/tutorials/how-to-install-docker-compose-on-debian-9
# and our own stuff …
---
- name: Gather package facts
package_facts:
manager: "auto"
- name: Exit if docker.io is installed
fail:
msg: "Please remove docker.io (Debian vanilla docker package) first!"
when: "'docker.io' in ansible_facts.packages"
- name: Install Docker APT deps
package:
name: "{{ packages }}"
state: present
vars:
packages:
- apt-transport-https
- ca-certificates
- gnupg2
- software-properties-common
- name: add Docker apt-key
apt_key:
url: https://download.docker.com/linux/debian/gpg
state: present
- name: add Docker's APT repository
ansible.builtin.template:
src: templates/docker.list.j2
dest: /etc/apt/sources.list.d/docker.list
register: apt_repo
- name: Update package cache # noqa 503
ansible.builtin.apt:
update_cache: true
when: apt_repo.changed
- name: install Docker
package:
name: "{{ packages }}"
state: present
vars:
packages:
- docker-ce
- python3-docker
- name: Set docker configuration
template:
src: templates/daemon.json.j2
dest: /etc/docker/daemon.json
mode: "0644"
notify: restart docker
- name: Check current docker-compose version.
command: docker-compose --version
register: docker_compose_current_version
changed_when: false
failed_when: false
- name: Delete existing docker-compose version if it's different.
file:
path: "{{ docker_compose_path }}"
state: absent
when: >
docker_compose_current_version.stdout is defined
and docker_compose_version not in docker_compose_current_version.stdout
- name: Install Docker Compose (if configured).
get_url:
url: https://github.com/docker/compose/releases/download/{{ docker_compose_version }}/docker-compose-Linux-x86_64
dest: "{{ docker_compose_path }}"
mode: "0755"
- name: Place admin users in docker group
user:
name: "{{ item.logname }}"
groups: [docker]
append: yes
when: item.docker
with_items: "{{ users }}"

View file

@ -1,9 +0,0 @@
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"data-root": "{{ docker_data_root }}",
"storage-driver": "{{ docker_storage_driver }}"
}

View file

@ -1,2 +0,0 @@
deb https://download.docker.com/linux/debian {{ ansible_distribution_release }} stable

View file

@ -1,3 +0,0 @@
---
- name: reload nfs
command: 'exportfs -ra'

View file

@ -1,4 +1,4 @@
# Defaults for nfs-host
# Defaults for nfs_host
---
nfs_host_exports: []
# - directory: "/srv/nfs"

View file

@ -0,0 +1,3 @@
---
- name: Reload nfs
ansible.builtin.command: 'exportfs -ra'

View file

@ -3,9 +3,9 @@
ansible.builtin.apt:
state: present
name:
- nfs-kernel-server
- nfs-common
- parted
- nfs-kernel-server
- nfs-common
- parted
- name: Create a new ext4 primary partition
community.general.parted:
@ -14,7 +14,7 @@
state: present
fs_type: ext4
- name: ensure nfs mountpoints exist
- name: Ensure nfs mountpoints exist
ansible.builtin.file:
path: "{{ item.directory }}"
state: directory
@ -30,11 +30,11 @@
fstype: ext4
state: present
- name: template /etc/exports
- name: Put /etc/exports in place from template
ansible.builtin.template:
src: templates/exports.j2
dest: "/etc/exports"
notify: reload nfs
notify: Reload nfs
- name: Ensure nfs is running.
ansible.builtin.service: "name=nfs-kernel-server state=started enabled=yes"

View file

@ -1,7 +1,7 @@
# Handlers für nginx-https-proxy
---
- name: restart nginx
service:
- name: Restart nginx
ansible.builtin.service:
name: nginx
state: restarted
enabled: yes

View file

@ -8,9 +8,9 @@
ansible.builtin.apt:
state: present
name:
- apt-transport-https
- ca-certificates
- gnupg2
- apt-transport-https
- ca-certificates
- gnupg2
### Setup APT cache for the nginx repository
#
@ -18,7 +18,7 @@
# for SSL passthrough.
- name: Add nginx apt-key
apt_key:
ansible.builtin.apt_key:
url: https://nginx.org/keys/nginx_signing.key
state: present
@ -33,7 +33,7 @@
src: files/apt-preference-99nginx
dest: /etc/apt/preferences.d/99nginx
- name: Update package cache # noqa 503
- name: Update package cache # noqa: no-handler
ansible.builtin.apt:
update_cache: true
when: apt_repo.changed
@ -45,7 +45,7 @@
state: present
name:
# This version of nginx comes with the ngx_stream_core_module module
- nginx
- nginx
### Configuration
@ -56,7 +56,7 @@
owner: root
group: root
mode: '0644'
notify: restart nginx
notify: Restart nginx
- name: Create directory for dehydrated forwardings
ansible.builtin.file:
@ -74,7 +74,7 @@
group: root
mode: '0644'
loop: "{{ ingress }}"
notify: restart nginx
notify: Restart nginx
- name: Setup nginx configuration
# Note the order here: The nginx configuration _needs_ he dehydrated-hosts
@ -86,4 +86,4 @@
owner: root
group: root
mode: '0644'
notify: restart nginx
notify: Restart nginx

View file

@ -1,5 +0,0 @@
---
- name: restart apache2
service:
name: apache2
state: restarted

View file

@ -0,0 +1,5 @@
---
- name: Restart apache2
ansible.builtin.service:
name: apache2
state: restarted

View file

@ -1,12 +1,12 @@
---
- name: Add or update Apache2 site
template:
ansible.builtin.template:
src: templates/apache-docker-forward-site.j2
dest: /etc/apache2/sites-available/{{ site_name }}.conf
notify: restart apache2
notify: Restart apache2
- name: Activate Apache2 site
command: a2ensite {{ site_name }}
ansible.builtin.command: a2ensite {{ site_name }}
args:
creates: /etc/apache2/sites-enabled/{{ site_name }}.conf
notify: restart apache2
notify: Restart apache2

View file

@ -1,5 +1,5 @@
---
- name: restart apache2
service:
- name: Restart apache2
ansible.builtin.service:
name: apache2
state: restarted

View file

@ -1,13 +1,13 @@
---
- name: Add or update Apache2 site
template:
ansible.builtin.template:
src: templates/apache-docker-proxy-site.j2
dest: /etc/apache2/sites-available/{{ site_name }}.conf
mode: "0644"
notify: restart apache2
notify: Restart apache2
- name: Activate Apache2 site
command: a2ensite {{ site_name }}
ansible.builtin.command: a2ensite {{ site_name }}
args:
creates: /etc/apache2/sites-enabled/{{ site_name }}.conf
notify: restart apache2
notify: Restart apache2

View file

@ -1,3 +1,3 @@
---
- name: Update aliases
shell: which newaliases && newaliases || true
ansible.builtin.shell: which newaliases && newaliases || true

View file

@ -1,12 +1,12 @@
---
- name: Ensure sudo is installed
package:
ansible.builtin.package:
name:
- sudo
state: present
- name: Configure group sudo for sudoers without password
lineinfile:
ansible.builtin.lineinfile:
path: /etc/sudoers
state: present
regexp: '^%sudo\s'
@ -14,7 +14,7 @@
validate: /usr/sbin/visudo -cf %s
- name: Add users | create users' shell and home dir
user:
ansible.builtin.user:
name: "{{ item.logname }}"
shell: /bin/bash
createhome: yes
@ -22,7 +22,7 @@
with_items: "{{ users }}"
- name: Add authorized keys for user
authorized_key:
ansible.posix.authorized_key:
user: "{{ item.0.logname }}"
key: "{{ item.1 }}"
state: present
@ -32,7 +32,7 @@
- skip_missing: true
- name: Place user in sudo group
user:
ansible.builtin.user:
name: "{{ item.logname }}"
groups: [sudo]
append: yes
@ -40,12 +40,12 @@
with_items: "{{ users }}"
- name: Check if /etc/aliases exists
stat:
ansible.builtin.stat:
path: /etc/aliases
register: aliases
- name: Set system email alias
lineinfile:
ansible.builtin.lineinfile:
path: /etc/aliases
state: present
regexp: "^{{ item.logname }}:"

View file

@ -1,21 +1,21 @@
---
- name: configure local ssh to access n39 hosts
- name: Configure local ssh to access n39 hosts
hosts: localhost
tasks:
- name: ensure {{ lookup('env', 'HOME') }}/.ssh/config.d/ dir is present
- name: Ensure $HOME/.ssh/config.d/ dir is present
ansible.builtin.file:
path: "{{ lookup('env', 'HOME') }}/.ssh/config.d/"
state: directory
delegate_to: localhost
- name: template ssh config for access to internal systems
- name: Put ssh config for access to n39 internal systems in place
ansible.builtin.template:
src: templates/ssh_config.j2
dest: "{{ lookup('env', 'HOME') }}/.ssh/config.d/n39_config"
delegate_to: localhost
- name: ensure that n39 access config is included
- name: Ensure that n39 access config is included
ansible.builtin.lineinfile:
path: ~/.ssh/config
insertbefore: BOF

View file

@ -44,9 +44,9 @@
RequestHeader set "X-Forwarded-SSL" expr=%{HTTPS}
ProxyPreserveHost {{ proxy_preserve_host | default("Off") }}
ProxyPass /json http://172.23.48.7/spaceapi
ProxyPass /text http://172.23.48.7/state.txt
ProxyPass /state.png http://172.23.48.7/state.png
ProxyPass /json http://172.23.48.7:8001/json
ProxyPass /text http://172.23.48.7:8001/text
ProxyPass /state.png http://172.23.48.7:8001/state.png
</VirtualHost>
</IfFile>
</IfFile>

View file

@ -25,3 +25,11 @@ Host {{ host }}
Port 22
{% endfor %}
{# This is our router #}
Host rhodium.n39.eu
Hostname rhodium.n39.eu
IdentityFile {{ setup_ssh_key }}
User root
ProxyJump ssh.n39.eu
Port 22