From 0f8c0ffef9b96762618e5bd8164d8e983cc204bf Mon Sep 17 00:00:00 2001 From: ViMaSter Date: Sat, 1 Nov 2025 21:50:01 +0100 Subject: [PATCH 001/142] fix: Replaces password in healthcheck with dynamic secret --- resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 b/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 index a5cfc5b8d..aa37f87d2 100644 --- a/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 @@ -13,7 +13,7 @@ services: volumes: - mariadb:/var/lib/mysql healthcheck: - test: ["CMD", "mariadb-admin", "ping", "-h", "localhost", "-uroot", "-prootpassword"] + test: ["CMD", "mariadb-admin", "ping", "-h", "localhost", "-uroot", "-p{{ secret__sunders_db_camera_password }}"] interval: 10s timeout: 5s start_period: 30s From 53b2f491f87c8f3dac3c8240affaf96ddb33bda0 Mon Sep 17 00:00:00 2001 From: ViMaSter Date: Sat, 1 Nov 2025 21:53:43 +0100 Subject: [PATCH 002/142] fix: Uses root password --- resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 b/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 index aa37f87d2..fbec25836 100644 --- a/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 @@ -13,7 +13,7 @@ services: volumes: - mariadb:/var/lib/mysql healthcheck: - test: ["CMD", "mariadb-admin", "ping", "-h", "localhost", "-uroot", "-p{{ secret__sunders_db_camera_password }}"] + test: ["CMD", "mariadb-admin", "ping", "-h", "localhost", "-uroot", "-p{{ secret__sunders_db_root_password }}"] interval: 10s timeout: 5s start_period: 30s From c3f71b1f0801ddf0f1265dbf057ebf295ed73acf Mon Sep 17 00:00:00 2001 From: ViMaSter Date: Sun, 2 Nov 2025 20:24:55 +0100 Subject: [PATCH 003/142] sunders: replace password in healthcheck with dynamic secret https://git.hamburg.ccc.de/CCCHH/ansible-infra/pulls/55 Co-authored-by: ViMaSter Co-committed-by: ViMaSter --- resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 b/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 index a5cfc5b8d..fbec25836 100644 --- a/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 @@ -13,7 +13,7 @@ services: volumes: - mariadb:/var/lib/mysql healthcheck: - test: ["CMD", "mariadb-admin", "ping", "-h", "localhost", "-uroot", "-prootpassword"] + test: ["CMD", "mariadb-admin", "ping", "-h", "localhost", "-uroot", "-p{{ secret__sunders_db_root_password }}"] interval: 10s timeout: 5s start_period: 30s From 8cefd07618b575ce41ddecae05890a48a62bfa0a Mon Sep 17 00:00:00 2001 From: June Date: Fri, 24 Oct 2025 23:59:38 +0200 Subject: [PATCH 004/142] docker_compose(role): remove distribution check The distribution check isn't really needed in our setup anyway and just adds unnecessary noise. --- roles/docker_compose/README.md | 4 +--- roles/docker_compose/meta/main.yaml | 7 ------- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/roles/docker_compose/README.md b/roles/docker_compose/README.md index d3204ecff..14d0107ed 100644 --- a/roles/docker_compose/README.md +++ b/roles/docker_compose/README.md @@ -7,9 +7,7 @@ A use case for the deployment of the additional configuration files is Composes ## Supported Distributions -The following distributions are supported: - -- Debian 11 +Should work on Debian-based distributions. ## Required Arguments diff --git a/roles/docker_compose/meta/main.yaml b/roles/docker_compose/meta/main.yaml index b9a6980e5..cb7d8e046 100644 --- a/roles/docker_compose/meta/main.yaml +++ b/roles/docker_compose/meta/main.yaml @@ -1,10 +1,3 @@ --- dependencies: - - role: distribution_check - vars: - distribution_check__distribution_support_spec: - - name: Debian - major_versions: - - 11 - - 12 - role: docker From e390b7c20249b0eed56bf34ff3360f91f26958fa Mon Sep 17 00:00:00 2001 From: June Date: Sat, 25 Oct 2025 00:00:58 +0200 Subject: [PATCH 005/142] docker_compose(role): remove unnecessary hosts section from README The hosts section isn't really relevant for that role, so remove it. --- roles/docker_compose/README.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/roles/docker_compose/README.md b/roles/docker_compose/README.md index 14d0107ed..7246899b4 100644 --- a/roles/docker_compose/README.md +++ b/roles/docker_compose/README.md @@ -13,10 +13,6 @@ Should work on Debian-based distributions. For the required arguments look at the [`argument_specs.yaml`](./meta/argument_specs.yaml). -## `hosts` - -The `hosts` for this role need to be the machines, for which you want to make sure the given Compose file is deployed and all services of it are up-to-date and running. - ## Links & Resources - From 9f8d2d89cd8e17c2c23230764696410e2c9061d6 Mon Sep 17 00:00:00 2001 From: June Date: Sat, 25 Oct 2025 00:07:36 +0200 Subject: [PATCH 006/142] docker_compose(role): move argument documentation to README Do this to match newer roles and since reading documentation from argument_specs is quite unergonomic. --- roles/docker_compose/README.md | 9 ++++++++- roles/docker_compose/meta/argument_specs.yaml | 11 ----------- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/roles/docker_compose/README.md b/roles/docker_compose/README.md index 7246899b4..c0a7a93d5 100644 --- a/roles/docker_compose/README.md +++ b/roles/docker_compose/README.md @@ -11,7 +11,14 @@ Should work on Debian-based distributions. ## Required Arguments -For the required arguments look at the [`argument_specs.yaml`](./meta/argument_specs.yaml). +- `docker_compose__compose_file_content`: The content to deploy to the Compose file at `/ansible_docker_compose/compose.yaml`. + +## Optional Arguments + +- `docker_compose__env_file_content`: The content to deploy to the `.env` file at `/ansible_docker_compose/.env`. +- `docker_compose__configuration_files`: A list of configuration files to deploy to the `/ansible_docker_compose/configs/` directory. +- `docker_compose__configuration_files.*.name`: The name of the configuration file. +- `docker_compose__configuration_files.*.content`: The content to deploy to the configuration file. ## Links & Resources diff --git a/roles/docker_compose/meta/argument_specs.yaml b/roles/docker_compose/meta/argument_specs.yaml index c588ba001..664496e1e 100644 --- a/roles/docker_compose/meta/argument_specs.yaml +++ b/roles/docker_compose/meta/argument_specs.yaml @@ -2,31 +2,20 @@ argument_specs: main: options: docker_compose__compose_file_content: - description: >- - The content of the Compose file at - `/ansible_docker_compose/compose.yaml`. type: str required: true docker_compose__env_file_content: - description: >- - The content of the .env file at - `/ansible_docker_compose/.env`. type: str required: false docker_compose__configuration_files: - description: >- - A list of configuration files to be deployed in the - `/ansible_docker_compose/configs/` directory. type: list elements: dict required: false default: [ ] options: name: - description: The name of the configuration file. type: str required: true content: - description: The content of the configuration file. type: str required: true From ae60d6fea6305f6719d33042373eea40d121e597 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 2 Nov 2025 23:13:20 +0100 Subject: [PATCH 007/142] docker_compose(role): use community.docker.docker_compose_v2 module Use the community.docker.docker_compose_v2 module as it supports proper changed handling out of the box, making the roles code more straightforward and work. Also just do a docker compose restart instead of having the custom docker compose reload script. https://docs.ansible.com/ansible/latest/collections/community/docker/docker_compose_v2_module.html --- inventories/z9/host_vars/yate.yaml | 1 - requirements.yml | 3 ++ roles/docker_compose/defaults/main.yaml | 1 - roles/docker_compose/handlers/main.yaml | 18 +++++----- roles/docker_compose/tasks/main.yaml | 46 ++++++------------------- 5 files changed, 21 insertions(+), 48 deletions(-) diff --git a/inventories/z9/host_vars/yate.yaml b/inventories/z9/host_vars/yate.yaml index d2dc5180b..fecacb1e1 100644 --- a/inventories/z9/host_vars/yate.yaml +++ b/inventories/z9/host_vars/yate.yaml @@ -6,4 +6,3 @@ docker_compose__configuration_files: content: "{{ lookup('ansible.builtin.template', 'resources/z9/yate/docker_compose/regexroute.conf.j2') }}" - name: regfile.conf content: "{{ lookup('ansible.builtin.template', 'resources/z9/yate/docker_compose/regfile.conf.j2') }}" -docker_compose__restart_cmd: "exec yate sh -c 'kill -1 1'" diff --git a/requirements.yml b/requirements.yml index e5538cc95..6011bdab1 100644 --- a/requirements.yml +++ b/requirements.yml @@ -6,3 +6,6 @@ collections: - name: community.sops version: ">=2.2.4" source: https://galaxy.ansible.com + - name: community.docker + version: ">=5.0.0" + source: https://galaxy.ansible.com diff --git a/roles/docker_compose/defaults/main.yaml b/roles/docker_compose/defaults/main.yaml index 131297268..76831d6c7 100644 --- a/roles/docker_compose/defaults/main.yaml +++ b/roles/docker_compose/defaults/main.yaml @@ -1,2 +1 @@ docker_compose__configuration_files: [ ] -docker_compose__restart_cmd: "" diff --git a/roles/docker_compose/handlers/main.yaml b/roles/docker_compose/handlers/main.yaml index 49e064cda..2aff0fefe 100644 --- a/roles/docker_compose/handlers/main.yaml +++ b/roles/docker_compose/handlers/main.yaml @@ -1,13 +1,11 @@ - name: docker compose down - ansible.builtin.command: - cmd: /usr/bin/docker compose down - chdir: /ansible_docker_compose + community.docker.docker_compose_v2: + project_src: /ansible_docker_compose + state: absent become: true - changed_when: true # This is always changed. -- name: docker compose reload script - ansible.builtin.command: - cmd: /usr/bin/docker compose {{ docker_compose__restart_cmd }} - chdir: /ansible_docker_compose + +- name: docker compose restart + community.docker.docker_compose_v2: + project_src: /ansible_docker_compose + state: restarted become: true - changed_when: true # Mark this as always changed (for now?). - when: docker_compose__restart_cmd != "" diff --git a/roles/docker_compose/tasks/main.yaml b/roles/docker_compose/tasks/main.yaml index 7b013048a..bea3f4fb2 100644 --- a/roles/docker_compose/tasks/main.yaml +++ b/roles/docker_compose/tasks/main.yaml @@ -59,7 +59,7 @@ state: absent become: true loop: "{{ docker_compose__config_files_to_remove.files }}" - # notify: docker compose down + notify: docker compose restart - name: make sure all given configuration files are deployed ansible.builtin.copy: @@ -70,45 +70,19 @@ group: root become: true loop: "{{ docker_compose__configuration_files }}" - # notify: docker compose down - notify: docker compose reload script + notify: docker compose restart -- name: Flush handlers to make "docker compose down" handler run now +- name: Flush handlers to make "docker compose down" and "docker compose restart" handlers run now ansible.builtin.meta: flush_handlers -- name: docker compose ps --format json before docker compose up - ansible.builtin.command: - cmd: /usr/bin/docker compose ps --format json - chdir: /ansible_docker_compose +- name: docker compose up + community.docker.docker_compose_v2: + project_src: /ansible_docker_compose + state: present + build: always + pull: always + remove_orphans: true become: true - changed_when: false - register: docker_compose__ps_json_before_up - -- name: docker compose up --detach --pull always --build - ansible.builtin.command: - cmd: /usr/bin/docker compose up --detach --pull always --build --remove-orphans - chdir: /ansible_docker_compose - become: true - changed_when: false - # The changed for this task is tried to be determined by the "potentially - # report changed" task together with the "docker compose ps --format json - # [...]" tasks. - -- name: docker compose ps --format json after docker compose up - ansible.builtin.command: - cmd: /usr/bin/docker compose ps --format json - chdir: /ansible_docker_compose - become: true - changed_when: false - register: docker_compose__ps_json_after_up - -# Doesn't work anymore. Dunno why. -# TODO: Fix -# - name: potentially report changed -# ansible.builtin.debug: -# msg: "If this reports changed, then the docker compose containers changed." -# changed_when: (docker_compose__ps_json_before_up.stdout | from_json | community.general.json_query('[].ID') | sort) -# != (docker_compose__ps_json_after_up.stdout | from_json | community.general.json_query('[].ID') | sort) - name: Make sure anacron is installed become: true From d690f81e3df40f85665d3c52ddc8d8f4418aebe1 Mon Sep 17 00:00:00 2001 From: c6ristian Date: Wed, 5 Nov 2025 23:08:08 +0100 Subject: [PATCH 008/142] deploy_ssh_server_config: setup ssh pq cryptography --- roles/deploy_ssh_server_config/templates/sshd_config.j2 | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/roles/deploy_ssh_server_config/templates/sshd_config.j2 b/roles/deploy_ssh_server_config/templates/sshd_config.j2 index eefafa46d..307f2133e 100644 --- a/roles/deploy_ssh_server_config/templates/sshd_config.j2 +++ b/roles/deploy_ssh_server_config/templates/sshd_config.j2 @@ -17,7 +17,15 @@ HostKey /etc/ssh/ssh_host_ed25519_key HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_ecdsa_key + +{% if ansible_facts["distribution"] == "Debian" and ansible_facts["distribution_major_version"] == "13" %} +KexAlgorithms mlkem768x25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256 +{% elif ansible_facts["distribution"] == "Debian" and ansible_facts["distribution_major_version"] == "12" %} +KexAlgorithms sntrup761x25519-sha512,curve25519-sha256@libssh.org,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256 +{% else %} KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256 +{% endif %} + Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr From cffe5c2b1642c14839baf750e82d65bbe141d8fe Mon Sep 17 00:00:00 2001 From: June Date: Thu, 6 Nov 2025 18:25:29 +0100 Subject: [PATCH 009/142] dooris: use hostname instead of IP --- inventories/z9/hosts.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inventories/z9/hosts.yaml b/inventories/z9/hosts.yaml index 9d5bb09c9..9f4a69208 100644 --- a/inventories/z9/hosts.yaml +++ b/inventories/z9/hosts.yaml @@ -4,7 +4,7 @@ all: ansible_host: authoritative-dns.z9.ccchh.net ansible_user: chaos dooris: - ansible_host: 10.31.208.201 + ansible_host: dooris.z9.ccchh.net ansible_user: chaos light: ansible_host: light.z9.ccchh.net From aeec08fce8573b0625e60f9bee4027b575933fbe Mon Sep 17 00:00:00 2001 From: lilly Date: Thu, 6 Nov 2025 21:16:36 +0100 Subject: [PATCH 010/142] remove distribution checks Signed-Off-By: june --- roles/foobazdmx/meta/main.yaml | 8 -------- roles/ola/meta/main.yaml | 8 -------- 2 files changed, 16 deletions(-) delete mode 100644 roles/foobazdmx/meta/main.yaml delete mode 100644 roles/ola/meta/main.yaml diff --git a/roles/foobazdmx/meta/main.yaml b/roles/foobazdmx/meta/main.yaml deleted file mode 100644 index 386685c33..000000000 --- a/roles/foobazdmx/meta/main.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -dependencies: - - role: distribution_check - vars: - distribution_check__distribution_support_spec: - - name: Debian - major_versions: - - "11" diff --git a/roles/ola/meta/main.yaml b/roles/ola/meta/main.yaml deleted file mode 100644 index 386685c33..000000000 --- a/roles/ola/meta/main.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -dependencies: - - role: distribution_check - vars: - distribution_check__distribution_support_spec: - - name: Debian - major_versions: - - "11" From 63917722ff0a9d292aa012eaa2dfcc6baf15fcae Mon Sep 17 00:00:00 2001 From: lilly Date: Thu, 6 Nov 2025 21:16:36 +0100 Subject: [PATCH 011/142] fix foobazdmx role poetry is available via apt now so we install it that way --- roles/foobazdmx/tasks/main.yaml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/roles/foobazdmx/tasks/main.yaml b/roles/foobazdmx/tasks/main.yaml index f6e609740..33197b5c1 100644 --- a/roles/foobazdmx/tasks/main.yaml +++ b/roles/foobazdmx/tasks/main.yaml @@ -7,11 +7,7 @@ - python3 - python3-pip - python3-setuptools - -- name: Ensure python peotry is installed - become: true - ansible.builtin.pip: - name: poetry + - python3-poetry - name: Ensure foobazdmx user exists become: true From 6fea98ffd219395e206f227d9ebb47a8e9aacae9 Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Fri, 7 Nov 2025 20:09:02 +0100 Subject: [PATCH 012/142] Redirect to 39c3 instead of eh22 --- .../chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/resources/chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf b/resources/chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf index 40882d8fe..9e2ca26b3 100644 --- a/resources/chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf +++ b/resources/chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf @@ -38,11 +38,7 @@ server { location = / { #return 302 https://wiki.hamburg.ccc.de/infrastructure:service-overview#tickets_pretix; - return 302 https://tickets.hamburg.ccc.de/hackertours/eh22ht/; - } - - location = /hackertours/eh22/ { - return 302 https://tickets.hamburg.ccc.de/hackertours/eh22ht/; + return 302 https://tickets.hamburg.ccc.de/hackertours/39c3ht/; } location / { From 5f6000adcadb0be3dc917f2b5aaf55b15a7f5d9d Mon Sep 17 00:00:00 2001 From: c6ristian Date: Tue, 11 Nov 2025 22:47:42 +0100 Subject: [PATCH 013/142] ssh_config: also enable sntrup761x25519-sha512 for Debain 13 tldr: PQC algorithms are complex but sntrup still is not brocken --- roles/deploy_ssh_server_config/templates/sshd_config.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/deploy_ssh_server_config/templates/sshd_config.j2 b/roles/deploy_ssh_server_config/templates/sshd_config.j2 index 307f2133e..c967502ca 100644 --- a/roles/deploy_ssh_server_config/templates/sshd_config.j2 +++ b/roles/deploy_ssh_server_config/templates/sshd_config.j2 @@ -19,7 +19,7 @@ HostKey /etc/ssh/ssh_host_ecdsa_key {% if ansible_facts["distribution"] == "Debian" and ansible_facts["distribution_major_version"] == "13" %} -KexAlgorithms mlkem768x25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256 +KexAlgorithms sntrup761x25519-sha512,mlkem768x25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256 {% elif ansible_facts["distribution"] == "Debian" and ansible_facts["distribution_major_version"] == "12" %} KexAlgorithms sntrup761x25519-sha512,curve25519-sha256@libssh.org,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha256 {% else %} From 80acd5fdc62366260a8d88113ed46963fe2616a7 Mon Sep 17 00:00:00 2001 From: c6ristian Date: Tue, 11 Nov 2025 23:03:59 +0100 Subject: [PATCH 014/142] grafana: store date for up to 28 days --- resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 b/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 index d739b2fa3..c5b8f2d61 100644 --- a/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 @@ -8,6 +8,7 @@ services: - '--config.file=/etc/prometheus/prometheus.yml' - '--web.enable-remote-write-receiver' - '--enable-feature=promql-experimental-functions' + - '--storage.tsdb.retention.time=28d' ports: - 9090:9090 restart: unless-stopped From ddab1576007b222cf9b1ff752626d7d979b47d5a Mon Sep 17 00:00:00 2001 From: June Date: Tue, 18 Nov 2025 14:24:21 +0100 Subject: [PATCH 015/142] don't pin digests anymore The benefit of digest pinning isn't that great for this project really and it comes at the cost of more issues and additional renovate noise, so just don't anymore. Adjust renovate config accordingly as well. --- .forgejo/workflows/lint.yaml | 4 ++-- renovate.json | 18 ++++++++---------- .../ccchoir/docker_compose/compose.yaml.j2 | 4 ++-- .../grafana/docker_compose/compose.yaml.j2 | 18 +++++++++--------- .../keycloak/docker_compose/compose.yaml.j2 | 2 +- .../lists/docker_compose/compose.yaml | 6 +++--- .../ntfy/docker_compose/compose.yaml.j2 | 2 +- .../onlyoffice/docker_compose/compose.yaml.j2 | 2 +- .../pad/docker_compose/compose.yaml.j2 | 4 ++-- .../pretalx/docker_compose/compose.yaml.j2 | 10 +++++----- .../tickets/docker_compose/compose.yaml.j2 | 6 +++--- .../docker_compose/compose.yaml.j2 | 2 +- 12 files changed, 38 insertions(+), 40 deletions(-) diff --git a/.forgejo/workflows/lint.yaml b/.forgejo/workflows/lint.yaml index a867c1396..23bf6d2dc 100644 --- a/.forgejo/workflows/lint.yaml +++ b/.forgejo/workflows/lint.yaml @@ -10,7 +10,7 @@ jobs: name: Ansible Lint runs-on: docker steps: - - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 + - uses: actions/checkout@v5 - name: Install pip run: | apt update @@ -24,7 +24,7 @@ jobs: # work in our environmnet. # Rather manually setup python (pip) before instead. - name: Run ansible-lint - uses: https://github.com/ansible/ansible-lint@d7cd7cfa2469536527aceaef9ef2ec6f2fb331cb # v25.9.2 + uses: https://github.com/ansible/ansible-lint@v25.9.2 with: setup_python: "false" requirements_file: "requirements.yml" diff --git a/renovate.json b/renovate.json index 7e604c1c7..711c6273e 100644 --- a/renovate.json +++ b/renovate.json @@ -1,13 +1,17 @@ { "$schema": "https://docs.renovatebot.com/renovate-schema.json", "extends": [ - "config:recommended", // Included in config:best-practices anyway, but added for clarity. - "config:best-practices", + "config:recommended", + // Parts from config:best-practices: + // https://docs.renovatebot.com/presets-config/#configbest-practices + ":configMigration", + "abandonments:recommended", + "security:minimumReleaseAgeNpm", + ":ignoreUnstable", ":disableRateLimiting", ":rebaseStalePrs", - ":label(renovate)", - "group:allDigest" + ":label(renovate)" ], "semanticCommits": "disabled", "packageRules": [ @@ -28,12 +32,6 @@ "matchDatasources": ["docker"], "matchPackageNames": ["docker.io/pretix/standalone"], "versioning": "regex:^(?\\d+\\.\\d+)(?:\\.(?\\d+))$" - }, - // Since Forgejo seems to clean up older tag versions, so older digests, disable digest pinning for our images. - { - "matchDatasources": ["docker"], - "matchPackageNames": ["git.hamburg.ccc.de/*"], - "pinDigests": false } ], "customManagers": [ diff --git a/resources/chaosknoten/ccchoir/docker_compose/compose.yaml.j2 b/resources/chaosknoten/ccchoir/docker_compose/compose.yaml.j2 index ffe491bd3..c2108d8ab 100644 --- a/resources/chaosknoten/ccchoir/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/ccchoir/docker_compose/compose.yaml.j2 @@ -3,7 +3,7 @@ services: database: - image: docker.io/library/mariadb:11@sha256:ae6119716edac6998ae85508431b3d2e666530ddf4e94c61a10710caec9b0f71 + image: docker.io/library/mariadb:11 environment: - "MARIADB_DATABASE=wordpress" - "MARIADB_ROOT_PASSWORD={{ secret__mariadb_root_password }}" @@ -17,7 +17,7 @@ services: restart: unless-stopped app: - image: docker.io/library/wordpress:6-php8.1@sha256:75f79f9c45a587b283e47fd21c6e51077d0c9dbbba529377faaa0c28d5b8f5a4 + image: docker.io/library/wordpress:6-php8.1 environment: - "WORDPRESS_DB_HOST=database" - "WORDPRESS_DB_NAME=wordpress" diff --git a/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 b/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 index c5b8f2d61..74d791662 100644 --- a/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 @@ -2,7 +2,7 @@ services: prometheus: - image: docker.io/prom/prometheus:v3.7.2@sha256:23031bfe0e74a13004252caaa74eccd0d62b6c6e7a04711d5b8bf5b7e113adc7 + image: docker.io/prom/prometheus:v3.7.2 container_name: prometheus command: - '--config.file=/etc/prometheus/prometheus.yml' @@ -19,7 +19,7 @@ services: - prom_data:/prometheus alertmanager: - image: docker.io/prom/alertmanager:v0.28.1@sha256:27c475db5fb156cab31d5c18a4251ac7ed567746a2483ff264516437a39b15ba + image: docker.io/prom/alertmanager:v0.28.1 container_name: alertmanager command: - '--config.file=/etc/alertmanager/alertmanager.yaml' @@ -32,7 +32,7 @@ services: - alertmanager_data:/alertmanager grafana: - image: docker.io/grafana/grafana:12.2.1@sha256:35c41e0fd0295f5d0ee5db7e780cf33506abfaf47686196f825364889dee878b + image: docker.io/grafana/grafana:12.2.1 container_name: grafana ports: - 3000:3000 @@ -46,7 +46,7 @@ services: - graf_data:/var/lib/grafana pve-exporter: - image: docker.io/prompve/prometheus-pve-exporter:3.5.5@sha256:79a5598906697b1a5a006d09f0200528a77c6ff1568faf018539ac65824454df + image: docker.io/prompve/prometheus-pve-exporter:3.5.5 container_name: pve-exporter ports: - 9221:9221 @@ -59,7 +59,7 @@ services: - /dev/null:/etc/prometheus/pve.yml loki: - image: docker.io/grafana/loki:3.5.7@sha256:0eaee7bf39cc83aaef46914fb58f287d4f4c4be6ec96b86c2ed55719a75e49c8 + image: docker.io/grafana/loki:3.5.7 container_name: loki ports: - 13100:3100 @@ -70,7 +70,7 @@ services: - loki_data:/var/loki ntfy-alertmanager-ccchh-critical: - image: docker.io/xenrox/ntfy-alertmanager:0.5.0@sha256:5fea88db3bf0257d98c007ab0c4ef064c6d67d7b7ceead7d6956dfa0a5cb333b + image: docker.io/xenrox/ntfy-alertmanager:0.5.0 container_name: ntfy-alertmanager-ccchh-critical volumes: - ./configs/ntfy-alertmanager-ccchh-critical:/etc/ntfy-alertmanager/config @@ -79,7 +79,7 @@ services: restart: unless-stopped ntfy-alertmanager-fux-critical: - image: docker.io/xenrox/ntfy-alertmanager:0.5.0@sha256:5fea88db3bf0257d98c007ab0c4ef064c6d67d7b7ceead7d6956dfa0a5cb333b + image: docker.io/xenrox/ntfy-alertmanager:0.5.0 container_name: ntfy-alertmanager-fux-critical volumes: - ./configs/ntfy-alertmanager-fux-critical:/etc/ntfy-alertmanager/config @@ -88,7 +88,7 @@ services: restart: unless-stopped ntfy-alertmanager-ccchh: - image: docker.io/xenrox/ntfy-alertmanager:0.5.0@sha256:5fea88db3bf0257d98c007ab0c4ef064c6d67d7b7ceead7d6956dfa0a5cb333b + image: docker.io/xenrox/ntfy-alertmanager:0.5.0 container_name: ntfy-alertmanager-ccchh volumes: - ./configs/ntfy-alertmanager-ccchh:/etc/ntfy-alertmanager/config @@ -97,7 +97,7 @@ services: restart: unless-stopped ntfy-alertmanager-fux: - image: docker.io/xenrox/ntfy-alertmanager:0.5.0@sha256:5fea88db3bf0257d98c007ab0c4ef064c6d67d7b7ceead7d6956dfa0a5cb333b + image: docker.io/xenrox/ntfy-alertmanager:0.5.0 container_name: ntfy-alertmanager-fux volumes: - ./configs/ntfy-alertmanager-fux:/etc/ntfy-alertmanager/config diff --git a/resources/chaosknoten/keycloak/docker_compose/compose.yaml.j2 b/resources/chaosknoten/keycloak/docker_compose/compose.yaml.j2 index d91a2549e..9fde70835 100644 --- a/resources/chaosknoten/keycloak/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/keycloak/docker_compose/compose.yaml.j2 @@ -46,7 +46,7 @@ services: - "8080:8080" db: - image: docker.io/library/postgres:15.14@sha256:424e79b81868f5fc5cf515eaeac69d288692ebcca7db86d98f91b50d4bce64bb + image: docker.io/library/postgres:15.14 restart: unless-stopped networks: - keycloak diff --git a/resources/chaosknoten/lists/docker_compose/compose.yaml b/resources/chaosknoten/lists/docker_compose/compose.yaml index 8537ead06..cdfd70a2e 100644 --- a/resources/chaosknoten/lists/docker_compose/compose.yaml +++ b/resources/chaosknoten/lists/docker_compose/compose.yaml @@ -1,7 +1,7 @@ services: mailman-core: restart: unless-stopped - image: docker.io/maxking/mailman-core:0.5@sha256:cb8e412bb18d74480f996da68f46e92473b6103995e71bc5aeba139b255cc3d2 # Use a specific version tag (tag latest is not published) + image: docker.io/maxking/mailman-core:0.5 # Use a specific version tag (tag latest is not published) container_name: mailman-core hostname: mailman-core volumes: @@ -25,7 +25,7 @@ services: mailman-web: restart: unless-stopped - image: docker.io/maxking/mailman-web:0.5@sha256:014726db85586fb53541f66f6ce964bf07e939791cfd5ffc796cd6d243696a18 # Use a specific version tag (tag latest is not published) + image: docker.io/maxking/mailman-web:0.5 # Use a specific version tag (tag latest is not published) container_name: mailman-web hostname: mailman-web depends_on: @@ -56,7 +56,7 @@ services: - POSTGRES_DB=mailmandb - POSTGRES_USER=mailman - POSTGRES_PASSWORD=wvQjbMRnwFuxGEPz - image: docker.io/library/postgres:12-alpine@sha256:7c8f4870583184ebadf7f17a6513620aac5f365a7938dc6a6911c1d5df2f481a + image: docker.io/library/postgres:12-alpine volumes: - /opt/mailman/database:/var/lib/postgresql/data networks: diff --git a/resources/chaosknoten/ntfy/docker_compose/compose.yaml.j2 b/resources/chaosknoten/ntfy/docker_compose/compose.yaml.j2 index 07e8d9ec3..9fe2a7a66 100644 --- a/resources/chaosknoten/ntfy/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/ntfy/docker_compose/compose.yaml.j2 @@ -1,7 +1,7 @@ --- services: ntfy: - image: docker.io/binwiederhier/ntfy:v2.14.0@sha256:5a051798d14138c3ecb12c038652558ab6a077e1aceeb867c151cbf5fa8451ef + image: docker.io/binwiederhier/ntfy:v2.14.0 container_name: ntfy command: - serve diff --git a/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 b/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 index 5c9a42a3f..f3444ac81 100644 --- a/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 @@ -4,7 +4,7 @@ services: onlyoffice: - image: docker.io/onlyoffice/documentserver:9.1.0@sha256:34b92f4a67bfd939bd6b75893e8217556e3b977f81e49472f7e28737b741ba1d + image: docker.io/onlyoffice/documentserver:9.1.0 restart: unless-stopped volumes: - "./onlyoffice/DocumentServer/logs:/var/log/onlyoffice" diff --git a/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 b/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 index 70dc7e6a6..455caa39c 100644 --- a/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 @@ -3,7 +3,7 @@ services: database: - image: docker.io/library/postgres:15-alpine@sha256:64583b3cb4f2010277bdd9749456de78e5c36f8956466ba14b0b96922e510950 + image: docker.io/library/postgres:15-alpine environment: - "POSTGRES_USER=hedgedoc" - "POSTGRES_PASSWORD={{ secret__hedgedoc_db_password }}" @@ -13,7 +13,7 @@ services: restart: unless-stopped app: - image: quay.io/hedgedoc/hedgedoc:1.10.3@sha256:ca58fd73ecf05c89559b384fb7a1519c18c8cbba5c21a0018674ed820b9bdb73 + image: quay.io/hedgedoc/hedgedoc:1.10.3 environment: - "CMD_DB_URL=postgres://hedgedoc:{{ secret__hedgedoc_db_password }}@database:5432/hedgedoc" - "CMD_DOMAIN=pad.hamburg.ccc.de" diff --git a/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 b/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 index 243a468d7..3de7eacaa 100644 --- a/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 @@ -3,7 +3,7 @@ services: database: - image: docker.io/library/postgres:15-alpine@sha256:64583b3cb4f2010277bdd9749456de78e5c36f8956466ba14b0b96922e510950 + image: docker.io/library/postgres:15-alpine environment: - "POSTGRES_USER=pretalx" - "POSTGRES_PASSWORD={{ secret__pretalx_db_password }}" @@ -15,7 +15,7 @@ services: - pretalx_net redis: - image: docker.io/library/redis:8.2.2@sha256:4521b581dbddea6e7d81f8fe95ede93f5648aaa66a9dacd581611bf6fe7527bd + image: docker.io/library/redis:8.2.2 restart: unless-stopped volumes: - redis:/data @@ -23,7 +23,7 @@ services: - pretalx_net static: - image: docker.io/library/nginx:1.29.3@sha256:f547e3d0d5d02f7009737b284abc87d808e4252b42dceea361811e9fc606287f + image: docker.io/library/nginx:1.29.3 restart: unless-stopped volumes: - public:/usr/share/nginx/html @@ -33,7 +33,7 @@ services: - pretalx_net pretalx: - image: docker.io/pretalx/standalone:v2025.1.0@sha256:fb2d15f11bcae8bb15430084ed81a150cfdf7c79705450583b51e352ba486e8e + image: docker.io/pretalx/standalone:v2025.1.0 entrypoint: gunicorn command: - "pretalx.wsgi" @@ -78,7 +78,7 @@ services: - pretalx_net celery: - image: docker.io/pretalx/standalone:v2025.1.0@sha256:fb2d15f11bcae8bb15430084ed81a150cfdf7c79705450583b51e352ba486e8e + image: docker.io/pretalx/standalone:v2025.1.0 command: - taskworker restart: unless-stopped diff --git a/resources/chaosknoten/tickets/docker_compose/compose.yaml.j2 b/resources/chaosknoten/tickets/docker_compose/compose.yaml.j2 index deb9f5094..6509a99c0 100644 --- a/resources/chaosknoten/tickets/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/tickets/docker_compose/compose.yaml.j2 @@ -1,7 +1,7 @@ --- services: database: - image: docker.io/library/postgres:15-alpine@sha256:64583b3cb4f2010277bdd9749456de78e5c36f8956466ba14b0b96922e510950 + image: docker.io/library/postgres:15-alpine environment: - "POSTGRES_USER=pretix" - "POSTGRES_PASSWORD={{ secret__pretix_db_password }}" @@ -13,7 +13,7 @@ services: restart: unless-stopped redis: - image: docker.io/library/redis:7.4.6@sha256:a9cc41d6d01da2aa26c219e4f99ecbeead955a7b656c1c499cce8922311b2514 + image: docker.io/library/redis:7.4.6 ports: - "6379:6379" volumes: @@ -25,7 +25,7 @@ services: backend: pretix: - image: docker.io/pretix/standalone:2024.8@sha256:110bac37efa5f736227f158f38e421ed738d03dccc274dfb415b258ab0f75cfe + image: docker.io/pretix/standalone:2024.8 command: ["all"] ports: - "8345:80" diff --git a/resources/z9/waybackproxy/docker_compose/compose.yaml.j2 b/resources/z9/waybackproxy/docker_compose/compose.yaml.j2 index 52d57dfdd..b6752fafb 100644 --- a/resources/z9/waybackproxy/docker_compose/compose.yaml.j2 +++ b/resources/z9/waybackproxy/docker_compose/compose.yaml.j2 @@ -1,7 +1,7 @@ services: # https://github.com/richardg867/WaybackProxy waybackproxy: - image: cttynul/waybackproxy:latest@sha256:e001d5b1d746522cd1ab2728092173c0d96f08086cbd3e49cdf1e298b8add22e + image: cttynul/waybackproxy:latest environment: DATE: 19990101 DATE_TOLERANCE: 730 From 0eaaf9227c730d0c0efe9f60381ecd38fee1d0ef Mon Sep 17 00:00:00 2001 From: Renovate Date: Wed, 19 Nov 2025 13:30:39 +0000 Subject: [PATCH 016/142] Update all stable non-major dependencies --- .forgejo/workflows/lint.yaml | 2 +- inventories/chaosknoten/host_vars/cloud.yaml | 2 +- inventories/chaosknoten/host_vars/netbox.yaml | 2 +- .../chaosknoten/grafana/docker_compose/compose.yaml.j2 | 8 ++++---- .../chaosknoten/keycloak/docker_compose/compose.yaml.j2 | 2 +- resources/chaosknoten/ntfy/docker_compose/compose.yaml.j2 | 2 +- .../chaosknoten/pretalx/docker_compose/compose.yaml.j2 | 2 +- .../chaosknoten/tickets/docker_compose/compose.yaml.j2 | 2 +- 8 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.forgejo/workflows/lint.yaml b/.forgejo/workflows/lint.yaml index 23bf6d2dc..d29fb6e13 100644 --- a/.forgejo/workflows/lint.yaml +++ b/.forgejo/workflows/lint.yaml @@ -24,7 +24,7 @@ jobs: # work in our environmnet. # Rather manually setup python (pip) before instead. - name: Run ansible-lint - uses: https://github.com/ansible/ansible-lint@v25.9.2 + uses: https://github.com/ansible/ansible-lint@v25.11.0 with: setup_python: "false" requirements_file: "requirements.yml" diff --git a/inventories/chaosknoten/host_vars/cloud.yaml b/inventories/chaosknoten/host_vars/cloud.yaml index 0cbcd4d16..fc4e23c2f 100644 --- a/inventories/chaosknoten/host_vars/cloud.yaml +++ b/inventories/chaosknoten/host_vars/cloud.yaml @@ -1,7 +1,7 @@ # renovate: datasource=docker depName=git.hamburg.ccc.de/ccchh/oci-images/nextcloud nextcloud__version: 32 # renovate: datasource=docker depName=docker.io/library/postgres -nextcloud__postgres_version: 15.14 +nextcloud__postgres_version: 15.15 nextcloud__fqdn: cloud.hamburg.ccc.de nextcloud__data_dir: /data/nextcloud nextcloud__extra_configuration: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/cloud/nextcloud/extra_configuration.config.php.j2') }}" diff --git a/inventories/chaosknoten/host_vars/netbox.yaml b/inventories/chaosknoten/host_vars/netbox.yaml index 60dd94ad7..3be8bdded 100644 --- a/inventories/chaosknoten/host_vars/netbox.yaml +++ b/inventories/chaosknoten/host_vars/netbox.yaml @@ -1,5 +1,5 @@ # renovate: datasource=github-releases depName=netbox packageName=netbox-community/netbox -netbox__version: "v4.4.5" +netbox__version: "v4.4.6" netbox__config: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/netbox/netbox/configuration.py.j2') }}" netbox__custom_pipeline_oidc_group_and_role_mapping: true diff --git a/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 b/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 index 74d791662..2d598f96e 100644 --- a/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 @@ -2,7 +2,7 @@ services: prometheus: - image: docker.io/prom/prometheus:v3.7.2 + image: docker.io/prom/prometheus:v3.7.3 container_name: prometheus command: - '--config.file=/etc/prometheus/prometheus.yml' @@ -19,7 +19,7 @@ services: - prom_data:/prometheus alertmanager: - image: docker.io/prom/alertmanager:v0.28.1 + image: docker.io/prom/alertmanager:v0.29.0 container_name: alertmanager command: - '--config.file=/etc/alertmanager/alertmanager.yaml' @@ -32,7 +32,7 @@ services: - alertmanager_data:/alertmanager grafana: - image: docker.io/grafana/grafana:12.2.1 + image: docker.io/grafana/grafana:12.3.0 container_name: grafana ports: - 3000:3000 @@ -59,7 +59,7 @@ services: - /dev/null:/etc/prometheus/pve.yml loki: - image: docker.io/grafana/loki:3.5.7 + image: docker.io/grafana/loki:3.6.0 container_name: loki ports: - 13100:3100 diff --git a/resources/chaosknoten/keycloak/docker_compose/compose.yaml.j2 b/resources/chaosknoten/keycloak/docker_compose/compose.yaml.j2 index 9fde70835..a260ab113 100644 --- a/resources/chaosknoten/keycloak/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/keycloak/docker_compose/compose.yaml.j2 @@ -46,7 +46,7 @@ services: - "8080:8080" db: - image: docker.io/library/postgres:15.14 + image: docker.io/library/postgres:15.15 restart: unless-stopped networks: - keycloak diff --git a/resources/chaosknoten/ntfy/docker_compose/compose.yaml.j2 b/resources/chaosknoten/ntfy/docker_compose/compose.yaml.j2 index 9fe2a7a66..50df05d56 100644 --- a/resources/chaosknoten/ntfy/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/ntfy/docker_compose/compose.yaml.j2 @@ -1,7 +1,7 @@ --- services: ntfy: - image: docker.io/binwiederhier/ntfy:v2.14.0 + image: docker.io/binwiederhier/ntfy:v2.15.0 container_name: ntfy command: - serve diff --git a/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 b/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 index 3de7eacaa..dda67bb06 100644 --- a/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 @@ -15,7 +15,7 @@ services: - pretalx_net redis: - image: docker.io/library/redis:8.2.2 + image: docker.io/library/redis:8.4.0 restart: unless-stopped volumes: - redis:/data diff --git a/resources/chaosknoten/tickets/docker_compose/compose.yaml.j2 b/resources/chaosknoten/tickets/docker_compose/compose.yaml.j2 index 6509a99c0..938883b0d 100644 --- a/resources/chaosknoten/tickets/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/tickets/docker_compose/compose.yaml.j2 @@ -13,7 +13,7 @@ services: restart: unless-stopped redis: - image: docker.io/library/redis:7.4.6 + image: docker.io/library/redis:7.4.7 ports: - "6379:6379" volumes: From df3710f0196206bbfae0996dcbc1ed7b9d8f09bf Mon Sep 17 00:00:00 2001 From: c6ristian Date: Tue, 2 Dec 2025 22:55:29 +0100 Subject: [PATCH 017/142] grafana: set alloy to version v1.11.3 1.12.0 is buggy --- inventories/chaosknoten/host_vars/grafana.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inventories/chaosknoten/host_vars/grafana.yaml b/inventories/chaosknoten/host_vars/grafana.yaml index 2e3672e29..0037fcc03 100644 --- a/inventories/chaosknoten/host_vars/grafana.yaml +++ b/inventories/chaosknoten/host_vars/grafana.yaml @@ -53,7 +53,7 @@ nginx__configurations: - name: metrics.hamburg.ccc.de content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf') }}" - +alloy_version: "1.11.3" alloy_config: | prometheus.remote_write "default" { endpoint { From c39cb0e3909ca53df08e6389603cfbb77e32da2b Mon Sep 17 00:00:00 2001 From: c6ristian Date: Sat, 6 Dec 2025 22:11:53 +0100 Subject: [PATCH 018/142] we dont need to set a specific alloy version --- inventories/chaosknoten/host_vars/grafana.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/inventories/chaosknoten/host_vars/grafana.yaml b/inventories/chaosknoten/host_vars/grafana.yaml index 0037fcc03..ecc942c8c 100644 --- a/inventories/chaosknoten/host_vars/grafana.yaml +++ b/inventories/chaosknoten/host_vars/grafana.yaml @@ -53,7 +53,6 @@ nginx__configurations: - name: metrics.hamburg.ccc.de content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf') }}" -alloy_version: "1.11.3" alloy_config: | prometheus.remote_write "default" { endpoint { From 766aa125c4da85009ae7d3023be55dbc37c47d65 Mon Sep 17 00:00:00 2001 From: jtbx Date: Sun, 23 Feb 2025 18:49:19 +0100 Subject: [PATCH 019/142] router(host): introduce router --- inventories/chaosknoten/hosts.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index b9e6358b5..e668d4985 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -51,6 +51,9 @@ all: public-reverse-proxy: ansible_host: public-reverse-proxy.hamburg.ccc.de ansible_user: chaos + router: + ansible_host: router.hamburg.ccc.de + ansible_user: chaos wiki: ansible_host: wiki-intern.hamburg.ccc.de ansible_user: chaos @@ -88,6 +91,7 @@ base_config_hosts: pad: pretalx: public-reverse-proxy: + router: tickets: wiki: zammad: @@ -173,6 +177,7 @@ infrastructure_authorized_keys_hosts: pad: pretalx: public-reverse-proxy: + router: wiki: zammad: ntfy: From d6ba70523cd45b95845acb49741bbaa699703994 Mon Sep 17 00:00:00 2001 From: June Date: Sat, 20 Sep 2025 20:05:02 +0200 Subject: [PATCH 020/142] systemd_networkd(role): introd. role for deploy. systemd-networkd config --- inventories/chaosknoten/hosts.yaml | 2 ++ playbooks/deploy.yaml | 5 +++++ roles/systemd_networkd/README.md | 11 +++++++++++ roles/systemd_networkd/meta/argument_specs.yaml | 6 ++++++ roles/systemd_networkd/tasks/main.yaml | 14 ++++++++++++++ 5 files changed, 38 insertions(+) create mode 100644 roles/systemd_networkd/README.md create mode 100644 roles/systemd_networkd/meta/argument_specs.yaml create mode 100644 roles/systemd_networkd/tasks/main.yaml diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index e668d4985..51d2b5624 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -98,6 +98,8 @@ base_config_hosts: ntfy: sunders: renovate: +systemd_networkd_hosts: + hosts: docker_compose_hosts: hosts: ccchoir: diff --git a/playbooks/deploy.yaml b/playbooks/deploy.yaml index d7bacac23..ec7db509d 100644 --- a/playbooks/deploy.yaml +++ b/playbooks/deploy.yaml @@ -4,6 +4,11 @@ roles: - base_config +- name: Ensure systemd-networkd config deployment on systemd_networkd_hosts + hosts: systemd_networkd_hosts + roles: + - systemd_networkd + - name: Ensure deployment of infrastructure authorized keys hosts: infrastructure_authorized_keys_hosts roles: diff --git a/roles/systemd_networkd/README.md b/roles/systemd_networkd/README.md new file mode 100644 index 000000000..3297c47ed --- /dev/null +++ b/roles/systemd_networkd/README.md @@ -0,0 +1,11 @@ +# Role `systemd_networkd` + +Deploys the given systemd-networkd configuration files. + +## Support Distributions + +Should work on Debian-based distributions. + +## Required Arguments + +- `systemd_networkd__config_dir`: Directory with systemd-networkd configs to deploy. diff --git a/roles/systemd_networkd/meta/argument_specs.yaml b/roles/systemd_networkd/meta/argument_specs.yaml new file mode 100644 index 000000000..81b046a59 --- /dev/null +++ b/roles/systemd_networkd/meta/argument_specs.yaml @@ -0,0 +1,6 @@ +argument_specs: + main: + options: + systemd_networkd__config_dir: + type: path + required: true diff --git a/roles/systemd_networkd/tasks/main.yaml b/roles/systemd_networkd/tasks/main.yaml new file mode 100644 index 000000000..f88ed1468 --- /dev/null +++ b/roles/systemd_networkd/tasks/main.yaml @@ -0,0 +1,14 @@ +- name: ensure rsync is installed + ansible.builtin.apt: + name: rsync + state: present + become: true + +- name: synchronize systemd-networkd configs + ansible.posix.synchronize: + src: "{{ systemd_networkd__config_dir }}" + dest: "/etc/systemd/network" + archive: false + recursive: true + delete: true + become: true From a9e394da063211b91f6c120dfa5a30f52aac64ad Mon Sep 17 00:00:00 2001 From: June Date: Sat, 20 Sep 2025 20:03:30 +0200 Subject: [PATCH 021/142] router(host): add systemd-networkd-based network config --- inventories/chaosknoten/host_vars/router.yaml | 1 + inventories/chaosknoten/hosts.yaml | 1 + .../router/systemd_networkd/00-net0.link | 6 ++++ .../router/systemd_networkd/00-net1.link | 6 ++++ .../router/systemd_networkd/00-net2.link | 6 ++++ .../systemd_networkd/10-net0.2-v4_nat.netdev | 7 +++++ .../10-net0.3-ci_runner.netdev | 7 +++++ .../router/systemd_networkd/20-net0.network | 12 ++++++++ .../router/systemd_networkd/20-net1.network | 14 +++++++++ .../router/systemd_networkd/20-net2.network | 14 +++++++++ .../systemd_networkd/21-net0.2-v4_nat.network | 23 +++++++++++++++ .../21-net0.3-ci_runners.network | 29 +++++++++++++++++++ 12 files changed, 126 insertions(+) create mode 100644 inventories/chaosknoten/host_vars/router.yaml create mode 100644 resources/chaosknoten/router/systemd_networkd/00-net0.link create mode 100644 resources/chaosknoten/router/systemd_networkd/00-net1.link create mode 100644 resources/chaosknoten/router/systemd_networkd/00-net2.link create mode 100644 resources/chaosknoten/router/systemd_networkd/10-net0.2-v4_nat.netdev create mode 100644 resources/chaosknoten/router/systemd_networkd/10-net0.3-ci_runner.netdev create mode 100644 resources/chaosknoten/router/systemd_networkd/20-net0.network create mode 100644 resources/chaosknoten/router/systemd_networkd/20-net1.network create mode 100644 resources/chaosknoten/router/systemd_networkd/20-net2.network create mode 100644 resources/chaosknoten/router/systemd_networkd/21-net0.2-v4_nat.network create mode 100644 resources/chaosknoten/router/systemd_networkd/21-net0.3-ci_runners.network diff --git a/inventories/chaosknoten/host_vars/router.yaml b/inventories/chaosknoten/host_vars/router.yaml new file mode 100644 index 000000000..b181c0a6c --- /dev/null +++ b/inventories/chaosknoten/host_vars/router.yaml @@ -0,0 +1 @@ +systemd_networkd__config_dir: 'resources/chaosknoten/router/systemd_networkd/' diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 51d2b5624..d3217ab61 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -100,6 +100,7 @@ base_config_hosts: renovate: systemd_networkd_hosts: hosts: + router: docker_compose_hosts: hosts: ccchoir: diff --git a/resources/chaosknoten/router/systemd_networkd/00-net0.link b/resources/chaosknoten/router/systemd_networkd/00-net0.link new file mode 100644 index 000000000..0c55d133b --- /dev/null +++ b/resources/chaosknoten/router/systemd_networkd/00-net0.link @@ -0,0 +1,6 @@ +[Match] +MACAddress=BC:24:11:54:11:15 +Type=ether + +[Link] +Name=net0 diff --git a/resources/chaosknoten/router/systemd_networkd/00-net1.link b/resources/chaosknoten/router/systemd_networkd/00-net1.link new file mode 100644 index 000000000..ef04d0433 --- /dev/null +++ b/resources/chaosknoten/router/systemd_networkd/00-net1.link @@ -0,0 +1,6 @@ +[Match] +MACAddress=BC:24:11:9A:FB:34 +Type=ether + +[Link] +Name=net1 diff --git a/resources/chaosknoten/router/systemd_networkd/00-net2.link b/resources/chaosknoten/router/systemd_networkd/00-net2.link new file mode 100644 index 000000000..2a56f7288 --- /dev/null +++ b/resources/chaosknoten/router/systemd_networkd/00-net2.link @@ -0,0 +1,6 @@ +[Match] +MACAddress=BC:24:11:AE:C7:04 +Type=ether + +[Link] +Name=net2 diff --git a/resources/chaosknoten/router/systemd_networkd/10-net0.2-v4_nat.netdev b/resources/chaosknoten/router/systemd_networkd/10-net0.2-v4_nat.netdev new file mode 100644 index 000000000..a46afb49f --- /dev/null +++ b/resources/chaosknoten/router/systemd_networkd/10-net0.2-v4_nat.netdev @@ -0,0 +1,7 @@ +[NetDev] +Name=net0.2 +Kind=vlan + +[VLAN] +Id=2 + diff --git a/resources/chaosknoten/router/systemd_networkd/10-net0.3-ci_runner.netdev b/resources/chaosknoten/router/systemd_networkd/10-net0.3-ci_runner.netdev new file mode 100644 index 000000000..0cd60db52 --- /dev/null +++ b/resources/chaosknoten/router/systemd_networkd/10-net0.3-ci_runner.netdev @@ -0,0 +1,7 @@ +[NetDev] +Name=net0.3 +Kind=vlan + +[VLAN] +Id=3 + diff --git a/resources/chaosknoten/router/systemd_networkd/20-net0.network b/resources/chaosknoten/router/systemd_networkd/20-net0.network new file mode 100644 index 000000000..a32d75ea0 --- /dev/null +++ b/resources/chaosknoten/router/systemd_networkd/20-net0.network @@ -0,0 +1,12 @@ +[Match] +Name=net0 + +[Link] +RequiredForOnline=no + +[Network] +VLAN=net0.2 +VLAN=net0.3 + +LinkLocalAddressing=no + diff --git a/resources/chaosknoten/router/systemd_networkd/20-net1.network b/resources/chaosknoten/router/systemd_networkd/20-net1.network new file mode 100644 index 000000000..c8bffc1eb --- /dev/null +++ b/resources/chaosknoten/router/systemd_networkd/20-net1.network @@ -0,0 +1,14 @@ +[Match] +Name=net1 + +[Network] +DNS=212.12.50.158 +IPForward=ipv4 +IPv6AcceptRA=no + +[Address] +Address=212.12.48.123/24 + +[Route] +Gateway=212.12.48.55 + diff --git a/resources/chaosknoten/router/systemd_networkd/20-net2.network b/resources/chaosknoten/router/systemd_networkd/20-net2.network new file mode 100644 index 000000000..b3f497dde --- /dev/null +++ b/resources/chaosknoten/router/systemd_networkd/20-net2.network @@ -0,0 +1,14 @@ +[Match] +Name=net2 + +[Network] +#DNS=212.12.50.158 +IPForward=ipv6 +IPv6AcceptRA=no + +[Address] +Address=2a00:14b0:4200:3500::130:2/112 + +[Route] +Gateway=2a00:14b0:4200:3500::130:1 + diff --git a/resources/chaosknoten/router/systemd_networkd/21-net0.2-v4_nat.network b/resources/chaosknoten/router/systemd_networkd/21-net0.2-v4_nat.network new file mode 100644 index 000000000..880dd1dfa --- /dev/null +++ b/resources/chaosknoten/router/systemd_networkd/21-net0.2-v4_nat.network @@ -0,0 +1,23 @@ +[Match] +Name=net0.2 +Type=vlan + +[Link] +RequiredForOnline=no + +[Network] +Description=v4-NAT + +IPMasquerade=ipv4 +IPv6SendRA=yes + +[Address] +Address=10.32.2.1/24 + +[IPv6SendRA] +UplinkInterface=net2 + +[IPv6Prefix] +Prefix=2a00:14b0:42:102::/64 +Assign=true +Token=static:::1 diff --git a/resources/chaosknoten/router/systemd_networkd/21-net0.3-ci_runners.network b/resources/chaosknoten/router/systemd_networkd/21-net0.3-ci_runners.network new file mode 100644 index 000000000..6f73beb20 --- /dev/null +++ b/resources/chaosknoten/router/systemd_networkd/21-net0.3-ci_runners.network @@ -0,0 +1,29 @@ +[Match] +Name=net0.3 +Type=vlan + +[Link] +RequiredForOnline=no + +[Network] +Description=ci-runners + +IPMasquerade=ipv4 +IPv6SendRA=yes + +DHCPServer=true + +[DHCPServer] +PoolOffset=100 +PoolSize=150 + +[Address] +Address=10.32.3.1/24 + +[IPv6SendRA] +UplinkInterface=net2 + +[IPv6Prefix] +Prefix=2a00:14b0:42:103::/64 +Assign=true +Token=static:::1 From d0618e382050aeabb4d50942df03d89bfb16f91a Mon Sep 17 00:00:00 2001 From: June Date: Sat, 20 Sep 2025 21:38:39 +0200 Subject: [PATCH 022/142] nftables(role): introduce role for deploying nftables --- inventories/chaosknoten/hosts.yaml | 2 ++ playbooks/deploy.yaml | 5 +++++ roles/nftables/README.md | 11 +++++++++++ roles/nftables/handlers/main.yaml | 5 +++++ roles/nftables/meta/argument_specs.yaml | 6 ++++++ roles/nftables/tasks/main.yaml | 15 +++++++++++++++ 6 files changed, 44 insertions(+) create mode 100644 roles/nftables/README.md create mode 100644 roles/nftables/handlers/main.yaml create mode 100644 roles/nftables/meta/argument_specs.yaml create mode 100644 roles/nftables/tasks/main.yaml diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index d3217ab61..55ab6967d 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -101,6 +101,8 @@ base_config_hosts: systemd_networkd_hosts: hosts: router: +nftables_hosts: + hosts: docker_compose_hosts: hosts: ccchoir: diff --git a/playbooks/deploy.yaml b/playbooks/deploy.yaml index ec7db509d..f416b914a 100644 --- a/playbooks/deploy.yaml +++ b/playbooks/deploy.yaml @@ -9,6 +9,11 @@ roles: - systemd_networkd +- name: Ensure nftables deployment on nftables_hosts + hosts: nftables_hosts + roles: + - nftables + - name: Ensure deployment of infrastructure authorized keys hosts: infrastructure_authorized_keys_hosts roles: diff --git a/roles/nftables/README.md b/roles/nftables/README.md new file mode 100644 index 000000000..81d8871a9 --- /dev/null +++ b/roles/nftables/README.md @@ -0,0 +1,11 @@ +# Role `nftables` + +Deploys nftables. + +## Support Distributions + +Should work on Debian-based distributions. + +## Required Arguments + +- `nftables__config`: nftables configuration to deploy. diff --git a/roles/nftables/handlers/main.yaml b/roles/nftables/handlers/main.yaml new file mode 100644 index 000000000..3b72c54cd --- /dev/null +++ b/roles/nftables/handlers/main.yaml @@ -0,0 +1,5 @@ +- name: Restart nftables service + ansible.builtin.systemd_service: + name: nftables + state: restarted + become: true diff --git a/roles/nftables/meta/argument_specs.yaml b/roles/nftables/meta/argument_specs.yaml new file mode 100644 index 000000000..aa5622394 --- /dev/null +++ b/roles/nftables/meta/argument_specs.yaml @@ -0,0 +1,6 @@ +argument_specs: + main: + options: + nftables__config: + type: str + required: true diff --git a/roles/nftables/tasks/main.yaml b/roles/nftables/tasks/main.yaml new file mode 100644 index 000000000..46ea18dc7 --- /dev/null +++ b/roles/nftables/tasks/main.yaml @@ -0,0 +1,15 @@ +- name: ensure nftables is installed + ansible.builtin.apt: + name: nftables + state: present + become: true + +- name: deploy nftables configuration + ansible.builtin.copy: + content: "{{ nftables__config }}" + dest: "/etc/nftables.conf" + mode: "0644" + owner: root + group: root + become: true + notify: Restart nftables service From 183b91b9f2d289fcbde59687f476632cef024250 Mon Sep 17 00:00:00 2001 From: June Date: Sat, 20 Sep 2025 23:34:17 +0200 Subject: [PATCH 023/142] router(host): add nftables config for basic router functionality --- inventories/chaosknoten/host_vars/router.yaml | 1 + inventories/chaosknoten/hosts.yaml | 1 + .../chaosknoten/router/nftables/nftables.conf | 73 +++++++++++++++++++ .../systemd_networkd/21-net0.2-v4_nat.network | 2 +- .../21-net0.3-ci_runners.network | 2 +- 5 files changed, 77 insertions(+), 2 deletions(-) create mode 100644 resources/chaosknoten/router/nftables/nftables.conf diff --git a/inventories/chaosknoten/host_vars/router.yaml b/inventories/chaosknoten/host_vars/router.yaml index b181c0a6c..134d29f9b 100644 --- a/inventories/chaosknoten/host_vars/router.yaml +++ b/inventories/chaosknoten/host_vars/router.yaml @@ -1 +1,2 @@ systemd_networkd__config_dir: 'resources/chaosknoten/router/systemd_networkd/' +nftables__config: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/router/nftables/nftables.conf') }}" diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 55ab6967d..e592d2358 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -103,6 +103,7 @@ systemd_networkd_hosts: router: nftables_hosts: hosts: + router: docker_compose_hosts: hosts: ccchoir: diff --git a/resources/chaosknoten/router/nftables/nftables.conf b/resources/chaosknoten/router/nftables/nftables.conf new file mode 100644 index 000000000..6bc6cbe39 --- /dev/null +++ b/resources/chaosknoten/router/nftables/nftables.conf @@ -0,0 +1,73 @@ +#!/usr/sbin/nft -f + +## Variables + +# Interfaces +define if_net1_v4_wan = "net1" +define if_net2_v6_wan = "net2" +define if_net0_2_v4_nat = "net0.2" +define if_net0_3_ci_runner = "net0.3" + +# Interface Groups +define wan_ifs = { $if_net1_v4_wan, + $if_net2_v6_wan } +define lan_ifs = { $if_net0_2_v4_nat, + $if_net0_3_ci_runner } + + +## Rules + +table inet reverse-path-forwarding { + chain rpf-filter { + type filter hook prerouting priority mangle + 10; policy drop; + + # Only allow packets if their source address is routed via their incoming interface. + # https://github.com/NixOS/nixpkgs/blob/d9d87c51960050e89c79e4025082ed965e770d68/nixos/modules/services/networking/firewall-nftables.nix#L100 + fib saddr . mark . iif oif exists accept + } +} + +table inet host { + chain input { + type filter hook input priority filter; policy drop; + + iifname "lo" accept comment "allow loopback" + + ct state invalid drop + ct state established,related accept + + ip protocol icmp accept + ip6 nexthdr icmpv6 accept + + # Allow SSH access. + tcp dport 22 accept comment "allow ssh access" + + # Allow DHCP server access. + iifname $if_net0_3_ci_runner udp dport 67 accept comment "allow dhcp server access" + } +} + +table ip v4nat { + chain prerouting { + type nat hook prerouting priority dstnat; policy accept; + } + + chain postrouting { + type nat hook postrouting priority srcnat; policy accept; + + oifname $if_net1_v4_wan masquerade + } +} + +table inet forward { + chain forward { + type filter hook forward priority filter; policy drop; + + ct state invalid drop + ct state established,related accept + + # Allow internet access. + meta nfproto ipv6 iifname $lan_ifs oifname $if_net2_v6_wan accept comment "allow v6 internet access" + meta nfproto ipv4 iifname $lan_ifs oifname $if_net1_v4_wan accept comment "allow v4 internet access" + } +} diff --git a/resources/chaosknoten/router/systemd_networkd/21-net0.2-v4_nat.network b/resources/chaosknoten/router/systemd_networkd/21-net0.2-v4_nat.network index 880dd1dfa..c7fd9a7e8 100644 --- a/resources/chaosknoten/router/systemd_networkd/21-net0.2-v4_nat.network +++ b/resources/chaosknoten/router/systemd_networkd/21-net0.2-v4_nat.network @@ -8,7 +8,7 @@ RequiredForOnline=no [Network] Description=v4-NAT -IPMasquerade=ipv4 +# Masquerading done in nftables (nftables.conf). IPv6SendRA=yes [Address] diff --git a/resources/chaosknoten/router/systemd_networkd/21-net0.3-ci_runners.network b/resources/chaosknoten/router/systemd_networkd/21-net0.3-ci_runners.network index 6f73beb20..9caca86c9 100644 --- a/resources/chaosknoten/router/systemd_networkd/21-net0.3-ci_runners.network +++ b/resources/chaosknoten/router/systemd_networkd/21-net0.3-ci_runners.network @@ -8,7 +8,7 @@ RequiredForOnline=no [Network] Description=ci-runners -IPMasquerade=ipv4 +# Masquerading done in nftables (nftables.conf). IPv6SendRA=yes DHCPServer=true From 66ee44366b5e08b2368b82a25c1b1b4cd0882ff5 Mon Sep 17 00:00:00 2001 From: jtbx Date: Sun, 14 Dec 2025 15:39:03 +0100 Subject: [PATCH 024/142] public-reverse-proxy: New IP of wiki VM --- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index 4a449f5b0..de8ebdd9a 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -27,8 +27,8 @@ stream { invite.hamburg.ccc.de 172.31.17.144:8443; keycloak-admin.hamburg.ccc.de 172.31.17.144:8444; grafana.hamburg.ccc.de 172.31.17.145:8443; - wiki.ccchh.net 172.31.17.146:8443; - wiki.hamburg.ccc.de 172.31.17.146:8443; + wiki.ccchh.net wiki.hosts.hamburg.ccc.de:8443; + wiki.hamburg.ccc.de wiki.hosts.hamburg.ccc.de:8443; onlyoffice.hamburg.ccc.de 172.31.17.147:8443; hackertours.hamburg.ccc.de 172.31.17.151:8443; staging.hackertours.hamburg.ccc.de 172.31.17.151:8443; From 5f98dca56c258b10c58c7efced616867f56de551 Mon Sep 17 00:00:00 2001 From: June Date: Tue, 16 Dec 2025 19:03:36 +0100 Subject: [PATCH 025/142] router(host): expose public v6 networks Also prepare for exposing public v4 networks later. --- resources/chaosknoten/router/nftables/nftables.conf | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/resources/chaosknoten/router/nftables/nftables.conf b/resources/chaosknoten/router/nftables/nftables.conf index 6bc6cbe39..6d04a4c42 100644 --- a/resources/chaosknoten/router/nftables/nftables.conf +++ b/resources/chaosknoten/router/nftables/nftables.conf @@ -13,6 +13,8 @@ define wan_ifs = { $if_net1_v4_wan, $if_net2_v6_wan } define lan_ifs = { $if_net0_2_v4_nat, $if_net0_3_ci_runner } +# define v4_exposed_ifs = { } +define v6_exposed_ifs = { $if_net0_2_v4_nat } ## Rules @@ -69,5 +71,9 @@ table inet forward { # Allow internet access. meta nfproto ipv6 iifname $lan_ifs oifname $if_net2_v6_wan accept comment "allow v6 internet access" meta nfproto ipv4 iifname $lan_ifs oifname $if_net1_v4_wan accept comment "allow v4 internet access" + + # Allow access to exposed networks from internet. + # meta nfproto ipv4 oifname $v4_exposed_ifs accept comment "allow v4 exposed network access" + meta nfproto ipv6 oifname $v6_exposed_ifs accept comment "allow v6 exposed network access" } } From 8b94a49f5e3255377f349087b1e224903696329a Mon Sep 17 00:00:00 2001 From: June Date: Tue, 16 Dec 2025 19:23:33 +0100 Subject: [PATCH 026/142] wiki(host): move to new network and internal hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- .../public-reverse-proxy/nginx/acme_challenge.conf | 4 ++-- resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf | 4 ++-- resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index e592d2358..a43e94086 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -55,9 +55,9 @@ all: ansible_host: router.hamburg.ccc.de ansible_user: chaos wiki: - ansible_host: wiki-intern.hamburg.ccc.de + ansible_host: wiki.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de zammad: ansible_host: zammad-intern.hamburg.ccc.de ansible_user: chaos diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 165e1664b..dabf4aafc 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -25,8 +25,8 @@ map $host $upstream_acme_challenge_host { pretalx.hamburg.ccc.de 172.31.17.157:31820; spaceapi.hamburg.ccc.de 172.31.17.151:31820; staging.hamburg.ccc.de 172.31.17.151:31820; - wiki.ccchh.net 172.31.17.146:31820; - wiki.hamburg.ccc.de 172.31.17.146:31820; + wiki.ccchh.net wiki.hosts.hamburg.ccc.de:31820; + wiki.hamburg.ccc.de wiki.hosts.hamburg.ccc.de:31820; www.hamburg.ccc.de 172.31.17.151:31820; tickets.hamburg.ccc.de 172.31.17.148:31820; sunders.hamburg.ccc.de 172.31.17.170:31820; diff --git a/resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf b/resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf index a564fc2fa..c393dd123 100644 --- a/resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf +++ b/resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf @@ -7,7 +7,7 @@ server { # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; @@ -21,6 +21,6 @@ server { # HSTS (ngx_http_headers_module is required) (63072000 seconds) add_header Strict-Transport-Security "max-age=63072000" always; - + return 302 https://wiki.hamburg.ccc.de$request_uri; } diff --git a/resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf b/resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf index ccdd2247c..255dc0a6f 100644 --- a/resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf +++ b/resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf @@ -7,7 +7,7 @@ server { # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; From b72dee0d6d9e0cfe9c3aea5143fe8c8cfe463604 Mon Sep 17 00:00:00 2001 From: June Date: Tue, 16 Dec 2025 19:52:24 +0100 Subject: [PATCH 027/142] wiki(host): actually have nginx listen on v6 --- resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf | 1 + resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf | 1 + 2 files changed, 2 insertions(+) diff --git a/resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf b/resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf index c393dd123..472236ae0 100644 --- a/resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf +++ b/resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf @@ -3,6 +3,7 @@ server { # Listen on a custom port for the proxy protocol. listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. diff --git a/resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf b/resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf index 255dc0a6f..b4eab7ffb 100644 --- a/resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf +++ b/resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf @@ -3,6 +3,7 @@ server { # Listen on a custom port for the proxy protocol. listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. From 5a476f21034dd48c3a6b17758be92d3dfe9f62f0 Mon Sep 17 00:00:00 2001 From: June Date: Tue, 16 Dec 2025 20:47:44 +0100 Subject: [PATCH 028/142] cloud(host): move to new network and hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- .../public-reverse-proxy/nginx/acme_challenge.conf | 2 +- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 2 +- roles/nextcloud/templates/nginx_nextcloud.conf.j2 | 1 + 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index a43e94086..5aa1363c4 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -7,9 +7,9 @@ all: chaosknoten: ansible_host: chaosknoten.hamburg.ccc.de cloud: - ansible_host: cloud-intern.hamburg.ccc.de + ansible_host: cloud.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de eh22-wiki: ansible_host: eh22-wiki-intern.hamburg.ccc.de ansible_user: chaos diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index dabf4aafc..9fdf0fc69 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -6,7 +6,7 @@ map $host $upstream_acme_challenge_host { staging.c3cat.de 172.31.17.151:31820; ccchoir.de ccchoir-intern.hamburg.ccc.de:31820; www.ccchoir.de ccchoir-intern.hamburg.ccc.de:31820; - cloud.hamburg.ccc.de 172.31.17.143:31820; + cloud.hamburg.ccc.de cloud.hosts.hamburg.ccc.de:31820; element.hamburg.ccc.de 172.31.17.151:31820; git.hamburg.ccc.de 172.31.17.154:31820; grafana.hamburg.ccc.de 172.31.17.145:31820; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index de8ebdd9a..84c1187e9 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -20,7 +20,7 @@ stream { map $ssl_preread_server_name $address { ccchoir.de ccchoir-intern.hamburg.ccc.de:8443; www.ccchoir.de ccchoir-intern.hamburg.ccc.de:8443; - cloud.hamburg.ccc.de cloud-intern.hamburg.ccc.de:8443; + cloud.hamburg.ccc.de cloud.hosts.hamburg.ccc.de:8443; pad.hamburg.ccc.de pad-intern.hamburg.ccc.de:8443; pretalx.hamburg.ccc.de pretalx-intern.hamburg.ccc.de:8443; id.hamburg.ccc.de 172.31.17.144:8443; diff --git a/roles/nextcloud/templates/nginx_nextcloud.conf.j2 b/roles/nextcloud/templates/nginx_nextcloud.conf.j2 index c15a65391..1beeaf3f9 100644 --- a/roles/nextcloud/templates/nginx_nextcloud.conf.j2 +++ b/roles/nextcloud/templates/nginx_nextcloud.conf.j2 @@ -4,6 +4,7 @@ server { # Listen on a custom port for the proxy protocol. listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. From 570600fce31e2df5fe2f11beedbe56cabffe377f Mon Sep 17 00:00:00 2001 From: June Date: Tue, 16 Dec 2025 20:58:05 +0100 Subject: [PATCH 029/142] eh22-wiki(host): move to new network and hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- resources/chaosknoten/eh22-wiki/nginx/eh22.easterhegg.eu.conf | 3 ++- .../public-reverse-proxy/nginx/acme_challenge.conf | 2 +- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 2 +- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 5aa1363c4..c18788ec8 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -11,9 +11,9 @@ all: ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de eh22-wiki: - ansible_host: eh22-wiki-intern.hamburg.ccc.de + ansible_host: eh22-wiki.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de grafana: ansible_host: grafana-intern.hamburg.ccc.de ansible_user: chaos diff --git a/resources/chaosknoten/eh22-wiki/nginx/eh22.easterhegg.eu.conf b/resources/chaosknoten/eh22-wiki/nginx/eh22.easterhegg.eu.conf index d3ed95928..8c801fe76 100644 --- a/resources/chaosknoten/eh22-wiki/nginx/eh22.easterhegg.eu.conf +++ b/resources/chaosknoten/eh22-wiki/nginx/eh22.easterhegg.eu.conf @@ -3,11 +3,12 @@ server { # Listen on a custom port for the proxy protocol. listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 9fdf0fc69..290dbad1a 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -38,7 +38,7 @@ map $host $upstream_acme_challenge_host { eh11.easterhegg.eu 172.31.17.151:31820; eh20.easterhegg.eu 172.31.17.151:31820; www.eh20.easterhegg.eu 172.31.17.151:31820; - eh22.easterhegg.eu 172.31.17.165:31820; + eh22.easterhegg.eu eh22-wiki.hosts.hamburg.ccc.de:31820; easterheggxxxx.hamburg.ccc.de 172.31.17.151:31820; eh2003.hamburg.ccc.de 172.31.17.151:31820; www.eh2003.hamburg.ccc.de 172.31.17.151:31820; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index 84c1187e9..076618ad2 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -56,7 +56,7 @@ stream { eh11.easterhegg.eu 172.31.17.151:8443; eh20.easterhegg.eu 172.31.17.151:8443; www.eh20.easterhegg.eu 172.31.17.151:8443; - eh22.easterhegg.eu 172.31.17.165:8443; + eh22.easterhegg.eu eh22-wiki.hosts.hamburg.ccc.de:8443; easterheggxxxx.hamburg.ccc.de 172.31.17.151:8443; eh2003.hamburg.ccc.de 172.31.17.151:8443; www.eh2003.hamburg.ccc.de 172.31.17.151:8443; From b9add5bda3957778dba8b3b5849a82e625ce0609 Mon Sep 17 00:00:00 2001 From: June Date: Tue, 16 Dec 2025 20:59:15 +0100 Subject: [PATCH 030/142] cloud(host): set correct new proxy protocol reverse proxy ip --- inventories/chaosknoten/host_vars/cloud.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inventories/chaosknoten/host_vars/cloud.yaml b/inventories/chaosknoten/host_vars/cloud.yaml index fc4e23c2f..b6cf77155 100644 --- a/inventories/chaosknoten/host_vars/cloud.yaml +++ b/inventories/chaosknoten/host_vars/cloud.yaml @@ -7,5 +7,5 @@ nextcloud__data_dir: /data/nextcloud nextcloud__extra_configuration: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/cloud/nextcloud/extra_configuration.config.php.j2') }}" nextcloud__use_custom_new_user_skeleton: true nextcloud__custom_new_user_skeleton_directory: "resources/chaosknoten/cloud/nextcloud/new_user_skeleton_directory/" -nextcloud__proxy_protocol_reverse_proxy_ip: 172.31.17.140 +nextcloud__proxy_protocol_reverse_proxy_ip: "2a00:14b0:4200:3000:125::1" nextcloud__certbot_acme_account_email_address: le-admin@hamburg.ccc.de From 1ca71a053e4f554ae8e1e53bc2accbe124afe78e Mon Sep 17 00:00:00 2001 From: June Date: Tue, 16 Dec 2025 21:12:21 +0100 Subject: [PATCH 031/142] pad(host): move to new network and hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- resources/chaosknoten/pad/nginx/pad.hamburg.ccc.de.conf | 3 ++- .../public-reverse-proxy/nginx/acme_challenge.conf | 2 +- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 2 +- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index c18788ec8..3d6770745 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -41,9 +41,9 @@ all: ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de pad: - ansible_host: pad-intern.hamburg.ccc.de + ansible_host: pad.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de pretalx: ansible_host: pretalx-intern.hamburg.ccc.de ansible_user: chaos diff --git a/resources/chaosknoten/pad/nginx/pad.hamburg.ccc.de.conf b/resources/chaosknoten/pad/nginx/pad.hamburg.ccc.de.conf index 53d0a0df2..6c453d1b9 100644 --- a/resources/chaosknoten/pad/nginx/pad.hamburg.ccc.de.conf +++ b/resources/chaosknoten/pad/nginx/pad.hamburg.ccc.de.conf @@ -3,11 +3,12 @@ server { # Listen on a custom port for the proxy protocol. listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 290dbad1a..6899c57ad 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -21,7 +21,7 @@ map $host $upstream_acme_challenge_host { element-admin.hamburg.ccc.de 172.31.17.151:31820; netbox.hamburg.ccc.de 172.31.17.167:31820; onlyoffice.hamburg.ccc.de 172.31.17.147:31820; - pad.hamburg.ccc.de 172.31.17.141:31820; + pad.hamburg.ccc.de pad.hosts.hamburg.ccc.de:31820; pretalx.hamburg.ccc.de 172.31.17.157:31820; spaceapi.hamburg.ccc.de 172.31.17.151:31820; staging.hamburg.ccc.de 172.31.17.151:31820; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index 076618ad2..d884bc119 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -21,7 +21,7 @@ stream { ccchoir.de ccchoir-intern.hamburg.ccc.de:8443; www.ccchoir.de ccchoir-intern.hamburg.ccc.de:8443; cloud.hamburg.ccc.de cloud.hosts.hamburg.ccc.de:8443; - pad.hamburg.ccc.de pad-intern.hamburg.ccc.de:8443; + pad.hamburg.ccc.de pad.hosts.hamburg.ccc.de:8443; pretalx.hamburg.ccc.de pretalx-intern.hamburg.ccc.de:8443; id.hamburg.ccc.de 172.31.17.144:8443; invite.hamburg.ccc.de 172.31.17.144:8443; From 366456eff8f5280b14d755aefbf8c0abda567fc0 Mon Sep 17 00:00:00 2001 From: June Date: Tue, 16 Dec 2025 21:50:40 +0100 Subject: [PATCH 032/142] keycloak(host): move to new network and hostname Also just listen on port 8443 for keycloak-admin proxy protocol. --- inventories/chaosknoten/hosts.yaml | 4 ++-- resources/chaosknoten/keycloak/nginx/id.hamburg.ccc.de.conf | 3 ++- .../chaosknoten/keycloak/nginx/invite.hamburg.ccc.de.conf | 3 ++- .../keycloak/nginx/keycloak-admin.hamburg.ccc.de.conf | 5 +++-- .../public-reverse-proxy/nginx/acme_challenge.conf | 6 +++--- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 6 +++--- 6 files changed, 15 insertions(+), 12 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 3d6770745..dfa841e75 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -23,9 +23,9 @@ all: ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de keycloak: - ansible_host: keycloak-intern.hamburg.ccc.de + ansible_host: keycloak.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de lists: ansible_host: lists.hamburg.ccc.de ansible_user: chaos diff --git a/resources/chaosknoten/keycloak/nginx/id.hamburg.ccc.de.conf b/resources/chaosknoten/keycloak/nginx/id.hamburg.ccc.de.conf index 303b052c4..939e1da51 100644 --- a/resources/chaosknoten/keycloak/nginx/id.hamburg.ccc.de.conf +++ b/resources/chaosknoten/keycloak/nginx/id.hamburg.ccc.de.conf @@ -4,11 +4,12 @@ server { # Listen on a custom port for the proxy protocol. listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/keycloak/nginx/invite.hamburg.ccc.de.conf b/resources/chaosknoten/keycloak/nginx/invite.hamburg.ccc.de.conf index 4a9cfe654..de1e9d6f9 100644 --- a/resources/chaosknoten/keycloak/nginx/invite.hamburg.ccc.de.conf +++ b/resources/chaosknoten/keycloak/nginx/invite.hamburg.ccc.de.conf @@ -4,11 +4,12 @@ server { # Listen on a custom port for the proxy protocol. listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/keycloak/nginx/keycloak-admin.hamburg.ccc.de.conf b/resources/chaosknoten/keycloak/nginx/keycloak-admin.hamburg.ccc.de.conf index 2b0d919ad..cd56b98fe 100644 --- a/resources/chaosknoten/keycloak/nginx/keycloak-admin.hamburg.ccc.de.conf +++ b/resources/chaosknoten/keycloak/nginx/keycloak-admin.hamburg.ccc.de.conf @@ -7,12 +7,13 @@ server { ##listen [::]:443 ssl http2; # Listen on a custom port for the proxy protocol. - listen 8444 ssl http2 proxy_protocol; + listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 6899c57ad..4d6d4c0a4 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -13,9 +13,9 @@ map $host $upstream_acme_challenge_host { hackertours.hamburg.ccc.de 172.31.17.151:31820; staging.hackertours.hamburg.ccc.de 172.31.17.151:31820; hamburg.ccc.de 172.31.17.151:31820; - id.hamburg.ccc.de 172.31.17.144:31820; - invite.hamburg.ccc.de 172.31.17.144:31820; - keycloak-admin.hamburg.ccc.de 172.31.17.144:31820; + id.hamburg.ccc.de keycloak.hosts.hamburg.ccc.de:31820; + invite.hamburg.ccc.de keycloak.hosts.hamburg.ccc.de:31820; + keycloak-admin.hamburg.ccc.de keycloak.hosts.hamburg.ccc.de:31820; matrix.hamburg.ccc.de 172.31.17.150:31820; mas.hamburg.ccc.de 172.31.17.150:31820; element-admin.hamburg.ccc.de 172.31.17.151:31820; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index d884bc119..de99d40c2 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -23,9 +23,9 @@ stream { cloud.hamburg.ccc.de cloud.hosts.hamburg.ccc.de:8443; pad.hamburg.ccc.de pad.hosts.hamburg.ccc.de:8443; pretalx.hamburg.ccc.de pretalx-intern.hamburg.ccc.de:8443; - id.hamburg.ccc.de 172.31.17.144:8443; - invite.hamburg.ccc.de 172.31.17.144:8443; - keycloak-admin.hamburg.ccc.de 172.31.17.144:8444; + id.hamburg.ccc.de keycloak.hosts.hamburg.ccc.de:8443; + invite.hamburg.ccc.de keycloak.hosts.hamburg.ccc.de:8443; + keycloak-admin.hamburg.ccc.de keycloak.hosts.hamburg.ccc.de:8443; grafana.hamburg.ccc.de 172.31.17.145:8443; wiki.ccchh.net wiki.hosts.hamburg.ccc.de:8443; wiki.hamburg.ccc.de wiki.hosts.hamburg.ccc.de:8443; From 944c8cde8249673566e2e5bf20699e6c58a93049 Mon Sep 17 00:00:00 2001 From: June Date: Wed, 17 Dec 2025 03:34:39 +0100 Subject: [PATCH 033/142] onlyoffice(host): move to new network and hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- .../onlyoffice/nginx/onlyoffice.hamburg.ccc.de.conf | 4 +++- .../public-reverse-proxy/nginx/acme_challenge.conf | 2 +- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index dfa841e75..1028deb8d 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -37,9 +37,9 @@ all: ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de onlyoffice: - ansible_host: onlyoffice-intern.hamburg.ccc.de + ansible_host: onlyoffice.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de pad: ansible_host: pad.hosts.hamburg.ccc.de ansible_user: chaos diff --git a/resources/chaosknoten/onlyoffice/nginx/onlyoffice.hamburg.ccc.de.conf b/resources/chaosknoten/onlyoffice/nginx/onlyoffice.hamburg.ccc.de.conf index 24715254c..8a9a486ab 100644 --- a/resources/chaosknoten/onlyoffice/nginx/onlyoffice.hamburg.ccc.de.conf +++ b/resources/chaosknoten/onlyoffice/nginx/onlyoffice.hamburg.ccc.de.conf @@ -3,11 +3,13 @@ server { # Listen on a custom port for the proxy protocol. listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; + # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 4d6d4c0a4..409b5c603 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -20,7 +20,7 @@ map $host $upstream_acme_challenge_host { mas.hamburg.ccc.de 172.31.17.150:31820; element-admin.hamburg.ccc.de 172.31.17.151:31820; netbox.hamburg.ccc.de 172.31.17.167:31820; - onlyoffice.hamburg.ccc.de 172.31.17.147:31820; + onlyoffice.hamburg.ccc.de onlyoffice.hosts.hamburg.ccc.de:31820; pad.hamburg.ccc.de pad.hosts.hamburg.ccc.de:31820; pretalx.hamburg.ccc.de 172.31.17.157:31820; spaceapi.hamburg.ccc.de 172.31.17.151:31820; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index de99d40c2..97e0e3c9d 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -29,7 +29,7 @@ stream { grafana.hamburg.ccc.de 172.31.17.145:8443; wiki.ccchh.net wiki.hosts.hamburg.ccc.de:8443; wiki.hamburg.ccc.de wiki.hosts.hamburg.ccc.de:8443; - onlyoffice.hamburg.ccc.de 172.31.17.147:8443; + onlyoffice.hamburg.ccc.de onlyoffice.hosts.hamburg.ccc.de:8443; hackertours.hamburg.ccc.de 172.31.17.151:8443; staging.hackertours.hamburg.ccc.de 172.31.17.151:8443; netbox.hamburg.ccc.de 172.31.17.167:8443; From 25db54b8ad8314aeb35af0d7775e87c40a9239a5 Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sat, 3 Jan 2026 14:02:56 +0100 Subject: [PATCH 034/142] Make sure pip is installed --- roles/ansible_pull/tasks/main.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/ansible_pull/tasks/main.yaml b/roles/ansible_pull/tasks/main.yaml index 5abcd10e6..61a2635f1 100644 --- a/roles/ansible_pull/tasks/main.yaml +++ b/roles/ansible_pull/tasks/main.yaml @@ -3,6 +3,7 @@ - name: ensure apt dependencies are installed ansible.builtin.apt: name: + - python3-pip - virtualenv - git state: present From a328e9297102af66721951500cd90bedabb385a5 Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sat, 3 Jan 2026 14:03:26 +0100 Subject: [PATCH 035/142] Should be compatible with trixie/13 --- roles/certbot/meta/main.yaml | 1 + roles/docker/meta/main.yaml | 1 + roles/dokuwiki/meta/main.yml | 1 + roles/nginx/meta/main.yaml | 1 + roles/prometheus_node_exporter/meta/main.yaml | 1 + 5 files changed, 5 insertions(+) diff --git a/roles/certbot/meta/main.yaml b/roles/certbot/meta/main.yaml index b4a1c6f7a..9b678e9f1 100644 --- a/roles/certbot/meta/main.yaml +++ b/roles/certbot/meta/main.yaml @@ -7,3 +7,4 @@ dependencies: major_versions: - 11 - 12 + - 13 diff --git a/roles/docker/meta/main.yaml b/roles/docker/meta/main.yaml index b4a1c6f7a..9b678e9f1 100644 --- a/roles/docker/meta/main.yaml +++ b/roles/docker/meta/main.yaml @@ -7,3 +7,4 @@ dependencies: major_versions: - 11 - 12 + - 13 diff --git a/roles/dokuwiki/meta/main.yml b/roles/dokuwiki/meta/main.yml index b4a1c6f7a..9b678e9f1 100644 --- a/roles/dokuwiki/meta/main.yml +++ b/roles/dokuwiki/meta/main.yml @@ -7,3 +7,4 @@ dependencies: major_versions: - 11 - 12 + - 13 diff --git a/roles/nginx/meta/main.yaml b/roles/nginx/meta/main.yaml index 02b00ac36..78bb77058 100644 --- a/roles/nginx/meta/main.yaml +++ b/roles/nginx/meta/main.yaml @@ -7,3 +7,4 @@ dependencies: major_versions: - "11" - "12" + - "13" diff --git a/roles/prometheus_node_exporter/meta/main.yaml b/roles/prometheus_node_exporter/meta/main.yaml index 02b00ac36..78bb77058 100644 --- a/roles/prometheus_node_exporter/meta/main.yaml +++ b/roles/prometheus_node_exporter/meta/main.yaml @@ -7,3 +7,4 @@ dependencies: major_versions: - "11" - "12" + - "13" From 80ddb2efc927c894074558f0a8f13377bb934cb4 Mon Sep 17 00:00:00 2001 From: June Date: Wed, 7 Jan 2026 17:25:27 +0100 Subject: [PATCH 036/142] router: enable a DHCP server for the v4-NAT network as well As the hosts don't really need a static v4, just do DHCP. --- resources/chaosknoten/router/nftables/nftables.conf | 2 +- .../router/systemd_networkd/21-net0.2-v4_nat.network | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/resources/chaosknoten/router/nftables/nftables.conf b/resources/chaosknoten/router/nftables/nftables.conf index 6d04a4c42..3375bfba5 100644 --- a/resources/chaosknoten/router/nftables/nftables.conf +++ b/resources/chaosknoten/router/nftables/nftables.conf @@ -45,7 +45,7 @@ table inet host { tcp dport 22 accept comment "allow ssh access" # Allow DHCP server access. - iifname $if_net0_3_ci_runner udp dport 67 accept comment "allow dhcp server access" + iifname { $if_net0_2_v4_nat, $if_net0_3_ci_runner } udp dport 67 accept comment "allow dhcp server access" } } diff --git a/resources/chaosknoten/router/systemd_networkd/21-net0.2-v4_nat.network b/resources/chaosknoten/router/systemd_networkd/21-net0.2-v4_nat.network index c7fd9a7e8..b15259d6c 100644 --- a/resources/chaosknoten/router/systemd_networkd/21-net0.2-v4_nat.network +++ b/resources/chaosknoten/router/systemd_networkd/21-net0.2-v4_nat.network @@ -11,6 +11,12 @@ Description=v4-NAT # Masquerading done in nftables (nftables.conf). IPv6SendRA=yes +DHCPServer=true + +[DHCPServer] +PoolOffset=100 +PoolSize=150 + [Address] Address=10.32.2.1/24 From fbd3ea54962e7b0348c9ccb4471f493c26002322 Mon Sep 17 00:00:00 2001 From: June Date: Wed, 7 Jan 2026 18:09:48 +0100 Subject: [PATCH 037/142] base_config: disable cloud-init ssh module to avoid hostkey regeneration It should run once on first boot anyway and since it apparently runs for every change in the Proxmox cloud init config, disable it, so it doesn't, since it's annoying to have "random" hostkey changes. --- roles/base_config/tasks/main.yaml | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 roles/base_config/tasks/main.yaml diff --git a/roles/base_config/tasks/main.yaml b/roles/base_config/tasks/main.yaml new file mode 100644 index 000000000..cd8affd80 --- /dev/null +++ b/roles/base_config/tasks/main.yaml @@ -0,0 +1,13 @@ +# Ensure the ssh module is disabled, so a cloud-init config change doesn't regenerate the host keys for no reason. +- name: check if cloud-init config file exists + ansible.builtin.stat: + path: /etc/cloud/cloud.cfg + register: base_config__stat_cloud_cfg + +- name: ensure the cloud-init ssh module is disabled + ansible.builtin.replace: + path: /etc/cloud/cloud.cfg + regexp: " - ssh$" + replace: " #- ssh" + become: true + when: base_config__stat_cloud_cfg.stat.exists From 40b67c6bc3cec86c72f7efe52f12b939d0db4291 Mon Sep 17 00:00:00 2001 From: June Date: Wed, 7 Jan 2026 18:46:16 +0100 Subject: [PATCH 038/142] sunders(host): move to new network and hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- .../public-reverse-proxy/nginx/acme_challenge.conf | 2 +- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 2 +- .../chaosknoten/sunders/nginx/sunders.hamburg.ccc.de.conf | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 1028deb8d..082a76afd 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -67,9 +67,9 @@ all: ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de sunders: - ansible_host: sunders-intern.hamburg.ccc.de + ansible_host: sunders.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de renovate: ansible_host: renovate-intern.hamburg.ccc.de ansible_user: chaos diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 409b5c603..f02a6579f 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -29,7 +29,7 @@ map $host $upstream_acme_challenge_host { wiki.hamburg.ccc.de wiki.hosts.hamburg.ccc.de:31820; www.hamburg.ccc.de 172.31.17.151:31820; tickets.hamburg.ccc.de 172.31.17.148:31820; - sunders.hamburg.ccc.de 172.31.17.170:31820; + sunders.hamburg.ccc.de sunders.hosts.hamburg.ccc.de:31820; zammad.hamburg.ccc.de 172.31.17.152:31820; eh03.easterhegg.eu 172.31.17.151:31820; eh05.easterhegg.eu 172.31.17.151:31820; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index 97e0e3c9d..90ec655e6 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -43,7 +43,7 @@ stream { staging.hamburg.ccc.de 172.31.17.151:8443; spaceapi.hamburg.ccc.de 172.31.17.151:8443; tickets.hamburg.ccc.de 172.31.17.148:8443; - sunders.hamburg.ccc.de 172.31.17.170:8443; + sunders.hamburg.ccc.de sunders.hosts.hamburg.ccc.de:8443; zammad.hamburg.ccc.de 172.31.17.152:8443; c3cat.de 172.31.17.151:8443; www.c3cat.de 172.31.17.151:8443; diff --git a/resources/chaosknoten/sunders/nginx/sunders.hamburg.ccc.de.conf b/resources/chaosknoten/sunders/nginx/sunders.hamburg.ccc.de.conf index 04cc006c3..ceb9b2b79 100644 --- a/resources/chaosknoten/sunders/nginx/sunders.hamburg.ccc.de.conf +++ b/resources/chaosknoten/sunders/nginx/sunders.hamburg.ccc.de.conf @@ -2,7 +2,7 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. From a622f21b54461ec4db77f3496212c55389621104 Mon Sep 17 00:00:00 2001 From: June Date: Wed, 7 Jan 2026 18:46:27 +0100 Subject: [PATCH 039/142] renovate(host): move to new network and hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 082a76afd..58b6c1a89 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -71,9 +71,9 @@ all: ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de renovate: - ansible_host: renovate-intern.hamburg.ccc.de + ansible_host: renovate.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de hypervisors: hosts: chaosknoten: From 49e3ecb9865ebc0de70b4757b0f2d05a7b8c3da4 Mon Sep 17 00:00:00 2001 From: June Date: Fri, 9 Jan 2026 03:05:29 +0100 Subject: [PATCH 040/142] netbox(host): move to new network and hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- resources/chaosknoten/netbox/nginx/netbox.hamburg.ccc.de.conf | 2 +- .../public-reverse-proxy/nginx/acme_challenge.conf | 2 +- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 58b6c1a89..14fe23ae8 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -33,9 +33,9 @@ all: ansible_host: mumble.hamburg.ccc.de ansible_user: chaos netbox: - ansible_host: netbox-intern.hamburg.ccc.de + ansible_host: netbox.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de onlyoffice: ansible_host: onlyoffice.hosts.hamburg.ccc.de ansible_user: chaos diff --git a/resources/chaosknoten/netbox/nginx/netbox.hamburg.ccc.de.conf b/resources/chaosknoten/netbox/nginx/netbox.hamburg.ccc.de.conf index 555068664..533c9d21b 100644 --- a/resources/chaosknoten/netbox/nginx/netbox.hamburg.ccc.de.conf +++ b/resources/chaosknoten/netbox/nginx/netbox.hamburg.ccc.de.conf @@ -2,7 +2,7 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index f02a6579f..06595e3fa 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -19,7 +19,7 @@ map $host $upstream_acme_challenge_host { matrix.hamburg.ccc.de 172.31.17.150:31820; mas.hamburg.ccc.de 172.31.17.150:31820; element-admin.hamburg.ccc.de 172.31.17.151:31820; - netbox.hamburg.ccc.de 172.31.17.167:31820; + netbox.hamburg.ccc.de netbox.hosts.hamburg.ccc.de:31820; onlyoffice.hamburg.ccc.de onlyoffice.hosts.hamburg.ccc.de:31820; pad.hamburg.ccc.de pad.hosts.hamburg.ccc.de:31820; pretalx.hamburg.ccc.de 172.31.17.157:31820; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index 90ec655e6..78a91ff23 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -32,7 +32,7 @@ stream { onlyoffice.hamburg.ccc.de onlyoffice.hosts.hamburg.ccc.de:8443; hackertours.hamburg.ccc.de 172.31.17.151:8443; staging.hackertours.hamburg.ccc.de 172.31.17.151:8443; - netbox.hamburg.ccc.de 172.31.17.167:8443; + netbox.hamburg.ccc.de netbox.hosts.hamburg.ccc.de:8443; matrix.hamburg.ccc.de 172.31.17.150:8443; mas.hamburg.ccc.de 172.31.17.150:8443; element-admin.hamburg.ccc.de 172.31.17.151:8443; From ff550cbd8ad8cfd9be7bbc9d5f4c620172e5d90f Mon Sep 17 00:00:00 2001 From: June Date: Sun, 11 Jan 2026 00:00:18 +0100 Subject: [PATCH 041/142] tickets(host): move to new network and hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- .../public-reverse-proxy/nginx/acme_challenge.conf | 2 +- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 2 +- .../chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 14fe23ae8..fab91277f 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -19,9 +19,9 @@ all: ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de tickets: - ansible_host: tickets-intern.hamburg.ccc.de + ansible_host: tickets.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de keycloak: ansible_host: keycloak.hosts.hamburg.ccc.de ansible_user: chaos diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 06595e3fa..b8b44b5db 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -28,7 +28,7 @@ map $host $upstream_acme_challenge_host { wiki.ccchh.net wiki.hosts.hamburg.ccc.de:31820; wiki.hamburg.ccc.de wiki.hosts.hamburg.ccc.de:31820; www.hamburg.ccc.de 172.31.17.151:31820; - tickets.hamburg.ccc.de 172.31.17.148:31820; + tickets.hamburg.ccc.de tickets.hosts.hamburg.ccc.de:31820; sunders.hamburg.ccc.de sunders.hosts.hamburg.ccc.de:31820; zammad.hamburg.ccc.de 172.31.17.152:31820; eh03.easterhegg.eu 172.31.17.151:31820; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index 78a91ff23..e540f1345 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -42,7 +42,7 @@ stream { hamburg.ccc.de 172.31.17.151:8443; staging.hamburg.ccc.de 172.31.17.151:8443; spaceapi.hamburg.ccc.de 172.31.17.151:8443; - tickets.hamburg.ccc.de 172.31.17.148:8443; + tickets.hamburg.ccc.de tickets.hosts.hamburg.ccc.de:8443; sunders.hamburg.ccc.de sunders.hosts.hamburg.ccc.de:8443; zammad.hamburg.ccc.de 172.31.17.152:8443; c3cat.de 172.31.17.151:8443; diff --git a/resources/chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf b/resources/chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf index 9e2ca26b3..8d36244c0 100644 --- a/resources/chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf +++ b/resources/chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf @@ -2,7 +2,7 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. From a41b07949cd6ffda5b334065c7b8ce362e11af16 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 11 Jan 2026 00:22:37 +0100 Subject: [PATCH 042/142] zammad(host): move to new network and hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- .../public-reverse-proxy/nginx/acme_challenge.conf | 2 +- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 2 +- resources/chaosknoten/zammad/nginx/zammad.hamburg.ccc.de.conf | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index fab91277f..1b88df6c6 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -59,9 +59,9 @@ all: ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de zammad: - ansible_host: zammad-intern.hamburg.ccc.de + ansible_host: zammad.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de ntfy: ansible_host: ntfy-intern.hamburg.ccc.de ansible_user: chaos diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index b8b44b5db..d97608901 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -30,7 +30,7 @@ map $host $upstream_acme_challenge_host { www.hamburg.ccc.de 172.31.17.151:31820; tickets.hamburg.ccc.de tickets.hosts.hamburg.ccc.de:31820; sunders.hamburg.ccc.de sunders.hosts.hamburg.ccc.de:31820; - zammad.hamburg.ccc.de 172.31.17.152:31820; + zammad.hamburg.ccc.de zammad.hosts.hamburg.ccc.de:31820; eh03.easterhegg.eu 172.31.17.151:31820; eh05.easterhegg.eu 172.31.17.151:31820; eh07.easterhegg.eu 172.31.17.151:31820; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index e540f1345..c4d1fbcd5 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -44,7 +44,7 @@ stream { spaceapi.hamburg.ccc.de 172.31.17.151:8443; tickets.hamburg.ccc.de tickets.hosts.hamburg.ccc.de:8443; sunders.hamburg.ccc.de sunders.hosts.hamburg.ccc.de:8443; - zammad.hamburg.ccc.de 172.31.17.152:8443; + zammad.hamburg.ccc.de zammad.hosts.hamburg.ccc.de:8443; c3cat.de 172.31.17.151:8443; www.c3cat.de 172.31.17.151:8443; staging.c3cat.de 172.31.17.151:8443; diff --git a/resources/chaosknoten/zammad/nginx/zammad.hamburg.ccc.de.conf b/resources/chaosknoten/zammad/nginx/zammad.hamburg.ccc.de.conf index c1f918277..5bb243523 100644 --- a/resources/chaosknoten/zammad/nginx/zammad.hamburg.ccc.de.conf +++ b/resources/chaosknoten/zammad/nginx/zammad.hamburg.ccc.de.conf @@ -2,7 +2,7 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. From bb30e88404d9e3d6c2325a2572b45aac10113041 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 11 Jan 2026 00:29:16 +0100 Subject: [PATCH 043/142] router(host): allowlist only certain icmpv6 types --- .../chaosknoten/router/nftables/nftables.conf | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/resources/chaosknoten/router/nftables/nftables.conf b/resources/chaosknoten/router/nftables/nftables.conf index 3375bfba5..ca62a9728 100644 --- a/resources/chaosknoten/router/nftables/nftables.conf +++ b/resources/chaosknoten/router/nftables/nftables.conf @@ -39,7 +39,23 @@ table inet host { ct state established,related accept ip protocol icmp accept - ip6 nexthdr icmpv6 accept + # ICMPv6 + # https://datatracker.ietf.org/doc/html/rfc4890#autoid-24 + # Allowlist consisting of: "Traffic That Must Not Be Dropped" and "Traffic That Normally Should Not Be Dropped" + # Error messages that are essential to the establishment and maintenance of communications: + icmpv6 type { destination-unreachable, packet-too-big } accept + icmpv6 type { time-exceeded } accept + icmpv6 type { parameter-problem } accept + # Connectivity checking messages: + icmpv6 type { echo-request, echo-reply } accept + # Address Configuration and Router Selection messages: + icmpv6 type { nd-router-solicit, nd-router-advert, nd-neighbor-solicit, nd-neighbor-advert, ind-neighbor-solicit, ind-neighbor-advert } accept + # Link-Local Multicast Receiver Notification messages: + icmpv6 type { mld-listener-query, mld-listener-report, mld-listener-done, mld2-listener-report } accept + # SEND Certificate Path Notification messages: + icmpv6 type { 148, 149 } accept + # Multicast Router Discovery messages: + icmpv6 type { 151, 152, 153 } accept # Allow SSH access. tcp dport 22 accept comment "allow ssh access" From 2fbb37db18c0cb3c01f00d83666524f6c5cc887e Mon Sep 17 00:00:00 2001 From: June Date: Sun, 11 Jan 2026 00:59:52 +0100 Subject: [PATCH 044/142] grafana(host): move to new network and hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- .../chaosknoten/grafana/nginx/grafana.hamburg.ccc.de.conf | 2 +- resources/chaosknoten/grafana/nginx/loki.hamburg.ccc.de.conf | 2 -- .../chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf | 1 - .../public-reverse-proxy/nginx/acme_challenge.conf | 2 +- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 2 +- 6 files changed, 5 insertions(+), 8 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 1b88df6c6..f72e4acad 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -15,9 +15,9 @@ all: ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de grafana: - ansible_host: grafana-intern.hamburg.ccc.de + ansible_host: grafana.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de tickets: ansible_host: tickets.hosts.hamburg.ccc.de ansible_user: chaos diff --git a/resources/chaosknoten/grafana/nginx/grafana.hamburg.ccc.de.conf b/resources/chaosknoten/grafana/nginx/grafana.hamburg.ccc.de.conf index c5b68e1ad..a6dcdc1ea 100644 --- a/resources/chaosknoten/grafana/nginx/grafana.hamburg.ccc.de.conf +++ b/resources/chaosknoten/grafana/nginx/grafana.hamburg.ccc.de.conf @@ -2,7 +2,7 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl proxy_protocol; + listen [::]:8443 ssl proxy_protocol; http2 on; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy diff --git a/resources/chaosknoten/grafana/nginx/loki.hamburg.ccc.de.conf b/resources/chaosknoten/grafana/nginx/loki.hamburg.ccc.de.conf index e2bf4a788..8a509bee7 100644 --- a/resources/chaosknoten/grafana/nginx/loki.hamburg.ccc.de.conf +++ b/resources/chaosknoten/grafana/nginx/loki.hamburg.ccc.de.conf @@ -17,7 +17,6 @@ server { server_name loki.hamburg.ccc.de; listen [::]:50051 ssl; - listen 172.31.17.145:50051 ssl; http2 on; @@ -59,7 +58,6 @@ server { server_name loki.hamburg.ccc.de; listen [::]:443 ssl; - listen 172.31.17.145:443 ssl; http2 on; diff --git a/resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf b/resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf index 2c5252396..ef2fe0798 100644 --- a/resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf +++ b/resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf @@ -18,7 +18,6 @@ server { server_name metrics.hamburg.ccc.de; listen [::]:443 ssl; - listen 172.31.17.145:443 ssl; http2 on; client_body_buffer_size 512k; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index d97608901..7af3beb0c 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -9,7 +9,7 @@ map $host $upstream_acme_challenge_host { cloud.hamburg.ccc.de cloud.hosts.hamburg.ccc.de:31820; element.hamburg.ccc.de 172.31.17.151:31820; git.hamburg.ccc.de 172.31.17.154:31820; - grafana.hamburg.ccc.de 172.31.17.145:31820; + grafana.hamburg.ccc.de grafana.hosts.hamburg.ccc.de:31820; hackertours.hamburg.ccc.de 172.31.17.151:31820; staging.hackertours.hamburg.ccc.de 172.31.17.151:31820; hamburg.ccc.de 172.31.17.151:31820; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index c4d1fbcd5..42120db74 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -26,7 +26,7 @@ stream { id.hamburg.ccc.de keycloak.hosts.hamburg.ccc.de:8443; invite.hamburg.ccc.de keycloak.hosts.hamburg.ccc.de:8443; keycloak-admin.hamburg.ccc.de keycloak.hosts.hamburg.ccc.de:8443; - grafana.hamburg.ccc.de 172.31.17.145:8443; + grafana.hamburg.ccc.de grafana.hosts.hamburg.ccc.de:8443; wiki.ccchh.net wiki.hosts.hamburg.ccc.de:8443; wiki.hamburg.ccc.de wiki.hosts.hamburg.ccc.de:8443; onlyoffice.hamburg.ccc.de onlyoffice.hosts.hamburg.ccc.de:8443; From 372f264bcbc7de743c6cda57126395f7df906b47 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 11 Jan 2026 01:29:15 +0100 Subject: [PATCH 045/142] ccchoir(host): move to new network and hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- resources/chaosknoten/ccchoir/nginx/ccchoir.de.conf | 8 ++++---- .../public-reverse-proxy/nginx/acme_challenge.conf | 4 ++-- .../chaosknoten/public-reverse-proxy/nginx/nginx.conf | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index f72e4acad..4b8e3881f 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -1,9 +1,9 @@ all: hosts: ccchoir: - ansible_host: ccchoir-intern.hamburg.ccc.de + ansible_host: ccchoir.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de chaosknoten: ansible_host: chaosknoten.hamburg.ccc.de cloud: diff --git a/resources/chaosknoten/ccchoir/nginx/ccchoir.de.conf b/resources/chaosknoten/ccchoir/nginx/ccchoir.de.conf index ff37e4874..a8d71a99d 100644 --- a/resources/chaosknoten/ccchoir/nginx/ccchoir.de.conf +++ b/resources/chaosknoten/ccchoir/nginx/ccchoir.de.conf @@ -2,12 +2,12 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; @@ -43,12 +43,12 @@ server { server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 7af3beb0c..0c6276032 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -4,8 +4,8 @@ map $host $upstream_acme_challenge_host { c3cat.de 172.31.17.151:31820; www.c3cat.de 172.31.17.151:31820; staging.c3cat.de 172.31.17.151:31820; - ccchoir.de ccchoir-intern.hamburg.ccc.de:31820; - www.ccchoir.de ccchoir-intern.hamburg.ccc.de:31820; + ccchoir.de ccchoir.hosts.hamburg.ccc.de:31820; + www.ccchoir.de ccchoir.hosts.hamburg.ccc.de:31820; cloud.hamburg.ccc.de cloud.hosts.hamburg.ccc.de:31820; element.hamburg.ccc.de 172.31.17.151:31820; git.hamburg.ccc.de 172.31.17.154:31820; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index 42120db74..b3f363666 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -18,8 +18,8 @@ stream { resolver 212.12.50.158 192.76.134.90; map $ssl_preread_server_name $address { - ccchoir.de ccchoir-intern.hamburg.ccc.de:8443; - www.ccchoir.de ccchoir-intern.hamburg.ccc.de:8443; + ccchoir.de ccchoir.hosts.hamburg.ccc.de:8443; + www.ccchoir.de ccchoir.hosts.hamburg.ccc.de:8443; cloud.hamburg.ccc.de cloud.hosts.hamburg.ccc.de:8443; pad.hamburg.ccc.de pad.hosts.hamburg.ccc.de:8443; pretalx.hamburg.ccc.de pretalx-intern.hamburg.ccc.de:8443; From 1971598e71379ed967b8790353dd2ac6dc854712 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 11 Jan 2026 03:22:11 +0100 Subject: [PATCH 046/142] pretalx(host): move to new network and hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- .../chaosknoten/pretalx/nginx/cfp.eh22.easterhegg.eu.conf | 4 ++-- .../chaosknoten/pretalx/nginx/pretalx.hamburg.ccc.de.conf | 4 ++-- .../public-reverse-proxy/nginx/acme_challenge.conf | 2 +- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 4 ++-- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 4b8e3881f..d5dea1c56 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -45,9 +45,9 @@ all: ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de pretalx: - ansible_host: pretalx-intern.hamburg.ccc.de + ansible_host: pretalx.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de public-reverse-proxy: ansible_host: public-reverse-proxy.hamburg.ccc.de ansible_user: chaos diff --git a/resources/chaosknoten/pretalx/nginx/cfp.eh22.easterhegg.eu.conf b/resources/chaosknoten/pretalx/nginx/cfp.eh22.easterhegg.eu.conf index 0fa99e7fd..a4f5bb931 100644 --- a/resources/chaosknoten/pretalx/nginx/cfp.eh22.easterhegg.eu.conf +++ b/resources/chaosknoten/pretalx/nginx/cfp.eh22.easterhegg.eu.conf @@ -2,12 +2,12 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/pretalx/nginx/pretalx.hamburg.ccc.de.conf b/resources/chaosknoten/pretalx/nginx/pretalx.hamburg.ccc.de.conf index f12067ab0..d66e97702 100644 --- a/resources/chaosknoten/pretalx/nginx/pretalx.hamburg.ccc.de.conf +++ b/resources/chaosknoten/pretalx/nginx/pretalx.hamburg.ccc.de.conf @@ -2,12 +2,12 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; + listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 0c6276032..71f0290ea 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -22,7 +22,7 @@ map $host $upstream_acme_challenge_host { netbox.hamburg.ccc.de netbox.hosts.hamburg.ccc.de:31820; onlyoffice.hamburg.ccc.de onlyoffice.hosts.hamburg.ccc.de:31820; pad.hamburg.ccc.de pad.hosts.hamburg.ccc.de:31820; - pretalx.hamburg.ccc.de 172.31.17.157:31820; + pretalx.hamburg.ccc.de pretalx.hosts.hamburg.ccc.de:31820; spaceapi.hamburg.ccc.de 172.31.17.151:31820; staging.hamburg.ccc.de 172.31.17.151:31820; wiki.ccchh.net wiki.hosts.hamburg.ccc.de:31820; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index b3f363666..d7cd97ea7 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -22,7 +22,7 @@ stream { www.ccchoir.de ccchoir.hosts.hamburg.ccc.de:8443; cloud.hamburg.ccc.de cloud.hosts.hamburg.ccc.de:8443; pad.hamburg.ccc.de pad.hosts.hamburg.ccc.de:8443; - pretalx.hamburg.ccc.de pretalx-intern.hamburg.ccc.de:8443; + pretalx.hamburg.ccc.de pretalx.hosts.hamburg.ccc.de:8443; id.hamburg.ccc.de keycloak.hosts.hamburg.ccc.de:8443; invite.hamburg.ccc.de keycloak.hosts.hamburg.ccc.de:8443; keycloak-admin.hamburg.ccc.de keycloak.hosts.hamburg.ccc.de:8443; @@ -90,7 +90,7 @@ stream { woodpecker.hamburg.ccc.de 172.31.17.160:8443; design.hamburg.ccc.de 172.31.17.162:8443; hydra.hamburg.ccc.de 172.31.17.163:8443; - cfp.eh22.easterhegg.eu pretalx-intern.hamburg.ccc.de:8443; + cfp.eh22.easterhegg.eu pretalx.hosts.hamburg.ccc.de:8443; ntfy.hamburg.ccc.de 172.31.17.149:8443; cryptoparty-hamburg.de 172.31.17.151:8443; cryptoparty.hamburg.ccc.de 172.31.17.151:8443; From 255327952e3b1e718e7d0e53c0c189a6e6f13052 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 11 Jan 2026 03:57:11 +0100 Subject: [PATCH 047/142] ntfy(host): move to new network and hostname --- inventories/chaosknoten/hosts.yaml | 4 ++-- resources/chaosknoten/ntfy/nginx/ntfy.hamburg.ccc.de.conf | 4 ++-- .../public-reverse-proxy/nginx/acme_challenge.conf | 2 +- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index d5dea1c56..93c61be86 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -63,9 +63,9 @@ all: ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de ntfy: - ansible_host: ntfy-intern.hamburg.ccc.de + ansible_host: ntfy.hosts.hamburg.ccc.de ansible_user: chaos - ansible_ssh_common_args: -J ssh://chaos@public-reverse-proxy.hamburg.ccc.de + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de sunders: ansible_host: sunders.hosts.hamburg.ccc.de ansible_user: chaos diff --git a/resources/chaosknoten/ntfy/nginx/ntfy.hamburg.ccc.de.conf b/resources/chaosknoten/ntfy/nginx/ntfy.hamburg.ccc.de.conf index e7d404da2..ebae48d17 100644 --- a/resources/chaosknoten/ntfy/nginx/ntfy.hamburg.ccc.de.conf +++ b/resources/chaosknoten/ntfy/nginx/ntfy.hamburg.ccc.de.conf @@ -2,13 +2,13 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl proxy_protocol; + listen [::]:8443 ssl proxy_protocol; http2 on; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 71f0290ea..82e596aa9 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -73,7 +73,7 @@ map $host $upstream_acme_challenge_host { design.hamburg.ccc.de 172.31.17.162:31820; hydra.hamburg.ccc.de 172.31.17.163:31820; cfp.eh22.easterhegg.eu 172.31.17.157:31820; - ntfy.hamburg.ccc.de 172.31.17.149:31820; + ntfy.hamburg.ccc.de ntfy.hosts.hamburg.ccc.de:31820; cryptoparty-hamburg.de 172.31.17.151:31820; cryptoparty.hamburg.ccc.de 172.31.17.151:31820; staging.cryptoparty-hamburg.de 172.31.17.151:31820; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index d7cd97ea7..489dda558 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -91,7 +91,7 @@ stream { design.hamburg.ccc.de 172.31.17.162:8443; hydra.hamburg.ccc.de 172.31.17.163:8443; cfp.eh22.easterhegg.eu pretalx.hosts.hamburg.ccc.de:8443; - ntfy.hamburg.ccc.de 172.31.17.149:8443; + ntfy.hamburg.ccc.de ntfy.hosts.hamburg.ccc.de:8443; cryptoparty-hamburg.de 172.31.17.151:8443; cryptoparty.hamburg.ccc.de 172.31.17.151:8443; staging.cryptoparty-hamburg.de 172.31.17.151:8443; From 968e29ccb8fa144c7ec3ebd56d8d38adb4416397 Mon Sep 17 00:00:00 2001 From: June Date: Mon, 12 Jan 2026 03:02:09 +0100 Subject: [PATCH 048/142] do v6-only for internal proxy protocol communication Since we want to do v6-only internally, only listen on v6 for proxy protocol. This is also needed as we only have set_real_ip_from pointing to a v6. --- resources/chaosknoten/eh22-wiki/nginx/eh22.easterhegg.eu.conf | 1 - resources/chaosknoten/grafana/nginx/grafana.hamburg.ccc.de.conf | 2 +- resources/chaosknoten/keycloak/nginx/id.hamburg.ccc.de.conf | 1 - resources/chaosknoten/keycloak/nginx/invite.hamburg.ccc.de.conf | 1 - .../keycloak/nginx/keycloak-admin.hamburg.ccc.de.conf | 1 - resources/chaosknoten/netbox/nginx/netbox.hamburg.ccc.de.conf | 2 +- .../chaosknoten/onlyoffice/nginx/onlyoffice.hamburg.ccc.de.conf | 1 - resources/chaosknoten/pad/nginx/pad.hamburg.ccc.de.conf | 1 - resources/chaosknoten/sunders/nginx/sunders.hamburg.ccc.de.conf | 2 +- resources/chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf | 2 +- resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf | 1 - resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf | 1 - resources/chaosknoten/zammad/nginx/zammad.hamburg.ccc.de.conf | 2 +- 13 files changed, 5 insertions(+), 13 deletions(-) diff --git a/resources/chaosknoten/eh22-wiki/nginx/eh22.easterhegg.eu.conf b/resources/chaosknoten/eh22-wiki/nginx/eh22.easterhegg.eu.conf index 8c801fe76..d213d6153 100644 --- a/resources/chaosknoten/eh22-wiki/nginx/eh22.easterhegg.eu.conf +++ b/resources/chaosknoten/eh22-wiki/nginx/eh22.easterhegg.eu.conf @@ -2,7 +2,6 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy diff --git a/resources/chaosknoten/grafana/nginx/grafana.hamburg.ccc.de.conf b/resources/chaosknoten/grafana/nginx/grafana.hamburg.ccc.de.conf index a6dcdc1ea..98f7f40bb 100644 --- a/resources/chaosknoten/grafana/nginx/grafana.hamburg.ccc.de.conf +++ b/resources/chaosknoten/grafana/nginx/grafana.hamburg.ccc.de.conf @@ -8,7 +8,7 @@ server { # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/keycloak/nginx/id.hamburg.ccc.de.conf b/resources/chaosknoten/keycloak/nginx/id.hamburg.ccc.de.conf index 939e1da51..82ba082d5 100644 --- a/resources/chaosknoten/keycloak/nginx/id.hamburg.ccc.de.conf +++ b/resources/chaosknoten/keycloak/nginx/id.hamburg.ccc.de.conf @@ -3,7 +3,6 @@ # Also see: https://www.keycloak.org/server/reverseproxy server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy diff --git a/resources/chaosknoten/keycloak/nginx/invite.hamburg.ccc.de.conf b/resources/chaosknoten/keycloak/nginx/invite.hamburg.ccc.de.conf index de1e9d6f9..ecb7e2d43 100644 --- a/resources/chaosknoten/keycloak/nginx/invite.hamburg.ccc.de.conf +++ b/resources/chaosknoten/keycloak/nginx/invite.hamburg.ccc.de.conf @@ -3,7 +3,6 @@ # Also see: https://www.keycloak.org/server/reverseproxy server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy diff --git a/resources/chaosknoten/keycloak/nginx/keycloak-admin.hamburg.ccc.de.conf b/resources/chaosknoten/keycloak/nginx/keycloak-admin.hamburg.ccc.de.conf index cd56b98fe..b2e7eece5 100644 --- a/resources/chaosknoten/keycloak/nginx/keycloak-admin.hamburg.ccc.de.conf +++ b/resources/chaosknoten/keycloak/nginx/keycloak-admin.hamburg.ccc.de.conf @@ -7,7 +7,6 @@ server { ##listen [::]:443 ssl http2; # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy diff --git a/resources/chaosknoten/netbox/nginx/netbox.hamburg.ccc.de.conf b/resources/chaosknoten/netbox/nginx/netbox.hamburg.ccc.de.conf index 533c9d21b..0c2a3be08 100644 --- a/resources/chaosknoten/netbox/nginx/netbox.hamburg.ccc.de.conf +++ b/resources/chaosknoten/netbox/nginx/netbox.hamburg.ccc.de.conf @@ -7,7 +7,7 @@ server { # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/onlyoffice/nginx/onlyoffice.hamburg.ccc.de.conf b/resources/chaosknoten/onlyoffice/nginx/onlyoffice.hamburg.ccc.de.conf index 8a9a486ab..f3e77f177 100644 --- a/resources/chaosknoten/onlyoffice/nginx/onlyoffice.hamburg.ccc.de.conf +++ b/resources/chaosknoten/onlyoffice/nginx/onlyoffice.hamburg.ccc.de.conf @@ -2,7 +2,6 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy diff --git a/resources/chaosknoten/pad/nginx/pad.hamburg.ccc.de.conf b/resources/chaosknoten/pad/nginx/pad.hamburg.ccc.de.conf index 6c453d1b9..cf49d2326 100644 --- a/resources/chaosknoten/pad/nginx/pad.hamburg.ccc.de.conf +++ b/resources/chaosknoten/pad/nginx/pad.hamburg.ccc.de.conf @@ -2,7 +2,6 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy diff --git a/resources/chaosknoten/sunders/nginx/sunders.hamburg.ccc.de.conf b/resources/chaosknoten/sunders/nginx/sunders.hamburg.ccc.de.conf index ceb9b2b79..185c005aa 100644 --- a/resources/chaosknoten/sunders/nginx/sunders.hamburg.ccc.de.conf +++ b/resources/chaosknoten/sunders/nginx/sunders.hamburg.ccc.de.conf @@ -7,7 +7,7 @@ server { # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf b/resources/chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf index 8d36244c0..e93ff9353 100644 --- a/resources/chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf +++ b/resources/chaosknoten/tickets/nginx/tickets.hamburg.ccc.de.conf @@ -7,7 +7,7 @@ server { # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; diff --git a/resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf b/resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf index 472236ae0..d89b5b889 100644 --- a/resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf +++ b/resources/chaosknoten/wiki/nginx/wiki.ccchh.net.conf @@ -2,7 +2,6 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy diff --git a/resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf b/resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf index b4eab7ffb..5065c1d7a 100644 --- a/resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf +++ b/resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf @@ -2,7 +2,6 @@ # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { # Listen on a custom port for the proxy protocol. - listen 8443 ssl http2 proxy_protocol; listen [::]:8443 ssl http2 proxy_protocol; # Make use of the ngx_http_realip_module to set the $remote_addr and # $remote_port to the client address and client port, when using proxy diff --git a/resources/chaosknoten/zammad/nginx/zammad.hamburg.ccc.de.conf b/resources/chaosknoten/zammad/nginx/zammad.hamburg.ccc.de.conf index 5bb243523..b94cb5c2c 100644 --- a/resources/chaosknoten/zammad/nginx/zammad.hamburg.ccc.de.conf +++ b/resources/chaosknoten/zammad/nginx/zammad.hamburg.ccc.de.conf @@ -7,7 +7,7 @@ server { # $remote_port to the client address and client port, when using proxy # protocol. # First set our proxy protocol proxy as trusted. - set_real_ip_from 172.31.17.140; + set_real_ip_from 2a00:14b0:4200:3000:125::1; # Then tell the realip_module to get the addreses from the proxy protocol # header. real_ip_header proxy_protocol; From 70461c98babcddd87dd208aa4041aee5f1fa2546 Mon Sep 17 00:00:00 2001 From: June Date: Mon, 12 Jan 2026 03:29:06 +0100 Subject: [PATCH 049/142] first run ansible_pull for router, then for all other hosts Do this to avoid a restarting router affecting playbook runs on other hosts. --- inventories/chaosknoten/group_vars/all.yaml | 2 +- inventories/chaosknoten/host_vars/router.yaml | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/inventories/chaosknoten/group_vars/all.yaml b/inventories/chaosknoten/group_vars/all.yaml index b8f13d0a2..60349e08a 100644 --- a/inventories/chaosknoten/group_vars/all.yaml +++ b/inventories/chaosknoten/group_vars/all.yaml @@ -3,7 +3,7 @@ ansible_pull__repo_url: https://git.hamburg.ccc.de/CCCHH/ansible-infra.git ansible_pull__inventory: inventories/chaosknoten ansible_pull__playbook: playbooks/maintenance.yaml -ansible_pull__timer_on_calendar: "*-*-* 04:00:00 Europe/Berlin" +ansible_pull__timer_on_calendar: "*-*-* 04:30:00 Europe/Berlin" ansible_pull__failure_notification_address: noc-notifications@lists.hamburg.ccc.de ansible_pull__timer_randomized_delay_sec: 30min diff --git a/inventories/chaosknoten/host_vars/router.yaml b/inventories/chaosknoten/host_vars/router.yaml index 134d29f9b..5e9c83254 100644 --- a/inventories/chaosknoten/host_vars/router.yaml +++ b/inventories/chaosknoten/host_vars/router.yaml @@ -1,2 +1,4 @@ systemd_networkd__config_dir: 'resources/chaosknoten/router/systemd_networkd/' nftables__config: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/router/nftables/nftables.conf') }}" +ansible_pull__timer_on_calendar: "*-*-* 04:00:00 Europe/Berlin" +ansible_pull__timer_randomized_delay_sec: 0min From c6387908198c477178d59ea4e798600ffb201dc8 Mon Sep 17 00:00:00 2001 From: Renovate Date: Mon, 12 Jan 2026 02:30:47 +0000 Subject: [PATCH 050/142] Update all stable non-major dependencies --- .forgejo/workflows/lint.yaml | 2 +- inventories/chaosknoten/host_vars/netbox.yaml | 2 +- .../chaosknoten/grafana/docker_compose/compose.yaml.j2 | 10 +++++----- .../onlyoffice/docker_compose/compose.yaml.j2 | 2 +- .../chaosknoten/pad/docker_compose/compose.yaml.j2 | 2 +- .../chaosknoten/pretalx/docker_compose/compose.yaml.j2 | 6 +++--- .../chaosknoten/sunders/docker_compose/compose.yaml.j2 | 2 +- 7 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.forgejo/workflows/lint.yaml b/.forgejo/workflows/lint.yaml index d29fb6e13..b1168c9cc 100644 --- a/.forgejo/workflows/lint.yaml +++ b/.forgejo/workflows/lint.yaml @@ -24,7 +24,7 @@ jobs: # work in our environmnet. # Rather manually setup python (pip) before instead. - name: Run ansible-lint - uses: https://github.com/ansible/ansible-lint@v25.11.0 + uses: https://github.com/ansible/ansible-lint@v25.12.2 with: setup_python: "false" requirements_file: "requirements.yml" diff --git a/inventories/chaosknoten/host_vars/netbox.yaml b/inventories/chaosknoten/host_vars/netbox.yaml index 3be8bdded..2c68c1718 100644 --- a/inventories/chaosknoten/host_vars/netbox.yaml +++ b/inventories/chaosknoten/host_vars/netbox.yaml @@ -1,5 +1,5 @@ # renovate: datasource=github-releases depName=netbox packageName=netbox-community/netbox -netbox__version: "v4.4.6" +netbox__version: "v4.5.0" netbox__config: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/netbox/netbox/configuration.py.j2') }}" netbox__custom_pipeline_oidc_group_and_role_mapping: true diff --git a/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 b/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 index 2d598f96e..90952ee88 100644 --- a/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 @@ -2,7 +2,7 @@ services: prometheus: - image: docker.io/prom/prometheus:v3.7.3 + image: docker.io/prom/prometheus:v3.9.1 container_name: prometheus command: - '--config.file=/etc/prometheus/prometheus.yml' @@ -19,7 +19,7 @@ services: - prom_data:/prometheus alertmanager: - image: docker.io/prom/alertmanager:v0.29.0 + image: docker.io/prom/alertmanager:v0.30.0 container_name: alertmanager command: - '--config.file=/etc/alertmanager/alertmanager.yaml' @@ -32,7 +32,7 @@ services: - alertmanager_data:/alertmanager grafana: - image: docker.io/grafana/grafana:12.3.0 + image: docker.io/grafana/grafana:12.3.1 container_name: grafana ports: - 3000:3000 @@ -46,7 +46,7 @@ services: - graf_data:/var/lib/grafana pve-exporter: - image: docker.io/prompve/prometheus-pve-exporter:3.5.5 + image: docker.io/prompve/prometheus-pve-exporter:3.8.0 container_name: pve-exporter ports: - 9221:9221 @@ -59,7 +59,7 @@ services: - /dev/null:/etc/prometheus/pve.yml loki: - image: docker.io/grafana/loki:3.6.0 + image: docker.io/grafana/loki:3.6.3 container_name: loki ports: - 13100:3100 diff --git a/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 b/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 index f3444ac81..8bc37e93b 100644 --- a/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 @@ -4,7 +4,7 @@ services: onlyoffice: - image: docker.io/onlyoffice/documentserver:9.1.0 + image: docker.io/onlyoffice/documentserver:9.2.1 restart: unless-stopped volumes: - "./onlyoffice/DocumentServer/logs:/var/log/onlyoffice" diff --git a/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 b/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 index 455caa39c..790cf952f 100644 --- a/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 @@ -13,7 +13,7 @@ services: restart: unless-stopped app: - image: quay.io/hedgedoc/hedgedoc:1.10.3 + image: quay.io/hedgedoc/hedgedoc:1.10.5 environment: - "CMD_DB_URL=postgres://hedgedoc:{{ secret__hedgedoc_db_password }}@database:5432/hedgedoc" - "CMD_DOMAIN=pad.hamburg.ccc.de" diff --git a/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 b/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 index dda67bb06..835ed5015 100644 --- a/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 @@ -23,7 +23,7 @@ services: - pretalx_net static: - image: docker.io/library/nginx:1.29.3 + image: docker.io/library/nginx:1.29.4 restart: unless-stopped volumes: - public:/usr/share/nginx/html @@ -33,7 +33,7 @@ services: - pretalx_net pretalx: - image: docker.io/pretalx/standalone:v2025.1.0 + image: docker.io/pretalx/standalone:v2025.2.2 entrypoint: gunicorn command: - "pretalx.wsgi" @@ -78,7 +78,7 @@ services: - pretalx_net celery: - image: docker.io/pretalx/standalone:v2025.1.0 + image: docker.io/pretalx/standalone:v2025.2.2 command: - taskworker restart: unless-stopped diff --git a/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 b/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 index fbec25836..1df2bcae0 100644 --- a/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 @@ -3,7 +3,7 @@ services: db: - image: mariadb:12.0.2 + image: mariadb:12.1.2 command: --max_allowed_packet=3250585600 environment: MYSQL_ROOT_PASSWORD: "{{ secret__sunders_db_root_password }}" From a92e144cfcdfb0813403b2e7b649d1fdeb641722 Mon Sep 17 00:00:00 2001 From: June Date: Tue, 13 Jan 2026 00:08:57 +0100 Subject: [PATCH 051/142] base_config(role): ensure base set of admin tools is installed See: https://git.hamburg.ccc.de/CCCHH/nix-infra/src/branch/main/config/common/admin-environment.nix --- roles/base_config/tasks/main.yaml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/roles/base_config/tasks/main.yaml b/roles/base_config/tasks/main.yaml index cd8affd80..7f0281eb7 100644 --- a/roles/base_config/tasks/main.yaml +++ b/roles/base_config/tasks/main.yaml @@ -11,3 +11,23 @@ replace: " #- ssh" become: true when: base_config__stat_cloud_cfg.stat.exists + +# Ensure a base set of admin tools is installed. +- name: ensure a base set of admin tools is installed + ansible.builtin.apt: + name: + - vim + - joe + - nano + - htop + - btop + - ripgrep + - fd-find + - tmux + - git + - curl + - rsync + - dnsutils + - usbutils + - kitty + become: true From 951ec7ebcd9ea693f4f4c40b9ca1052b4bc0abf1 Mon Sep 17 00:00:00 2001 From: June Date: Tue, 13 Jan 2026 02:25:06 +0100 Subject: [PATCH 052/142] netbox(role): fix oidc integration by no longer using is_staff is_staff got removed in 4.5.0. See: https://github.com/netbox-community/netbox/releases/tag/v4.5.0 --- .../netbox/files/custom_pipeline_oidc_group_and_role_mapping.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/roles/netbox/files/custom_pipeline_oidc_group_and_role_mapping.py b/roles/netbox/files/custom_pipeline_oidc_group_and_role_mapping.py index 470f388dc..79bd247aa 100644 --- a/roles/netbox/files/custom_pipeline_oidc_group_and_role_mapping.py +++ b/roles/netbox/files/custom_pipeline_oidc_group_and_role_mapping.py @@ -40,7 +40,6 @@ def remove_groups(response, user, backend, *args, **kwargs): def set_roles(response, user, backend, *args, **kwargs): # Remove Roles temporary user.is_superuser = False - user.is_staff = False try: groups = response['groups'] except KeyError: @@ -51,5 +50,4 @@ def set_roles(response, user, backend, *args, **kwargs): # Set roles is role (superuser or staff) is in groups user.is_superuser = True if 'superusers' in groups else False - user.is_staff = True if 'staff' in groups else False user.save() From 3e0fdfa8de7e0cbc97ef7d3a089c7db6b2885b92 Mon Sep 17 00:00:00 2001 From: June Date: Tue, 13 Jan 2026 03:43:28 +0100 Subject: [PATCH 053/142] pretalx(host): roll back to pretalx v2025.1.0 as v2025.2.2 doesn't work --- resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 b/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 index 835ed5015..f61d6f726 100644 --- a/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 @@ -33,7 +33,7 @@ services: - pretalx_net pretalx: - image: docker.io/pretalx/standalone:v2025.2.2 + image: docker.io/pretalx/standalone:v2025.1.0 entrypoint: gunicorn command: - "pretalx.wsgi" From 92601ab9ea4cceb6daa8b7c36c9a202a6ae9e30b Mon Sep 17 00:00:00 2001 From: June Date: Tue, 13 Jan 2026 03:48:34 +0100 Subject: [PATCH 054/142] renovate: add package rule for pretalx reclassifying major updates So that v2025.1.0 to v2025.2.2 counts as a major, not a minor, update. --- renovate.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/renovate.json b/renovate.json index 711c6273e..0e2bd7fba 100644 --- a/renovate.json +++ b/renovate.json @@ -32,6 +32,11 @@ "matchDatasources": ["docker"], "matchPackageNames": ["docker.io/pretix/standalone"], "versioning": "regex:^(?\\d+\\.\\d+)(?:\\.(?\\d+))$" + }, + { + "matchDatasources": ["docker"], + "matchPackageNames": ["docker.io/pretalx/standalone"], + "versioning": "regex:^v(?\\d+\\.\\d+)(?:\\.(?\\d+))$" } ], "customManagers": [ From 428b5c70bc3d02be51283a69105cf36ce44139ff Mon Sep 17 00:00:00 2001 From: June Date: Tue, 13 Jan 2026 14:19:57 +0100 Subject: [PATCH 055/142] pretalx(host): roll back to pretalx v2025.1.0 for celery as well --- resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 b/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 index f61d6f726..091d11331 100644 --- a/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 @@ -78,7 +78,7 @@ services: - pretalx_net celery: - image: docker.io/pretalx/standalone:v2025.2.2 + image: docker.io/pretalx/standalone:v2025.1.0 command: - taskworker restart: unless-stopped From 51bbdd42a2504f0b3045349b0b08e3bb75b55fce Mon Sep 17 00:00:00 2001 From: June Date: Tue, 13 Jan 2026 16:55:22 +0100 Subject: [PATCH 056/142] dooris(host): make certbot work --- inventories/z9/host_vars/dooris.yaml | 4 +++- resources/z9/dooris/nginx/http_handler.conf | 12 ++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 resources/z9/dooris/nginx/http_handler.conf diff --git a/inventories/z9/host_vars/dooris.yaml b/inventories/z9/host_vars/dooris.yaml index 5813e3a56..8ae5287f6 100644 --- a/inventories/z9/host_vars/dooris.yaml +++ b/inventories/z9/host_vars/dooris.yaml @@ -7,9 +7,11 @@ certbot__certificate_domains: - "dooris.ccchh.net" certbot__new_cert_commands: - "systemctl reload nginx.service" -certbot__http_01_port: 80 nginx__version_spec: "" +nginx__deploy_redirect_conf: false nginx__configurations: - name: dooris.ccchh.net content: "{{ lookup('ansible.builtin.file', 'resources/z9/dooris/nginx/dooris.ccchh.net.conf') }}" + - name: http_handler + content: "{{ lookup('ansible.builtin.file', 'resources/z9/dooris/nginx/http_handler.conf') }}" diff --git a/resources/z9/dooris/nginx/http_handler.conf b/resources/z9/dooris/nginx/http_handler.conf new file mode 100644 index 000000000..8572664d6 --- /dev/null +++ b/resources/z9/dooris/nginx/http_handler.conf @@ -0,0 +1,12 @@ +server { + listen 80 default_server; + listen [::]:80 default_server; + + location / { + return 301 https://$host$request_uri; + } + + location /.well-known/acme-challenge/ { + proxy_pass http://127.0.0.1:31820/.well-known/acme-challenge/; + } +} From fe52127e825b27693c56dc5f0620679fe12829c0 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 18 Jan 2026 01:26:52 +0100 Subject: [PATCH 057/142] status(host): configure external status page and uptime monitoring host --- .sops.yaml | 22 +- inventories/external/group_vars/all.sops.yaml | 210 ++++++++++++ inventories/external/group_vars/all.yaml | 16 + .../external/host_vars/status.sops.yaml | 212 ++++++++++++ inventories/external/host_vars/status.yaml | 27 ++ inventories/external/hosts.yaml | 24 ++ .../status/docker_compose/compose.yaml.j2 | 36 +++ .../config/easterhegg-websites.yaml | 303 ++++++++++++++++++ .../status/docker_compose/config/general.yaml | 25 ++ .../config/services-chaosknoten.yaml | 264 +++++++++++++++ .../status/docker_compose/config/sites.yaml | 23 ++ .../docker_compose/config/websites.yaml | 174 ++++++++++ .../external/status/nginx/http_handler.conf | 14 + .../status/nginx/status.hamburg.ccc.de.conf | 33 ++ 14 files changed, 1381 insertions(+), 2 deletions(-) create mode 100644 inventories/external/group_vars/all.sops.yaml create mode 100644 inventories/external/group_vars/all.yaml create mode 100644 inventories/external/host_vars/status.sops.yaml create mode 100644 inventories/external/host_vars/status.yaml create mode 100644 inventories/external/hosts.yaml create mode 100644 resources/external/status/docker_compose/compose.yaml.j2 create mode 100644 resources/external/status/docker_compose/config/easterhegg-websites.yaml create mode 100644 resources/external/status/docker_compose/config/general.yaml create mode 100644 resources/external/status/docker_compose/config/services-chaosknoten.yaml create mode 100644 resources/external/status/docker_compose/config/sites.yaml create mode 100644 resources/external/status/docker_compose/config/websites.yaml create mode 100644 resources/external/status/nginx/http_handler.conf create mode 100644 resources/external/status/nginx/status.hamburg.ccc.de.conf diff --git a/.sops.yaml b/.sops.yaml index 98aaf3cdb..3b728e2d5 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -33,15 +33,25 @@ keys: - &host_public_reverse_proxy_ansible_pull_age_key age1p7pxgq5kwcpdkhkh3qq4pvnltrdk4gwf60hdhv8ka0mdxmgnjepqyleyen - &host_zammad_ansible_pull_age_key age1sv7uhpnk9d3u3je9zzvlux0kd83f627aclpamnz2h3ksg599838qjgrvqs - &host_ntfy_ansible_pull_age_key age1dkecypmfuj0tcm2cz8vnvq5drpu2ddhgnfkzxvscs7m4e79gpseqyhr9pg + external: + age: &host_external_age_keys + - &host_status_ansible_pull_age_key age1yl9ts8k6ceymaxjs72r5puetes5mtuzxuger7qgme9qkagfrm9hqzxx9qr creation_rules: - # group vars + ## group vars - path_regex: inventories/chaosknoten/group_vars/all.* key_groups: - pgp: *admin_gpg_keys age: *host_chaosknoten_age_keys - # host vars + - path_regex: inventories/external/group_vars/all.* + key_groups: + - pgp: + *admin_gpg_keys + age: + *host_external_age_keys + ## host vars + # chaosknoten hosts - path_regex: inventories/chaosknoten/host_vars/cloud.* key_groups: - pgp: @@ -150,6 +160,14 @@ creation_rules: *admin_gpg_keys age: - *host_public_reverse_proxy_ansible_pull_age_key + # external hosts + - path_regex: inventories/external/host_vars/status.* + key_groups: + - pgp: + *admin_gpg_keys + age: + - *host_status_ansible_pull_age_key + # z9 hosts - path_regex: inventories/z9/host_vars/dooris.* key_groups: - pgp: diff --git a/inventories/external/group_vars/all.sops.yaml b/inventories/external/group_vars/all.sops.yaml new file mode 100644 index 000000000..06eeb17c6 --- /dev/null +++ b/inventories/external/group_vars/all.sops.yaml @@ -0,0 +1,210 @@ +msmtp__smtp_password: ENC[AES256_GCM,data:0vb2d0BMSiG4DLwNeKk52/kGYM9rQpfRrtYiarbyVW9YOP/WIdpwesUZuad+o6XSODkAGqnU2RQZFs1h,iv:a/LwVf+tQKviYR4mIoSDiEgmsVyCl2v1vWXVFQkn6M4=,tag:bNf+N1bTIk8ppMEabcC6jg==,type:str] +sops: + age: + - recipient: age1yl9ts8k6ceymaxjs72r5puetes5mtuzxuger7qgme9qkagfrm9hqzxx9qr + enc: | + -----BEGIN AGE ENCRYPTED FILE----- + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBkL1F2VVhGTGZ3QWlrZi8w + c2JVMVlnNGVHdUxJQVRZeDBlSkJjR3V4NHowCmdQVVJRVEZlWWVHZjdSYzRlcnRN + clVuRU1rRXdDSUJ6Tk4rajl1R3U3YzAKLS0tIFg0QXBieXdjYmRab2duckNsNWRQ + aGdmdDcwY3RPc28waGt0cm1salpNRkkK+X6LF1lCpxIS8P8nEUE7t3VxB817jm4Y + mXjKqdaM39MR3CyXWq8bVQ/QRxg1xA6MV7mLrQpJCSpr6uDJD84iJQ== + -----END AGE ENCRYPTED FILE----- + lastmodified: "2026-01-15T21:28:28Z" + mac: ENC[AES256_GCM,data:Z9uyXhnckrVJ0LZM1aT8cSUZCPdQ0ufBC1HYxpzAGb6FS/p3Jni5tFfgijaCT3/T3yDGiV1zQqoSDLwjd48UaMjCtJYCUCAiVo7i4YJ3+aZfS87b4h4VsOFlTLFlBklNYxHd4pcPFl5X9fZGdD10Tvmtm6TlJ33Ma7gmuFs3Og4=,iv:tNeG2I9qNAgzbGwxTbCrrN7KorCneJtFildGvtPVX88=,tag:e0rXgetLFenA3zNBNe631A==,type:str] + pgp: + - created_at: "2026-01-15T21:28:06Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAxK/JaB2/SdtARAAlJ6HHQZKe3t86f1Y/DsKmO4f+xaMRd9mw9sNlxvmuX3I + b8Tvyl1abbJSEf+6SV3SXxlu+05DZEzerMQHdSNHCpO6oSMBH/fEBbtJh3mxYzwY + /fS09/CPpq1HYcaOUEB8YHKGDY7okN8ZCHYFF2fWmWsPNLq38nmtCQY3lKPdhKDu + Jg8w+9XT/kHJEjQRPjlJG0iRk90cMMBLaR5ToJVzpM3rOSkK/dFALP9PUGhjDVT/ + e27KW0OQERCxoc401DXFPJg5xrGMJaDpMlDxm+kzNC2/rt/OhhFd1pqMEMGHwZ8B + inHjCL8SNy4w3jKs3xvpE38vEUmKgbHavjjd4j8PU/z8PnIAKBCZClTbBARevMYw + P1qgwbAXEv0LwN6/Eu4mN6ogbREFk671PTabJ1O9zWFZBPKSOWVjvs6ka/5nRdow + RMobY/t6FDOe1i4eQM90QKyTcyBzyFZCl3piBKDvpG9tTEVHriX4bTXNtnGw3h1W + XoMUz27G0IZmKZRcYFkqSNPeg3yLXBgsL6by+euw/OwOXuxcR3G/5HpiO4XgWdDn + gYvOGvVa4WbG3yASWPJNJZ6ivtLhAgts44ClMIk5mjDgHz0yL2iwx93g6bUzmswV + HcpCLSy7wm5XNl4l5p4l90iy6/K32Zp0a7ftobA7U7VyeWfPalE3IYE3s6b+1gTS + XAFWL49B69eVA4YJ/iRSZcfqEPMkKzQUplODPUfaHHtLRwR7BhpFX/u3lly/YNQH + tCN+vKShpC2PM/Jw8+UxDZXoXNiGCtTIDFq5+VaifkYsEAIVqEFv5noY95/a + =Xw0f + -----END PGP MESSAGE----- + fp: EF643F59E008414882232C78FFA8331EEB7D6B70 + - created_at: "2026-01-15T21:28:06Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA6EyPtWBEI+2ARAAqcJfa4paWWvQxKnNQT230iT2iRCCskzkzrG9z9rnSbR+ + U4BO0QVcKZ06+4/WatZC6HuxIPyajAQthNsmMMBr83OFiT8FPHnOOGHc9lemO0/L + eshneJhJ7LeYUh3dOeN5lVwCQuw2Hy4MXmKJgdt2Nr5dXmRD8ypKxD/i5Nc4nkXW + TY61C/Q9QJF+HZG4toHt+zq+ROjdsTbIhNceRWnt4mIGvqIzhRwk65o5WILbCFQc + OL7R+JyyqouN579tO1O6bRT594ufnyQ6oxLRDQqKMdTHYwWijRuA/FyzieuYGbmo + b7e6tZeJzlm3H8sSz1WwAD6RoA/O3yyCw1gL9UWFLSfF7iwEKmr+oSN+mEUPJdhR + 8zZqSQUH3n59IVNdD4UyJB/I5AHmGW6QV3ZF42lwmmstIoY3uDzgf3US+ZvPPsem + Scg3PIDSxg+SV9G/53TJM+Og7V2XAA02EWIemiIaJZ7rPiySq1RmQOjnx4ZX+ORk + +PDF0gDpA10sTPXQM5NoN8YSilIV1VENjUnESfo+36BlCepmbC88Yr6oexIK2xoq + 5SnDYNOkVClYcEV6/URo0zr6Eh6+pWaK1MqruyZpRrZFbribK+5t65eIq0fc8oNb + ip7VfArpcpYINfL1GuWoFMI0Uj/IMevlN64Ci/Ub9NddCWCQy5WF7u8lAVNMoVbS + XAE70ICHJqH9SqHe/dchwYcsLIPwX7r2KoaI23XkK7iROX1NL6LC2nISh/Y5P+X7 + RX5sBhgiaSwY8L6QseSQzyqTmwxCaq7e/f/+grSUYKmf1FSJe+VxGsJ6Ji0u + =k6m5 + -----END PGP MESSAGE----- + fp: F155144FC925A1BEA1F8A2C59A2A4CD59BFDC5EC + - created_at: "2026-01-15T21:28:06Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAz5uSgHG2iMJARAAzD/3ycZW/qMLjjSG2T/7378ogylYenCyV5r97m7//MTJ + z2jCtWiAPDkiuDDfcqt5LxthPxCr3A/WSTaSsfZQ/zWedQlm/U/RBMEs30DBIUQr + AIckqIrJUrgPEo8A0/SnCBNS116BVspI+9n/u7PBPVb70JX3j4Xp3dRGrEYHVpwX + EGSk4GirHwutIRE6xP9fnvQxyK64jYTDCfo4t6cIUf2/we0LyK+fU4zrm6wRffzd + txiEu4YXvsGbxWeAV3/7/BRo2HJBc/Xqb7mzTnfScltC7hiRD2McmFJs1Hfv0Lg3 + CGaMOJ5w6Gk8Q+9pgg6R2MQu8DZA7PILm51Bc98ZdiVwg0i8l24ndswUx9+WIWeX + AeOxvIVvF0XtQK/JJAkoyoVssIQSFI1OjTDnSHWjFw0Vgev8hRzwqS6HKJUfCrnt + KeuGuUOa9QBf3bnbIINyL8QEj9/cnNDCQGoXSZIqPXUs7tIqcLgNryGVnrEn4dDf + 53Tudml438QRgzV1d87jEKSmUBtqzUDRNQdZqNbzOdaCQaQgkgZlQvWQtbZNMSdQ + iQ+v3Hz7pI4yKHhqxXrWrxPwC3KdGTA5qymUS1d1G0BwOWSr+cU6xJBeSqRc6fZn + Q8rBKS/gL2Lm3BAVhHBVWGwtbdBhV5ZL/bdT436pJd5ku3cWFTuiMY2SEC1ZvNXS + XAFb+jgjB5XzlRZhRosWl1X/qyWO4GXN4aypi14eAQDsbCjGnFZh6utoV3rNmNFX + OJ3kRhyHmF+gbp/e0YRq/BnWu+5uzTZQso4fzepgjui+rF/qk/2Oe1nODtM0 + =seAB + -----END PGP MESSAGE----- + fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 + - created_at: "2026-01-15T21:28:06Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAw5vwmoEJHQ1AQ/+J9MXLZrMucsbcgdZ/yflnA7Ai2WynSZ9NEzLX24NybGZ + ynq9daa+61w5S5thnEV1Be4YEyFXIXfD0bs9KEO2kv41HUySD9FR5QXXSiad5Ij7 + vPzZMMwjCfNg/JvGQ9p4h2Syc5LYtJ+4BNnl52zjKCJdp1scJqAist3aWbaHoCAh + GiJCjv/02NP25WoVShw9pNvvYPEhtPbvO1j3bnvUARXT8IzhblNbfntDwPb+fK4R + ksMBIvAN1171l530s0zPzzkJTkxRBohyCixvtgZKoEnYeUAAHk5Clah6GrLGErvA + q0XUAEridgDwe4xG+WpzFWwTaGzQPBLR5NPqtph13/02CdaABctbr80WQPoch5vN + F1BnObne8ZE+do30v0KYNTkFKhK5ek+w4RS/1rlBEgQMaNyGHsjUtoO1/6JfFXyT + 968gsga/YR/shZwLaxLQePi5qTcvUzGNgNvFLjy4sRlbWiNCrtZo0JpMmRc1YTXb + Tq7KhivgEB3gCYLdzWTCeYw3aZXsTFUFM8MpH0BMABpfpNCdiDrd+RZmgDa2KShH + RlpqvN1cXPVY4niGqb0TjQJGbmCrMfSbEXCCYLMP+T+jH+MUs0Br4IVcuXIV9EWM + WrYY/r2tCblU9DaVbgzLlIIu/2BtKV0/Iu4KLV2vWBocLPNlKnbhS8NxnIf1eHbS + XAFxlY0r1uOCI7d55ZRpih3NnccBWYKmxs/WZavFdooPcRS6QKV6d2ByZtjqlO0T + X8xmDpyoxkNahauxi3Vw4o78HyxEqQz2u0HNBJlFC6iFQJnylkOyitIyNCTt + =t5WG + -----END PGP MESSAGE----- + fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 + - created_at: "2026-01-15T21:28:06Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DerEtaFuTeewSAQdArBEh0/AnTDRmDT2r74ejRgmbbZpWjVBmvC7mgFdEq0gw + OdEsqFl/ihieW3XkAC0UWxUhacc03Vq3FTY4Fpj7eQTQdfDdn8X10YQcH94XGLxu + 0lwBvUseBCslA8gjyzFEtFp4TnDEi2JZV3nhfQg8SxrYIQ2Uo6vlsTzvYBvikwaD + kLu7fV7lxV09qoROlSpXVm6II6sIk0nmiajb49HM15md3ZElulGZf7A+6d86Wg== + =8Qs3 + -----END PGP MESSAGE----- + fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 + - created_at: "2026-01-15T21:28:06Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAxjNhCKPP69fAQ/7B2zWxGFqZr98hAyQwNaXp+/T534xRU63dXkYV15EL9q2 + SlmbEWhl5iVwWoZHl3r7yqy4zXZJkH0XX7g/MlwMTHIu/Sslvb+9ME+QmpI26Awm + +0pQN6gZXEhQ4RFtDMSc3PIZYgaJ5AdEk1p/nMwYsQ17Gu6RZeuSL/5b4oXEsIwB + nc8kqskd846KDspSoa4HprP3QUyfwChy5+d3/S/SMak/iY97UgYm3iyHXWr+sbAm + ykXGQo6Y/QpSiBBc9Z8hyekBQBjiftTpH5T/nzSn5O1p2G56NqK837SZj8CgyanH + xOIy1JZYbSfYiEzqXVSj7KGs3aNFFUi9H+Fy+wzDaOWeEYt76koTWZnutOg+JwCP + 2N5DiDOhoYGygh5aO+dAIoGLQufoTDrlMO9FWnNXXCPIwCUoyH5daiMyn7G9jfwv + 4rTkXe2mHXXkoNCDHzjNcAEpndpczdUO0CbDNyOuaZzyEYWObJMOdBP0+fmwhaRP + AWd0OSbUUkl6RTI7R9l+3wBC0A/be7kOvqvTru0RSZaY4Ba7zokZaNJsoUTvjjL5 + fjT5MhV/93wEvaHNmGy+IiXipS7ItTmW0xckaFkEbQUbw9p+9UZMxNqF3l5pw8hV + J5tTo+rlHda5KBDpTEEz3vUK7MgbgAzzERqqDaUqzWTJy4KeOjYCUfvNyQiT7m3S + XAFxCx0poAo6GCoNMhjyQT00iBfpjvUhDrWSHezKW/J/U+Z+TkcICC3Orsxy35uD + QtOZIayVIF5scDAIQa31zETB/Jjaq7YeUZvTzUv7Shhq+sJhVUQ7iUEVEXZn + =NJUn + -----END PGP MESSAGE----- + fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 + - created_at: "2026-01-15T21:28:06Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA1Hthzn+T1OoARAAsc5cxMwr0YCwJq1j5EcQ2AF2LvyxH4dvwuCkyrqxuV33 + rTxOt40kqHcatZgHLfHt1qvfR/lGisUyvvtJ7Gdw/MEzunqwux6cKisRoyTB0dSU + b0DBQdNAxujVuBng6v2aoZDXAZNZ9I0epuGnBRcq2+FRAWjRH3YtwuRuChd/VtqB + VJJjUJDczermc0kvdrZ6AZ8bSemOIFOYWfZ1iw7qXMiuIXKJqY23KzWSpYC3F9S6 + z1XKviqJlWcb7VyCA7LDLfjYCAb6/yvj1mB0+fxYJJps6DWsbxvoZWF5mdh5f4oc + y74XZehQZTHp4JMs0uSdsuMV3w8zMGUXvFPEJXB1mvPlYAsyjwusf2fqeAJk3JZk + pPF/hkwR+LpbVNKk9KbauQLkt+p6E5YWDir1pzeIN6rsl0Carau0TRT9EEn04f/6 + DL1nF7crXl+7KTgEOt+ih4VuHpXz9lrboUD/WnUpjVu6XwmMH4wrxJggTq+tJzdS + 55PAZ0qiTGwnxtOn8NGa+01JGcrmtLnfwRUGUO6xxpyy4AtcyyHwEvBSjKRlBvV2 + Yx6v6l6OlpBdYdlKjEeOLPnQqn+iRolQtUTWWk1Hu/a2sfJjZPMpXNSKbgN9tMOS + 2zGLe8OOU1M9V9ESdD6He49GRCWNXD00Yv+IUdqFuY7laqxBQCcyIthGA2wfLITS + XAGKF54TE7VkuCQ2vw0HZG4TgQtmw7W/hBMcbSatGwFwyPSs2+9wsJFmJUniArCZ + e7RUz4C1MIFP97ZSFtfLd8tsIO0zTyK9fRAOUwh8wdAZhvS9Fv5/Mwmctj9h + =gUj7 + -----END PGP MESSAGE----- + fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD + - created_at: "2026-01-15T21:28:06Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA46L6MuPqfJqAQ/8CKPe91CQYybuRlIb4bRl3sZ2nXYw0OS2p8NYo3sawcsw + YFwgwT4GHMAMviZ3U/Dm1VVtUEH0dSZ/tYoPFE0pCOLWYrVjqLY69uM23ZHV1IX4 + W7A+jzNTv3ODj/lc/azjgBcBVZpSxgAQG2wiyX1Dq4Lx5cpOCYQm4KYp9hD6ddly + m6zk8vH3MBRvPAlacg3C6PSy1PV7sTgBZMBIE3DY/HIjv4nzV3/itIPZcf27dYTl + AEjiI6eGH6sUWTFRF5mCP4sRycaU2g8iZ471nZdHe7PpldginWJEN9SD06oewZJB + QjvXpVNjVu+RQ/hOl5LwIllAAkk0ghK2bRsh7gVB5b5Kjv+mKKNe8yjKxKcpZuVW + fUEaRpyILTCwe6aFnmUa6vUtpgU2QRKzv2ycqO1FGil1yZJ/RPVCc0RQoLSpZRsT + XvrZzw/OVfLespNRPcC/PTvNwhIhBYyIDvEAgQOnEnRCGoijnPAOE4Z5zA6Rtxfw + Kxw+E5s+xV1ff+qo5Dm0J/LyC90FR3vstzSkM5n2HEy5OkbACi9CiLRaIiYxlDfv + v5H3Gc0hdVRELkK1T9ND3I2RAyJVdDq0WvxjWRIfdRULLsk86pFoFjus0acx3ukt + zotRh1wI1o319j517B06v+Jn49bLx81ipeHfsiz69P0sDSRKyOcN/i4TA/Tj0OfS + XAFfmEOJHnhD1WOlbJO2EiGY3QD9PIV/lipja4lQKv7ROWlIPVtdvgBnaaNYAvUb + YLIA3oTcZB43vm5QW3hXsTz2cn/w/JvnuojtD0kKzT643dR5BC3D2XsWpHWV + =pL2f + -----END PGP MESSAGE----- + fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A + - created_at: "2026-01-15T21:28:06Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DQrf1tCqiJxoSAQdAxf+RXofQmgst0qgbY34RgfqVKCCYHHH3mbCdGKbfXiQw + 0307FFijrW2i+wHW/Ugob489EH46zUENkmEjxPcOao+p5TWqOhryWOmj+5K5iKin + 0lwBDuM+y3AsogL5PAerDRGMIqmUO9AAuRlKJb67O+n31fA0CSlRdYIlR/0IiXk8 + KmagDpdTyNWD0M8PRohazoKEiB6OrEuLfRiDwyMhyuRtIXRnckwZ8anC2B2cLg== + =slU2 + -----END PGP MESSAGE----- + fp: B71138A6A8964A3C3B8899857B4F70C356765BAB + - created_at: "2026-01-15T21:28:06Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DzAGzViGx4qcSAQdAYTkme6X4+jr7/5qNidpUZjiwQzR9nhJMHU9ALot5mQkw + bVYbs+lqddtYRVKLh4jhqFb9WGjC05JMnb8o/OVqgvOV516WqCzg9qmn2JMn5CvL + 0lYBtBwzrQfqM7RbckekoQcabirca/67RzCAqB9O7Lud85+aQxBR/GB9qE/7FLfp + JVT42+KjcKSQBYWS+lyjgfXs7H4WhNYsai8OFn+JzqswG+MpWPQ+Fw== + =1DIj + -----END PGP MESSAGE----- + fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD + - created_at: "2026-01-15T21:28:06Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA2pVdGTIrZI+ARAAvoshi1af/mG21B9x8XOtYn2CmsjZCLWYWuhdM+oMe204 + CJglTK8C8CzuJcXu84IKrdV8nx5Yk0VvtgtSXiKSouDKWeQDHHqhKEsPlc6+FL99 + e95uzp8ozvODxch4xaBP3FZkbgGgFHDZSF47NIC9AkyyGe4GARq+OvtADUMjpb4R + 6WXCzqaH976KRMcgH4PXlWIUiYvFJz+6k+chbLfcf+uJxWL02mvPV+ArSbGc1Ns1 + M2kRYdEPZ4c6FCU6DYaneJp22ywPNgJm3dL8WU7Nn5uv7iYGDyceh3dnGtF0p0jN + Mo5TT8MzobIGgD2RtsP4NrufV56+Y4G5oqk9jPMofC8QUeVR1j2GHDfHrls2N/2L + vt0VX1wsv7ToAY9bUUNDLutLnwQlpHNP/sacudw0VpYDl55ULa1dLC97qG/4va8G + k3wdzqwNwgzIOPDIiQ3P8xkn4RZ9b4SwPNFb9BRqufFaA+neZcNelfpTqsT3WNfm + MYdzDQtQdTNi9u0ADsuZ2JIX2uUVsB1ol5Wgw9D5+yksTeC3n89TTmbmt4PYkCZ/ + 3MH3gLGGlPLfc9w/q9JqfQ8idiPgWc6CMO83gGXUWbe0SkDCBY4evyP41s9ojSdF + XrkZQycNoardD+co14Se4d5g0oxYfhNUCIYEo2JwLkuE11iMXG1bjt8JB+F514vS + XAHzAelcyBaqqwZqKw1OKWz1Vr+hy9S+uOs+8Qg5G/H0nxa7BG+PhUB+O5i8x4Dn + 96Eq2r2OsVJ3z8YeLcH2FbnVECX+/nj8a4z8yqfpajmoKswOfhp2b2G49aYz + =IYeC + -----END PGP MESSAGE----- + fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + unencrypted_suffix: _unencrypted + version: 3.11.0 diff --git a/inventories/external/group_vars/all.yaml b/inventories/external/group_vars/all.yaml new file mode 100644 index 000000000..80d3efc21 --- /dev/null +++ b/inventories/external/group_vars/all.yaml @@ -0,0 +1,16 @@ +# ansible_pull +# ansible_pull__age_private_key needs to be defined per host (probably HOST.sops.yaml). +ansible_pull__repo_url: https://git.hamburg.ccc.de/CCCHH/ansible-infra.git +ansible_pull__inventory: inventories/external +ansible_pull__playbook: playbooks/maintenance.yaml +ansible_pull__timer_on_calendar: "*-*-* 04:30:00 Europe/Berlin" +ansible_pull__failure_notification_address: noc-notifications@lists.hamburg.ccc.de +ansible_pull__timer_randomized_delay_sec: 30min + +# msmtp +# msmtp__smtp_password is defined in the all.sops.yaml. +msmtp__smtp_host: cow.hamburg.ccc.de +msmtp__smtp_port: 465 +msmtp__smtp_tls_method: smtps +msmtp__smtp_user: any@external-hosts.hamburg.ccc.de +msmtp__smtp_from: "{{ inventory_hostname }}@external-hosts.hamburg.ccc.de" diff --git a/inventories/external/host_vars/status.sops.yaml b/inventories/external/host_vars/status.sops.yaml new file mode 100644 index 000000000..e3004595e --- /dev/null +++ b/inventories/external/host_vars/status.sops.yaml @@ -0,0 +1,212 @@ +ansible_pull__age_private_key: ENC[AES256_GCM,data:u0tluAG5YmXTs71/F6RjuTITCrEoJco0K7+o/F7An4OMdOAwJVBvvMCnEaYsKhLhdesnMIoA24oz2j22lKRFgZUNtkF08ZwH9gw=,iv:oqTTeOi8l6ig4vvqOKict5bqxjmiBW+kwlZhbozoCSU=,tag:ZL2wuIczCHguGJIhbY0NuQ==,type:str] +secret__gatus_db_password: ENC[AES256_GCM,data:fwtdWmXVTA7odBsKnlxH7mKKGtplAt/rQqscFBAxbDky6DNqgk6PP2OsqbIEpnpzs9Yn7Kd2VAxzfJfK,iv:ox/Lm+LlxxRcssOPc++nRp6nVa2DF3/46eEsGzTOBmA=,tag:i1e71Gm01ojHr5pGy0S9rA==,type:str] +secret__gatus_matrix_access_token: ENC[AES256_GCM,data:wp6C2E/LM3grawu8oW5CZZU0Y2+3qnuEbcKmgZr16e8P1KG/v2kfxRQ=,iv:S96oyGg6hI2Co7PJ8BFtrzZag82PTfp2IyIgTbxfdiM=,tag:JROk5PdoaMzXq1qXGgaH7g==,type:str] +sops: + age: + - recipient: age1yl9ts8k6ceymaxjs72r5puetes5mtuzxuger7qgme9qkagfrm9hqzxx9qr + enc: | + -----BEGIN AGE ENCRYPTED FILE----- + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA2Y0Vib1U3ZGpyZTlBNWMx + UEtCbnArRzAvZ0o1dmdJL0hSZERTR241RlNrCjZ6QzlJSEFhWk0wazlwRVlDeUlq + M0syWDZlc0o2d2NDYmVyUmJpWUdwdzAKLS0tIGR5NUVwMkprRnkxZnI0TmlGUGVk + RFl1MnI1K0h2MUhvYk40d2JjbDRaUmMKNlPo1s06hVdxAamKhJy4HhNDX8PKQlq2 + 13PjdTJub64fydGEJng5NigcnNcPo7goGLz5QV7vE+6bO0gNZxBmmw== + -----END AGE ENCRYPTED FILE----- + lastmodified: "2026-01-17T23:54:35Z" + mac: ENC[AES256_GCM,data:K/uLPclyRgFOMhSxPpFOiH1fQF0EQHKUNnqI/LW0o6+ON07r+UWv9mXaT2M7xUNhgHkv4lVu/qfLAKXZUVGlDga5ufH3A6xbcArqtQ5oyPoE5HX0nbcU4QF1f8JyYLVKCQdI0pBQkLU2cpAFHrGVLI/8+RY/uqrtNee9f7fd4cM=,iv:WRfTSWo4cfJOvjQqeSrSUCOstCf0FggTv2W4eGRcTF8=,tag:GE9cLzmJZt3F11BZd82HFA==,type:str] + pgp: + - created_at: "2026-01-15T21:23:56Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAxK/JaB2/SdtAQ/+ORxsmaobaTVCnVlaaTlvG3GRPlL0G1NG18eF3Mra2FU/ + HSY4/QTu4BjGRzwOlKJt3NBMGlFZucwklIecAl1cCDXPSvIRnwuIsAI8gxNnjmVW + w7URAscgfVobWxpLqFhlnQ+8ozMPXW7D0ZDLe4wKPa5wNuE/kdzM5ZCl3NB4q3fi + o0C8uSnsTAp8clay/xnTtnJxOsyzyJ29JVsinxAyg64m6AYNa53yNZoy5kL6VIIr + dnNx4DtOsxFuNhKuvENePoGjuB68i0NWitsfei3G+GLUp+CbPisrzElM6vsXQ0wT + QAu2OpTnrQSv/YWi8Dv+1YXIKu6nOuMc+avQGLsiuZ6hagrvfRTmoQirbx6THDB+ + 97N/ZZUoGVdCtb5BRoBxzl7prwYGXsW+fP7B/PlBBBM5pI/s5jasFMOBfrrlJiDE + dyBcE2rjcehmZ0DN0YddZoo1UMYzsn6HEMH+kFp/VD3+y4A47Kk9Ou0d9+Q7ufsf + j8ThNihOBrwz8DlvOb5/5HacBFOH5T9b42j6yOmyrlAXnC8sQwFDMDERs7XcVSXT + B9SlX6OVZ6/xgG1UjkY5aqYiWkIBUO/9k1OP3OMoZM7WPitIJS0a92u8EASX4zT9 + cJjyym8oDojsM4+/GWMCHcEA5QVSEFsz5JBONiEJkv9UCYXOWj375SH6WjTHQyPS + XgFA0rCYobVrmH4oQ3EzmbqTGwBuejwcDVA++KiUePb6jhK9DGrETHEOzUyOonpI + tNfgyohULH3eDRjC/4gR9JDr+UCC2t31Rx5kNmonz4H3KQlgm/5UulKZZfFk6VQ= + =HCWY + -----END PGP MESSAGE----- + fp: EF643F59E008414882232C78FFA8331EEB7D6B70 + - created_at: "2026-01-15T21:23:56Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA6EyPtWBEI+2AQ/+Is5OSeCOwUDFocaFiGIpKKicsRkF5WJXcV0eTquCvn3M + UeDpYww0CatCOmx0u5/ELzyvr2NhLGwoblLxwwb2HA+dTWRzRiTGZrpGJ3DUwEK6 + KvqFgrOIDttnSCqrGiPsNBkGP3oIH/WIYXF4SJl5stlnujTOW+wNP8f+9gZspyY4 + JdDXIGL7cbvzEzionilKbroKgDTNCm/o/ATWnlvsd5qv8lsIVkZlaJqldRR+xXuu + RLHz9Mav9NgzzFERA0YY0Z56jpGikoywB7iBCbozXvPO5oY9YcuvdLoXELi3Rimf + LoqIyGv/dHepZvIIy/d+E7ltlQHLXdH0LMNyBRartVChR/p0G/YAzXDAgnARJm+J + SB7vUPBqFwFpkiIE0bRRDVDYW8VlNZta4V+hxb3iXuVHljuYUrIDh77VW3xNQyi5 + YfKxO9c9PRhq7sfeBj3iB2qAGoODOU1whdaWXJeNIvYmkQJw81eu2rzHT6NHsbrD + CcUGvbVAO7cx8xZxLiT2jZlbeRrTM68Uq8zC0ujzHavrLUWvCcAcFdk8Un8UJbaF + W4B5La8ZAQUg0HwDavrOEXFbbdkuMT0BIMIxysxrcetqMdRcMjQlbjHz7RuROp4q + melLD0F7L8cXAafDRXXkTTpDmaLN8s9v2j953/RzY7lS1FPQMTduWbn4Pg75HrbS + XgEWsmhgtxSNSgtg/c+VyS9VAykAaP0J4mVWUJZtpw3T8wtkAVeb2zFjmOWay98e + GC9m9N32zdg6MZDLnAABIEhDCGhuB0QjHJaXHcQxbuy8T0mgG081s8spTZnU/74= + =v7Jf + -----END PGP MESSAGE----- + fp: F155144FC925A1BEA1F8A2C59A2A4CD59BFDC5EC + - created_at: "2026-01-15T21:23:56Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAz5uSgHG2iMJAQ//f4YuazCNqBuU6RxLg7gbh2RQ7KQ9QDIPSh+YIBr2k9RJ + zSjTIR2cPu4JX7Bf9w378oyExhxe6bU00DKvfmQv+CPwjR/4NfzB+/UjmrOEmZqv + y/Gc/2ciT2csHiuAgmck/tKCdVLyXmlMpR+ru3LBVpXLc0wRqDLze9RKM22L5o5Y + Tkf5LCoj77ixhVWZJ/MUm1GlCKmtAJ5tZpSOUenSApSZ0mbRUMI6SEmLhf7ApmNo + FInztB8eMcgyV7vhEmhAiLTkB29kGh8Oe/TtDSmywhn/pTcs4tlY7fRfcxkJaYgw + sZFaF3b7/xhF04kJNEugKemTZTCOoXuPvjvDKQ0glojQQ36P5S01uyH1FOHAbItz + 8xilRiU5lHuu7BsZcb8rU8qNYnpEzY3DX/Ccpl0AoPWjY925XB7C8H8z1kk8UxR1 + +b3XXMktUugeTZeiFG2pJsp9dhiRqyuzvW73yJSdHjqZW+Tq4U2D9Je1WeZT4+Au + qTQh1uC2dRgQ0PMafX50aTxIK7lPxva+cOPgYeALXP58TCUqeNUyYQmvAGba7yyU + yec3Hz/SNLqEhSnOqCx+TXZOhV4PM8fTzpnNhqZQ2RX2uUXwXjuyAZ8fv3v5se8F + HvQGW8EvJaDSvLD5GjKblQqwNlFWf0HOPUf5UZSXV3MHsHLzYHKlOE4cJ778ih7S + XgGY+6q602ciOETbXexRAK4G0AaAY06iQqIvjqzTRmRgkftMI/8HAV2mfjfRuTXF + 9DClJje/SpRp/fS6jXFyRCc1MysABsxcyopIhHPxf2iy4UiipC1c15Z9VVK4cL4= + =l9vN + -----END PGP MESSAGE----- + fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 + - created_at: "2026-01-15T21:23:56Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAw5vwmoEJHQ1ARAAr6u7xDPFlylAf002AQkjASgSyCdLMD0LxXmTEihOxBnp + +ZcJN9cpuyCuDaIfSqGdDLUqZ6TuAfVaixtXbxT6Odl2q1DN/GaVkZbDVwGk/W3w + +lSjBz4miAcU9kaSFeeJ9BDEdqROduj8/fFc8jLyxpa51nnp6ON7wI3Uup3uNZN1 + oEwcav8u9hrbE5glS6IMFpGQAhJmvzWH9mHWCQT7A3GGK3DsYBWPH685vVk80VBw + 8IO35N2SMVD+ebvFbSnitBSOmSNUzHgv8DaBgJkcHb5EM8bCiZNI3VkbGdi8AmRx + wvuAclYkemq/bNu5I0sjpt/uxEOVqsymdPs+gOVgKceEy458ZfyRUPxV0Xp5Yi26 + MzAas8LCL+m561L8MTt01CfXJKllIh1aeNJEWYKyTtIxnWfhHnhAfiwiRaX+sAdK + ApLFSCtwAf2fvpqaUY0PvAwKUNKyEBrncu9cBuqK6EDx5YVQul6Mo2nx6W64G7mj + IUGQOoRATZP4y9bJJJMNU5BfK9j7Fdhh/VirB1XSSWSlkUduv8PVx99iLejfnknB + b0LVS0RW0W+XgbM0yvjRhDATalrcuBX4R7voQPeGFlw//fdg0qepSe9OeAPA+RNm + YTjWVWqXOmGJQ46sms4P1Fhd5NKgyv7qAaZDVf2lDZOensbhwWFKw1R65PSbi4DS + XgEDIaRdmRPMHOGoHzcSieR+sxDvklEAWyfUMn8D8u8dkgs1u8WL3gGixDaPMvcF + JgS3PA6hl0JOi3+UgBWGh6gx+C/mr+6jly+IhWd78HAsbsJcGIrs4Zlu54T8jV4= + =8IWz + -----END PGP MESSAGE----- + fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 + - created_at: "2026-01-15T21:23:56Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DerEtaFuTeewSAQdA7STwRBnvhKhEh9mdHz/GWujTMli/vbMrXv8WnZ1boUkw + 9Qtj+soJcdr8XxDREm//Q7wgGZJSJe6dBdxW5NC10H7bYDFc9aNkbT0/ceMj0tBM + 0l4BNU1LT9rZrkhGUTqA3Gs+bzP4xazBGuiucCkM1mbSvRAjWO2abLb17GKUWODr + 1uDStVFrPOTqN/0/O1lAfk/Xv5LQO2X/xVMDD42i9txP9G8+rCF42gKdODWF+DsQ + =FVIu + -----END PGP MESSAGE----- + fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 + - created_at: "2026-01-15T21:23:56Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAxjNhCKPP69fARAAkUEvumeteWHZ31xbvLAWezQr75Q45DVzBAX6MJIPnCcz + ofMYuDjz/ujOES7UtAYrRekCW4R+PZQ2pcC3tbNHxKQjdxsA6cY68mBQLj+TJ0+F + 15jlkAkL7utwOxOh8P1/yxO+hr3qZl6rmncQwiynRnyiAJa6FHK8dvAHVKhLWcRN + pxx2O5m8I/+sF2/XgVs0iq0KWG+WbwJWUlvWKJ+2LNvXDoPYD0sdo8G1hkuQGOLW + Lmc1xN4hbTzvgjTBoUt1HUEOgohau8TMWnT7x1jpMLBNqm0hQfcyNmBuK4vA3NYR + PjtMUvEuucjOrFvF1g+OaTQ3ZSkd431yqTHRbktZDXdCvhYhSfxJ2TKdqX5U+3p+ + 27hPOX5cVISd36T8Oxm7LTt2GSZp5JZJ2gzRuSn8HDEHHBa39+jmdsqmGMFjAJfU + amK3TNpLx9U/AGw9CYVyQxfnrRPArjuPXE+nVmuZVJhgOcex+5SAA6YRpzPLj5/I + bHv0zOQ+84ghaIPvA7OlehgE2DYQjFC7qMGV0Q/jEomzHmwaFLlbDiSX97SQM4+P + dwe2gbz5EfgVdXeSwyPH03W5Uq/D8GiNFASxe6ctfwY6G9cUJaY7gj+br2/WSjzc + bSQxbyA36q6tSR8sty4lOkRqfhvCsopnACe3UaPDD9aUPu5dkrPFD2DwGZqALjrS + XgGQM27HAK2eAWtmQk7wWZcK8EyeO4bPl/JX8hMU8xSnbHrFpY26RNY1C4mjqcnD + QoyU68TbPmGX522sseuygCNmEEM/5rhx6wwePH1X+C8WRHMmXyLjKD3eVkFJ3tA= + =EPrs + -----END PGP MESSAGE----- + fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 + - created_at: "2026-01-15T21:23:56Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA1Hthzn+T1OoAQ//arOC3Dpt+X+GzGZFPngYFGl8SHgx9vrbNcNdRQBEBhX0 + RmkT3rBbXRNbJvZHW6YPzoMRzhDMHEs9osbr7RwpTQxpL4owFd1hx8bhDjZYQplC + Gfj1xNjL1iFsQV1kWx7dagpkDEoPVlPaDyTDyHkj/fmgg/aU4y5GVUHc6l7iClN9 + fn5HL8/sCROAPteReXnwxIWmn/03lldh7VMYwKaVIpiTf3QZzEsHAOYT0EdEcapC + 3d5ZhTDmOvOwy2PMfx5w5RpKXKe2cbhoS1N3KEHaZIochlvnvQHpVJ3jhn8YG8j9 + bJ5tklEauoi1YHsnj5vzm8sgQMj/p5DJHALfVKxzAMCCe0AqcVpVGTW9SR1ZMUXW + p0UZOmeNBfqhcOIbKXW+Hj2oSZ25KGxiXZwydF51xnUT8rsau7nPYOgg+9YARAVl + USZd85OX/dZcDqhfK1YZjdV3GPiTHGFUrTz53sW/nHrcCCKXL17uADLr1Z/rk3Dm + dayNuUVhlqgV6Z0ts0Z9blz2X/Bz2c95TUTze+pUoXCP6oKcxGbrEfHBzJrhqeFa + PYGRyna1t96c3Az94bz2orX69Ij3QPyd2p2B0nlv+qYNk55J/aVPIfioZSamnDk9 + NAQJksb2M7KIq1rjheWsf/CLZYHC1rcrhUnz5SYIXVDe8f3+uNc0JFGYPYZuF7DS + XgEa4Lw21RwQs3Es0wAZSnkku+yg1Lg2YJ6/d5xSZJs0c5mCYvvW3q9oTc8u+D3n + H1/Lu8HvZtHtGARagLqHw2MORNvoJXoCT0EhcPBK4PlJKSNye96U1ooNfwxbUMo= + =0Nal + -----END PGP MESSAGE----- + fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD + - created_at: "2026-01-15T21:23:56Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA46L6MuPqfJqARAAlYT9Xqnfvd7uWr/V8Ca5oKJ003yWKGwAMd06zyPmIYOK + ErTHC98r7LXuGaMcIUrJ+oLf6YipYB7PyHwfz+zpxhDRTPAxXTqkF1ecLi7qg2AV + Ez3Q1hpPJv1DWASrVfJgpnlQnQtnpqXQsInL7klGc10mtbgc2zHUndWFqjxtkAhl + IinLZHZVFaijFw10W+e6T0UUZ9WfIPdCOChcqVp5/86DDyl3S9dBLmAd7wywzbuH + i0y1uelIxLyYmzLxYTNgJwEHKzQvF6jrj40AjT8HtUD473ILD5M4p2vdvNCUANu9 + 1iF4q7YM5g6cgjGC29Y31wOAM4YzdkwNXJsUhn4ACzYNBAItXK7Aw0I8WK9AnUfq + lwmSirx5hi870GIfu/OYeNt4I3fWjm4qY1aFwoJJRWrUdH94I4P1O6xXZyTVqpmG + m0Ich3O16Ir1vS9oFLdFSFGP7UZgU7D5314OKXNsEGpFLGa9U7AG1ZPHGSb6tAQi + 9Df7TsWxYVWKBU2PbI/D9StVlWDVilt2QiKtIcRwLs3/3JrzTPJd9tvUtw6Tyjw7 + N12/SE3yHwWxVPUXF2AsopmOoHGh67Ki+6oc7xTmxtcJWSITUhBL16ZjMEEXFeHy + FMODciBLrXO1jWz65mkB32ttV+oPQuCdtFPTzuKneDhVBybuMJrx7DEIFaf5CmvS + XgFrqRe9fua4zRd9r9tJE4RSosQOAhmVgRVCJIg5B+qUGC0l2AwO4ro1+a02t6o7 + uBGGRHeQYrGv6HVUd/xfirUj/mtrguiSSpOy3UZ5SHIlPxuj/2jf3WxVkU0QP5k= + =e4Qe + -----END PGP MESSAGE----- + fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A + - created_at: "2026-01-15T21:23:56Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DQrf1tCqiJxoSAQdAqRvfYgKUyKqP1jy9+s3UQ+vqUWQVxC/zXkcXOs/G3kQw + 27MDd3dcADzCI4qrHxc0umrFegUizTg9UmseMgSJnr7oWXtuh6ocjuEe+irXw0Di + 0l4B7cvZtRObjrOUf0lupPAp2xPIIKekUcVSxiecn6z7zVUVUwpYvPmS8MBCFc5h + 7ad0LWml36Rj5UkBE/ph0YgLvz7ZDoC1yiagBGVX59MTjjZsZBVpRecxZ+ztuaci + =68na + -----END PGP MESSAGE----- + fp: B71138A6A8964A3C3B8899857B4F70C356765BAB + - created_at: "2026-01-15T21:23:56Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DzAGzViGx4qcSAQdA95lt4L0inJjhMwQ2v5lvhW74zuvdpgktHsp5BSycbxcw + oUR2v3CcCHtNzWzgeWPm8L6JHRUJQWdg+XHsLujlZXsoqKirGI67NvToOk+yttsK + 0lgBW9AG8bUVUdXNNPfhc/FN8OJbQ2cj3E2z5kI05ZrkcOoZVXaRfXJiZPQDg1Kz + LhuKymMDmXXsSVd/VdLbSXpfeEqMJjTsDS+bU/TZAcRRPKxj9PPDJIWQ + =Kpzf + -----END PGP MESSAGE----- + fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD + - created_at: "2026-01-15T21:23:56Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA2pVdGTIrZI+ARAA2IaYLn8z593Kh+wAw2ecOXkW+B3qhi/x0qQLVw7Jc1hO + rVhrcTQoabL3elIIPZtxyTYIXq6EpPkSBMOBHO+tmqI8YsB5GvWtcGV1OBpRaZ3I + hgKjnxkJtaQizSZqZLgGUVXjMjcdkzTlIQfu7oGeTu8Ke1cwtOE1lvleDpHHK6gc + yRLJWsUfHdv3rCOmRCDtguc3NG7qzUUYcknPiFGx66hfnIaA0aJav2pqS3uuRwSD + Ay78U2PB7kYVg//Omz9BEuiUVhYsA0sl3hFVpJuKv7FQ9OcJOevQddfq90m2KGyo + 2Lpligwtj3evPfPReLR1D16HaGuzknoB9883jD027+fGr4/IFWx7ieVZ9iGeD3jR + yw/GdHCMueq1pdtyw8ArREspGmZldEKY3Qw6sfRdd71DAeTkD1zzWORCEk6OQefY + YX5ByUAOTUHvTey4Uy5WCj3HOUMW71CnVpsU6lDSuqBUnFlMvELtcjlmEAwvscXz + WFpTzphaX1fIqruS4BAzMxpKVTI1V3bnrb6wFRFnsErVjrty24R2auaoHvgslROu + 1QUTInC7JpFUpxiK9ke8xbhYlZ5JEhcxOXlfrZcVwlxziEZEqp429L/4gVz+IGVv + YQ4wU8ARBcXiEDEOmEl3tCxiprDlCeLpdSrqhq57/y7IMs6Fo7QrkA5XZG+mnfPS + XgHFg3iMBk0qKb6AiWiN8g3SHJtcehJgmAZsRxFRP329QKGGa+azQqT7Vp066keY + rOsmP8iwl+4KS71+cN9rLx/3U8EcSxRuMU6KtIKvhp7yfr2bhYo8P9JH2vrPTlk= + =lbdI + -----END PGP MESSAGE----- + fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + unencrypted_suffix: _unencrypted + version: 3.11.0 diff --git a/inventories/external/host_vars/status.yaml b/inventories/external/host_vars/status.yaml new file mode 100644 index 000000000..c2c26b309 --- /dev/null +++ b/inventories/external/host_vars/status.yaml @@ -0,0 +1,27 @@ +docker_compose__compose_file_content: "{{ lookup('ansible.builtin.template', 'resources/external/status/docker_compose/compose.yaml.j2') }}" +docker_compose__configuration_files: + - name: "general.yaml" + content: "{{ lookup('ansible.builtin.file', 'resources/external/status/docker_compose/config/general.yaml') }}" + - name: "sites.yaml" + content: "{{ lookup('ansible.builtin.file', 'resources/external/status/docker_compose/config/sites.yaml') }}" + - name: "services-chaosknoten.yaml" + content: "{{ lookup('ansible.builtin.file', 'resources/external/status/docker_compose/config/services-chaosknoten.yaml') }}" + - name: "websites.yaml" + content: "{{ lookup('ansible.builtin.file', 'resources/external/status/docker_compose/config/websites.yaml') }}" + - name: "easterhegg-websites.yaml" + content: "{{ lookup('ansible.builtin.file', 'resources/external/status/docker_compose/config/easterhegg-websites.yaml') }}" + +nginx__version_spec: "" +nginx__deploy_redirect_conf: false +nginx__configurations: + - name: status.hamburg.ccc.de + content: "{{ lookup('ansible.builtin.file', 'resources/external/status/nginx/status.hamburg.ccc.de.conf') }}" + - name: http_handler + content: "{{ lookup('ansible.builtin.file', 'resources/external/status/nginx/http_handler.conf') }}" + +certbot__version_spec: "" +certbot__acme_account_email_address: le-admin@hamburg.ccc.de +certbot__certificate_domains: + - "status.hamburg.ccc.de" +certbot__new_cert_commands: + - "systemctl reload nginx.service" diff --git a/inventories/external/hosts.yaml b/inventories/external/hosts.yaml new file mode 100644 index 000000000..435a9bf85 --- /dev/null +++ b/inventories/external/hosts.yaml @@ -0,0 +1,24 @@ +all: + hosts: + status: + # TODO: Manually set up ufw on the host. Create a role for ufw. + ansible_host: status.hamburg.ccc.de + ansible_user: chaos +base_config_hosts: + hosts: + status: +docker_compose_hosts: + hosts: + status: +nginx_hosts: + hosts: + status: +certbot_hosts: + hosts: + status: +infrastructure_authorized_keys_hosts: + hosts: + status: +ansible_pull_hosts: + hosts: + status: diff --git a/resources/external/status/docker_compose/compose.yaml.j2 b/resources/external/status/docker_compose/compose.yaml.j2 new file mode 100644 index 000000000..04abf953e --- /dev/null +++ b/resources/external/status/docker_compose/compose.yaml.j2 @@ -0,0 +1,36 @@ +# https://gatus.io/ +# https://github.com/TwiN/gatus +# https://github.com/TwiN/gatus/blob/master/.examples/docker-compose-postgres-storage/compose.yaml + +services: + database: + image: docker.io/library/postgres:18.1 + volumes: + - ./database:/var/lib/postgresql + environment: + - "POSTGRES_DB=gatus" + - "POSTGRES_USER=gatus" + - "POSTGRES_PASSWORD={{ secret__gatus_db_password }}" + networks: + - gatus + + gatus: + image: ghcr.io/twin/gatus:v5.34.0 + restart: always + ports: + - "8080:8080" + environment: + - "GATUS_CONFIG_PATH=/config" + - "POSTGRES_DB=gatus" + - "POSTGRES_USER=gatus" + - "POSTGRES_PASSWORD={{ secret__gatus_db_password }}" + - "MATRIX_ACCESS_TOKEN={{ secret__gatus_matrix_access_token }}" + volumes: + - ./configs:/config + networks: + - gatus + depends_on: + - database + +networks: + gatus: diff --git a/resources/external/status/docker_compose/config/easterhegg-websites.yaml b/resources/external/status/docker_compose/config/easterhegg-websites.yaml new file mode 100644 index 000000000..87feb4c07 --- /dev/null +++ b/resources/external/status/docker_compose/config/easterhegg-websites.yaml @@ -0,0 +1,303 @@ +# Easterhegg Websites and Websites (Redirects) +# (hosted on public-web-static) +# One could probably also generate this list from the public-web-static config. +easterhegg-websites-defaults: &easterhegg_websites_defaults + group: Websites + interval: 5m + alerts: + - type: matrix + failure-threshold: 3 + success-threshold: 1 + minimum-reminder-interval: "12h" + send-on-resolved: true + +easterhegg-websites-redirects-defaults: &easterhegg_websites_redirects_defaults + group: Websites (Redirects) + interval: 15m + alerts: + - type: matrix + failure-threshold: 3 + success-threshold: 1 + minimum-reminder-interval: "24h" + send-on-resolved: true + +endpoints: + # Websites + - name: eh03.easterhegg.eu + url: "https://eh03.easterhegg.eu" + <<: *easterhegg_websites_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easter(h)egg 2003*)" + + - name: eh05.easterhegg.eu + url: "https://eh05.easterhegg.eu" + <<: *easterhegg_websites_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2005 - The workshop weekend*)" + + - name: eh07.easterhegg.eu + url: "https://eh07.easterhegg.eu" + <<: *easterhegg_websites_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2007 - The Workshop weekend*)" + + - name: eh09.easterhegg.eu + url: "https://eh09.easterhegg.eu" + <<: *easterhegg_websites_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2009*)" + + - name: eh11.easterhegg.eu + url: "https://eh11.easterhegg.eu" + <<: *easterhegg_websites_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2011*)" + + - name: eh20.easterhegg.eu + url: "https://eh20.easterhegg.eu" + <<: *easterhegg_websites_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*EH20 - Back to root*)" + + # Websites (Redirects) + # eh03.easterhegg.eu + - name: eh2003.hamburg.ccc.de + url: "https://eh2003.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easter(h)egg 2003*)" + + - name: www.eh2003.hamburg.ccc.de + url: "https://www.eh2003.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easter(h)egg 2003*)" + + - name: easterhegg2003.hamburg.ccc.de + url: "https://easterhegg2003.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easter(h)egg 2003*)" + + - name: www.easterhegg2003.hamburg.ccc.de + url: "https://www.easterhegg2003.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easter(h)egg 2003*)" + + # eh05.easterhegg.eu + - name: eh2005.hamburg.ccc.de + url: "https://eh2005.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2005 - The workshop weekend*)" + + - name: www.eh2005.hamburg.ccc.de + url: "https://www.eh2005.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2005 - The workshop weekend*)" + + - name: easterhegg2005.hamburg.ccc.de + url: "https://easterhegg2005.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2005 - The workshop weekend*)" + + - name: www.easterhegg2005.hamburg.ccc.de + url: "https://www.easterhegg2005.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2005 - The workshop weekend*)" + + # eh07.easterhegg.eu + - name: eh2007.hamburg.ccc.de + url: "https://eh2007.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2007 - The Workshop weekend*)" + + - name: www.eh2007.hamburg.ccc.de + url: "https://www.eh2007.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2007 - The Workshop weekend*)" + + - name: eh07.hamburg.ccc.de + url: "https://eh07.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2007 - The Workshop weekend*)" + + - name: www.eh07.hamburg.ccc.de + url: "https://www.eh07.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2007 - The Workshop weekend*)" + + - name: easterhegg2007.hamburg.ccc.de + url: "https://easterhegg2007.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2007 - The Workshop weekend*)" + + - name: www.easterhegg2007.hamburg.ccc.de + url: "https://www.easterhegg2007.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2007 - The Workshop weekend*)" + + # eh09.easterhegg.eu + - name: eh2009.hamburg.ccc.de + url: "https://eh2009.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2009*)" + + - name: www.eh2009.hamburg.ccc.de + url: "https://www.eh2009.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2009*)" + + - name: eh09.hamburg.ccc.de + url: "https://eh09.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2009*)" + + - name: www.eh09.hamburg.ccc.de + url: "https://www.eh09.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2009*)" + + - name: easterhegg2009.hamburg.ccc.de + url: "https://easterhegg2009.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2009*)" + + - name: www.easterhegg2009.hamburg.ccc.de + url: "https://www.easterhegg2009.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2009*)" + + # eh11.easterhegg.eu + - name: eh2011.hamburg.ccc.de + url: "https://eh2011.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2011*)" + + - name: www.eh2011.hamburg.ccc.de + url: "https://www.eh2011.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2011*)" + + - name: eh11.hamburg.ccc.de + url: "https://eh11.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2011*)" + + - name: www.eh11.hamburg.ccc.de + url: "https://www.eh11.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2011*)" + + - name: easterhegg2011.hamburg.ccc.de + url: "https://easterhegg2011.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2011*)" + + - name: www.easterhegg2011.hamburg.ccc.de + url: "https://www.easterhegg2011.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*Easterhegg 2011*)" + + # eh20.easterhegg.eu + - name: www.eh20.easterhegg.eu + url: "https://www.eh20.easterhegg.eu" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*EH20 - Back to root*)" + + - name: eh20.hamburg.ccc.de + url: "https://eh20.hamburg.ccc.de" + <<: *easterhegg_websites_redirects_defaults + conditions: + - "[status] == 200" + - "[certificate_expiration] > 48h" + - "[BODY] == pat(*EH20 - Back to root*)" diff --git a/resources/external/status/docker_compose/config/general.yaml b/resources/external/status/docker_compose/config/general.yaml new file mode 100644 index 000000000..c67811a35 --- /dev/null +++ b/resources/external/status/docker_compose/config/general.yaml @@ -0,0 +1,25 @@ +storage: + type: postgres + path: "postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@database:5432/${POSTGRES_DB}?sslmode=disable" + +ui: + title: CCCHH Status + description: Automated uptime monitoring and status page for CCCHH services. Powered by Gatus. + header: CCCHH Status + buttons: + - name: Website + link: "https://hamburg.ccc.de" + - name: Git + link: "https://git.hamburg.ccc.de" + - name: Kontakt & Impressum + link: "https://hamburg.ccc.de/imprint/" + default-sort-by: group + +alerting: + matrix: + server-url: "https://matrix-client.matrix.org" + access-token: "${MATRIX_ACCESS_TOKEN}" + internal-room-id: "!jG755onbGAH-lZsZo8SRKtlsncSMvq7nzPhwCi5CgdQ" + +# A bit more than the default 5 concurrent checks should be fine. +concurrency: 15 diff --git a/resources/external/status/docker_compose/config/services-chaosknoten.yaml b/resources/external/status/docker_compose/config/services-chaosknoten.yaml new file mode 100644 index 000000000..0792e9510 --- /dev/null +++ b/resources/external/status/docker_compose/config/services-chaosknoten.yaml @@ -0,0 +1,264 @@ +# Services (Chaosknoten) +services-chaosknoten-defaults: &services_chaosknoten_defaults + group: Services (Chaosknoten) + interval: 1m + alerts: + - type: matrix + failure-threshold: 5 + success-threshold: 2 + minimum-reminder-interval: "6h" + send-on-resolved: true + +endpoints: + - name: CCCHH ID/Keycloak (main page/account console) + url: "https://id.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*JavaScript is required to use the Account Console.*)" + + - name: CCCHH ID/Keycloak (ccchh realm) + url: "https://id.hamburg.ccc.de/realms/ccchh/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY].realm == ccchh" + + - name: ccchoir + url: "https://ccchoir.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*The Choir of the Chaos Computer Club*)" + + - name: Cloud (status info) + url: "https://cloud.hamburg.ccc.de/status.php" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY].installed == true" + - "[BODY].maintenance == false" + + - name: Cloud (main page/login) + url: "https://cloud.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Sign in to CCCHH*)" + + - name: cow (main page/login) + url: "https://cow.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*mailcow UI*)" + + - name: cow (SMTP port 25) + url: "tcp://cow.hamburg.ccc.de:25" + <<: *services_chaosknoten_defaults + conditions: + - "[CONNECTED] == true" + + - name: cow (SMTPS port 465) + url: "tls://cow.hamburg.ccc.de:465" + <<: *services_chaosknoten_defaults + conditions: + - "[CONNECTED] == true" + + - name: cow (SMTP with STARTTLS port 587) + url: "starttls://cow.hamburg.ccc.de:587" + <<: *services_chaosknoten_defaults + conditions: + - "[CONNECTED] == true" + + - name: cow (IMAP port 143) + url: "tcp://cow.hamburg.ccc.de:143" + <<: *services_chaosknoten_defaults + conditions: + - "[CONNECTED] == true" + + - name: cow (IMAPS port 465) + url: "tls://cow.hamburg.ccc.de:465" + <<: *services_chaosknoten_defaults + conditions: + - "[CONNECTED] == true" + + - name: Design/penpot + url: "https://design.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Penpot - Design Freedom for Teams*)" + + - name: EH22 Website/Wiki + url: "https://eh22.easterhegg.eu/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2025*)" + + - name: Git + url: "https://git.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*CCCHH Git*)" + + - name: GitLab + url: "https://gitlab.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Moin beim Gitlab des CCC Hamburg!*)" + + - name: Grafana + url: "https://grafana.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Sign in to CCCHH*)" + + - name: Jitsi + url: "https://jitsi.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Jitsi Meet*)" + + - name: Lists + url: "https://lists.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Mailing Lists*)" + + - name: Matrix + url: "https://matrix.hamburg.ccc.de/_matrix/client/versions" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "has([BODY].versions) == true" + - "has([BODY].unstable_features) == true" + + - name: Mumble (tcp) + url: "tcp://mumble.hamburg.ccc.de:64738" + <<: *services_chaosknoten_defaults + conditions: + - "[CONNECTED] == true" + + - name: Mumble (udp) + url: "udp://mumble.hamburg.ccc.de:64738" + <<: *services_chaosknoten_defaults + conditions: + - "[CONNECTED] == true" + + - name: NetBox + url: "https://NetBox.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*NetBox*)" + + - name: ntfy + url: "https://ntfy.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*ntfy web requires JavaScript*)" + + - name: OnlyOffice + url: "https://onlyoffice.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*ONLYOFFICE Docs Community Edition installed*)" + + - name: Pad + url: "https://pad.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*HedgeDoc - Ideas grow better together*)" + + - name: Pretalx (main page) + url: "https://pretalx.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*pretalx*)" + + - name: Pretalx (EH22/Easterhegg 2025) + url: "https://cfp.eh22.easterhegg.eu/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Easterhegg 2025*)" + - "[BODY] == pat(*pretalx*)" + + - name: SpaceAPI + url: "https://spaceapi.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY].space == CCCHH" + + - name: Surveillance under Surveillance + url: "https://sunders.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Surveillance under Surveillance*)" + + - name: Tickets/pretix + url: "https://tickets.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*pretix*)" + + - name: Wiki + url: "https://wiki.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*CCCHH Wiki*)" + + - name: Woodpecker + url: "https://woodpecker.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Woodpecker*)" + + - name: Zammad + url: "https://zammad.hamburg.ccc.de/" + <<: *services_chaosknoten_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*zammad*)" diff --git a/resources/external/status/docker_compose/config/sites.yaml b/resources/external/status/docker_compose/config/sites.yaml new file mode 100644 index 000000000..7b0ce828e --- /dev/null +++ b/resources/external/status/docker_compose/config/sites.yaml @@ -0,0 +1,23 @@ +# Sites +sites-defaults: &sites_defaults + group: Sites + interval: 1m + alerts: + - type: matrix + failure-threshold: 5 + success-threshold: 2 + minimum-reminder-interval: "6h" + send-on-resolved: true + +endpoints: + - name: Chaosknoten/IRZ42 + url: "icmp://chaosknoten.hamburg.ccc.de" + <<: *sites_defaults + conditions: + - "[CONNECTED] == true" + + - name: Z9 + url: "icmp://185.161.129.129" + <<: *sites_defaults + conditions: + - "[CONNECTED] == true" diff --git a/resources/external/status/docker_compose/config/websites.yaml b/resources/external/status/docker_compose/config/websites.yaml new file mode 100644 index 000000000..e54337a37 --- /dev/null +++ b/resources/external/status/docker_compose/config/websites.yaml @@ -0,0 +1,174 @@ +# Websites, Websites (Staging) and Websites (Redirects) +# (hosted on public-web-static) +# One could probably also generate this list from the public-web-static config. +websites-defaults: &websites_defaults + group: Websites + interval: 1m + alerts: + - type: matrix + failure-threshold: 5 + success-threshold: 2 + minimum-reminder-interval: "6h" + send-on-resolved: true + +websites-staging-defaults: &websites_staging_defaults + group: Websites (Staging) + interval: 5m + alerts: + - type: matrix + failure-threshold: 3 + success-threshold: 1 + minimum-reminder-interval: "24h" + send-on-resolved: true + +websites-redirects-defaults: &websites_redirects_defaults + group: Websites (Redirects) + interval: 5m + alerts: + - type: matrix + failure-threshold: 3 + success-threshold: 1 + minimum-reminder-interval: "24h" + send-on-resolved: true + +endpoints: + # Websites + - name: branding-resources.hamburg.ccc.de + url: "https://branding-resources.hamburg.ccc.de/logo/sources.txt" + <<: *websites_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*file: ccchh-logo.png*)" + + - name: c3cat.de + url: "https://c3cat.de" + <<: *websites_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Cat Ears Operation Center*)" + + - name: cryptoparty-hamburg.de + url: "https://cryptoparty-hamburg.de" + <<: *websites_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Digitale Selbstverteidigung in Hamburg*)" + + - name: element-admin.hamburg.ccc.de + url: "https://element-admin.hamburg.ccc.de" + <<: *websites_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Loading Element Admin*)" + + - name: element.hamburg.ccc.de + url: "https://element.hamburg.ccc.de" + <<: *websites_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Sorry, Element requires JavaScript to be enabled.*)" + + - name: hacker.tours + url: "https://hacker.tours" + <<: *websites_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + # Once suites support alerting, we can also monitor the target as well. + - "[BODY] == pat(**)" + + - name: hackertours.hamburg.ccc.de + url: "https://hackertours.hamburg.ccc.de" + <<: *websites_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + # Once suites support alerting, we can also monitor the target as well. + - "[BODY] == pat(**)" + + - name: hamburg.ccc.de + url: "https://hamburg.ccc.de" + <<: *websites_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Wir sind der Chaos Computer Club der Hansestadt Hamburg.*)" + +# Websites (Staging) + - name: staging.c3cat.de + url: "https://staging.c3cat.de" + <<: *websites_staging_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*c3cat.de Staging Environment*)" + + - name: staging.cryptoparty-hamburg.de + url: "https://staging.cryptoparty-hamburg.de" + <<: *websites_staging_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*cryptoparty-hamburg.de Staging Environment*)" + + - name: staging.hacker.tours + url: "https://staging.hacker.tours" + <<: *websites_staging_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*hacker.tours Staging Environment*)" + + - name: staging.hackertours.hamburg.ccc.de + url: "https://staging.hackertours.hamburg.ccc.de" + <<: *websites_staging_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*hackertours.hamburg.ccc.de Staging Environment*)" + + - name: staging.hamburg.ccc.de + url: "https://staging.hamburg.ccc.de" + <<: *websites_staging_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*hamburg.ccc.de Staging Environment*)" + +# Website (Redirects) + - name: www.c3cat.de + url: "https://www.c3cat.de" + <<: *websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Cat Ears Operation Center*)" + + - name: cryptoparty.hamburg.ccc.de + url: "https://cryptoparty.hamburg.ccc.de" + <<: *websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Digitale Selbstverteidigung in Hamburg*)" + + - name: staging.cryptoparty.hamburg.ccc.de + url: "https://staging.cryptoparty.hamburg.ccc.de" + <<: *websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*cryptoparty-hamburg.de Staging Environment*)" + + - name: www.hamburg.ccc.de + url: "https://www.hamburg.ccc.de" + <<: *websites_redirects_defaults + conditions: + - "[STATUS] == 200" + - "[CERTIFICATE_EXPIRATION] > 48h" + - "[BODY] == pat(*Wir sind der Chaos Computer Club der Hansestadt Hamburg.*)" diff --git a/resources/external/status/nginx/http_handler.conf b/resources/external/status/nginx/http_handler.conf new file mode 100644 index 000000000..c989edee2 --- /dev/null +++ b/resources/external/status/nginx/http_handler.conf @@ -0,0 +1,14 @@ +server { + listen 80 default_server; + listen [::]:80 default_server; + + server_name status.hamburg.ccc.de; + + location / { + return 301 https://$host$request_uri; + } + + location /.well-known/acme-challenge/ { + proxy_pass http://127.0.0.1:31820/.well-known/acme-challenge/; + } +} diff --git a/resources/external/status/nginx/status.hamburg.ccc.de.conf b/resources/external/status/nginx/status.hamburg.ccc.de.conf new file mode 100644 index 000000000..510966a8f --- /dev/null +++ b/resources/external/status/nginx/status.hamburg.ccc.de.conf @@ -0,0 +1,33 @@ +# partly generated 2022-01-08, Mozilla Guideline v5.6, nginx 1.17.7, OpenSSL 1.1.1k, intermediate configuration +# https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 +server { + listen 443 ssl http2 default_server; + listen [::]:443 ssl http2 default_server; + + server_name status.hamburg.ccc.de; + + ssl_certificate /etc/letsencrypt/live/status.hamburg.ccc.de/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/status.hamburg.ccc.de/privkey.pem; + # verify chain of trust of OCSP response using Root CA and Intermediate certs + ssl_trusted_certificate /etc/letsencrypt/live/status.hamburg.ccc.de/chain.pem; + + # HSTS (ngx_http_headers_module is required) (63072000 seconds) + add_header Strict-Transport-Security "max-age=63072000" always; + + proxy_set_header Host $host; + proxy_set_header X-Forwarded-Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Port 443; + # This is https in any case. + proxy_set_header X-Forwarded-Proto https; + # Hide the X-Forwarded header. + proxy_hide_header X-Forwarded; + # Assume we are the only Reverse Proxy. + # Also provide "_hidden" for by, since it's not relevant. + proxy_set_header Forwarded "for=$remote_addr;proto=https;host=$host;by=_hidden"; + + location / { + proxy_pass http://127.0.0.1:8080/; + } +} From 744dc00ae5f6209481df3b1b0cd42fec4fa194f4 Mon Sep 17 00:00:00 2001 From: Renovate Date: Sun, 18 Jan 2026 03:01:35 +0000 Subject: [PATCH 058/142] Update https://github.com/ansible/ansible-lint action to v26 --- .forgejo/workflows/lint.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.forgejo/workflows/lint.yaml b/.forgejo/workflows/lint.yaml index b1168c9cc..588d38c95 100644 --- a/.forgejo/workflows/lint.yaml +++ b/.forgejo/workflows/lint.yaml @@ -24,7 +24,7 @@ jobs: # work in our environmnet. # Rather manually setup python (pip) before instead. - name: Run ansible-lint - uses: https://github.com/ansible/ansible-lint@v25.12.2 + uses: https://github.com/ansible/ansible-lint@v26.1.1 with: setup_python: "false" requirements_file: "requirements.yml" From 0b6847493cfe44d03c645efe0bf54e6b2b2941a9 Mon Sep 17 00:00:00 2001 From: Renovate Date: Sun, 18 Jan 2026 03:30:42 +0000 Subject: [PATCH 059/142] Update actions/checkout action to v6 --- .forgejo/workflows/lint.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.forgejo/workflows/lint.yaml b/.forgejo/workflows/lint.yaml index 588d38c95..5113e9fba 100644 --- a/.forgejo/workflows/lint.yaml +++ b/.forgejo/workflows/lint.yaml @@ -10,7 +10,7 @@ jobs: name: Ansible Lint runs-on: docker steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Install pip run: | apt update From d7b463ecb9a1d4cf3d13d0ad9d3c3f064c271235 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 18 Jan 2026 04:53:14 +0100 Subject: [PATCH 060/142] status(host): fix token not working by using a new one --- inventories/external/host_vars/status.sops.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/inventories/external/host_vars/status.sops.yaml b/inventories/external/host_vars/status.sops.yaml index e3004595e..4dd3471c6 100644 --- a/inventories/external/host_vars/status.sops.yaml +++ b/inventories/external/host_vars/status.sops.yaml @@ -1,6 +1,6 @@ ansible_pull__age_private_key: ENC[AES256_GCM,data:u0tluAG5YmXTs71/F6RjuTITCrEoJco0K7+o/F7An4OMdOAwJVBvvMCnEaYsKhLhdesnMIoA24oz2j22lKRFgZUNtkF08ZwH9gw=,iv:oqTTeOi8l6ig4vvqOKict5bqxjmiBW+kwlZhbozoCSU=,tag:ZL2wuIczCHguGJIhbY0NuQ==,type:str] secret__gatus_db_password: ENC[AES256_GCM,data:fwtdWmXVTA7odBsKnlxH7mKKGtplAt/rQqscFBAxbDky6DNqgk6PP2OsqbIEpnpzs9Yn7Kd2VAxzfJfK,iv:ox/Lm+LlxxRcssOPc++nRp6nVa2DF3/46eEsGzTOBmA=,tag:i1e71Gm01ojHr5pGy0S9rA==,type:str] -secret__gatus_matrix_access_token: ENC[AES256_GCM,data:wp6C2E/LM3grawu8oW5CZZU0Y2+3qnuEbcKmgZr16e8P1KG/v2kfxRQ=,iv:S96oyGg6hI2Co7PJ8BFtrzZag82PTfp2IyIgTbxfdiM=,tag:JROk5PdoaMzXq1qXGgaH7g==,type:str] +secret__gatus_matrix_access_token: ENC[AES256_GCM,data:4qfXOyp+wAyYKw+KslCvE+6GxxdVfykkHJQUvaYBAebvdHlkRtIlyaI=,iv:axS2IRonJpZR2eanFBfc/LWc7Uhc2bi9eQAebsobtPc=,tag:TkaVZLgJzDz1UHDcDfsJ2A==,type:str] sops: age: - recipient: age1yl9ts8k6ceymaxjs72r5puetes5mtuzxuger7qgme9qkagfrm9hqzxx9qr @@ -12,8 +12,8 @@ sops: RFl1MnI1K0h2MUhvYk40d2JjbDRaUmMKNlPo1s06hVdxAamKhJy4HhNDX8PKQlq2 13PjdTJub64fydGEJng5NigcnNcPo7goGLz5QV7vE+6bO0gNZxBmmw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2026-01-17T23:54:35Z" - mac: ENC[AES256_GCM,data:K/uLPclyRgFOMhSxPpFOiH1fQF0EQHKUNnqI/LW0o6+ON07r+UWv9mXaT2M7xUNhgHkv4lVu/qfLAKXZUVGlDga5ufH3A6xbcArqtQ5oyPoE5HX0nbcU4QF1f8JyYLVKCQdI0pBQkLU2cpAFHrGVLI/8+RY/uqrtNee9f7fd4cM=,iv:WRfTSWo4cfJOvjQqeSrSUCOstCf0FggTv2W4eGRcTF8=,tag:GE9cLzmJZt3F11BZd82HFA==,type:str] + lastmodified: "2026-01-18T03:53:06Z" + mac: ENC[AES256_GCM,data:yCgEtVm+HZfCL2sYg1+2cePBXg5xKoPX/fXln5NLLRJu5hUnsMOTa1VT41rAc6jJKFwbE4GWECkvjwfFReVjplwSJ4jvaY5usWvKjDLG7c8wPqgogR2vRNwxkI9aHU2VtBh7ArjCfmbY9++uWx577OPEdzUmup0TLlHxP68ueAw=,iv:YJjrm1HxCOakgm3c0JhlFfAb/MVi/ykQ1oeomeyQBus=,tag:UFFR6Fy9smzgzOef3NZlOA==,type:str] pgp: - created_at: "2026-01-15T21:23:56Z" enc: |- From d514688574e84f8da76aa357782953fce5e4cb0c Mon Sep 17 00:00:00 2001 From: June Date: Sun, 18 Jan 2026 19:21:33 +0100 Subject: [PATCH 061/142] systemd_networkd(role),router(host): support global config to fix forw. With the router upgrade to Debian 13 the systemd version got upgraded as well breaking the current configuration for IP forwarding. Add a variable for global systemd-networkd configuration and use that to enable IPv4 and IPv6 forwarding on the router. The systemd_networkd role could be a bit nicer, not deploying/deleting the global configuration, if the variable is empty and reloading/restarting systemd-networkd at appropriate times. But as is works for now. --- inventories/chaosknoten/host_vars/router.yaml | 1 + .../router/systemd_networkd/20-net1.network | 2 -- .../router/systemd_networkd/20-net2.network | 2 -- .../router/systemd_networkd_global_config.conf | 3 +++ roles/systemd_networkd/README.md | 5 +++++ roles/systemd_networkd/defaults/main.yaml | 1 + roles/systemd_networkd/tasks/main.yaml | 18 ++++++++++++++++++ 7 files changed, 28 insertions(+), 4 deletions(-) create mode 100644 resources/chaosknoten/router/systemd_networkd_global_config.conf create mode 100644 roles/systemd_networkd/defaults/main.yaml diff --git a/inventories/chaosknoten/host_vars/router.yaml b/inventories/chaosknoten/host_vars/router.yaml index 5e9c83254..adbc8d95c 100644 --- a/inventories/chaosknoten/host_vars/router.yaml +++ b/inventories/chaosknoten/host_vars/router.yaml @@ -1,4 +1,5 @@ systemd_networkd__config_dir: 'resources/chaosknoten/router/systemd_networkd/' +systemd_networkd__global_config: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/router/systemd_networkd_global_config.conf') }}" nftables__config: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/router/nftables/nftables.conf') }}" ansible_pull__timer_on_calendar: "*-*-* 04:00:00 Europe/Berlin" ansible_pull__timer_randomized_delay_sec: 0min diff --git a/resources/chaosknoten/router/systemd_networkd/20-net1.network b/resources/chaosknoten/router/systemd_networkd/20-net1.network index c8bffc1eb..5c14d8d86 100644 --- a/resources/chaosknoten/router/systemd_networkd/20-net1.network +++ b/resources/chaosknoten/router/systemd_networkd/20-net1.network @@ -3,7 +3,6 @@ Name=net1 [Network] DNS=212.12.50.158 -IPForward=ipv4 IPv6AcceptRA=no [Address] @@ -11,4 +10,3 @@ Address=212.12.48.123/24 [Route] Gateway=212.12.48.55 - diff --git a/resources/chaosknoten/router/systemd_networkd/20-net2.network b/resources/chaosknoten/router/systemd_networkd/20-net2.network index b3f497dde..39d1f03fb 100644 --- a/resources/chaosknoten/router/systemd_networkd/20-net2.network +++ b/resources/chaosknoten/router/systemd_networkd/20-net2.network @@ -3,7 +3,6 @@ Name=net2 [Network] #DNS=212.12.50.158 -IPForward=ipv6 IPv6AcceptRA=no [Address] @@ -11,4 +10,3 @@ Address=2a00:14b0:4200:3500::130:2/112 [Route] Gateway=2a00:14b0:4200:3500::130:1 - diff --git a/resources/chaosknoten/router/systemd_networkd_global_config.conf b/resources/chaosknoten/router/systemd_networkd_global_config.conf new file mode 100644 index 000000000..2d3d8a342 --- /dev/null +++ b/resources/chaosknoten/router/systemd_networkd_global_config.conf @@ -0,0 +1,3 @@ +[Network] +IPv4Forwarding=true +IPv6Forwarding=true diff --git a/roles/systemd_networkd/README.md b/roles/systemd_networkd/README.md index 3297c47ed..ac7f115db 100644 --- a/roles/systemd_networkd/README.md +++ b/roles/systemd_networkd/README.md @@ -9,3 +9,8 @@ Should work on Debian-based distributions. ## Required Arguments - `systemd_networkd__config_dir`: Directory with systemd-networkd configs to deploy. + +## Optional Arguments + +- `systemd_networkd__global_config`: systemd-networkd global configuration to deploy (see `man 5 networkd.conf`). + Defaults to `` (the empty string); diff --git a/roles/systemd_networkd/defaults/main.yaml b/roles/systemd_networkd/defaults/main.yaml new file mode 100644 index 000000000..e84ed280d --- /dev/null +++ b/roles/systemd_networkd/defaults/main.yaml @@ -0,0 +1 @@ +systemd_networkd__global_config: "" diff --git a/roles/systemd_networkd/tasks/main.yaml b/roles/systemd_networkd/tasks/main.yaml index f88ed1468..cc8f4d9b9 100644 --- a/roles/systemd_networkd/tasks/main.yaml +++ b/roles/systemd_networkd/tasks/main.yaml @@ -12,3 +12,21 @@ recursive: true delete: true become: true + +- name: ensure global systemd-networkd config directory exists + ansible.builtin.file: + path: "/etc/systemd/networkd.conf.d" + state: directory + owner: root + group: root + mode: "0755" + become: true + +- name: ensure global systemd-networkd config is deployed + ansible.builtin.copy: + content: "{{ systemd_networkd__global_config }}" + dest: "/etc/systemd/networkd.conf.d/20-ansible.conf" + mode: "0644" + owner: root + group: root + become: true From 28f80a85f33413cd0de40708623f281c93c78c76 Mon Sep 17 00:00:00 2001 From: fi Date: Sun, 18 Jan 2026 19:47:19 +0100 Subject: [PATCH 062/142] status(host): Switch to nekover.se user for personal token As access token now apparently expire with matrix authentication services, use a nekover.se user where we can get a long-lived personal token. --- inventories/external/host_vars/status.sops.yaml | 6 +++--- .../external/status/docker_compose/config/general.yaml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/inventories/external/host_vars/status.sops.yaml b/inventories/external/host_vars/status.sops.yaml index 4dd3471c6..366b6410a 100644 --- a/inventories/external/host_vars/status.sops.yaml +++ b/inventories/external/host_vars/status.sops.yaml @@ -1,6 +1,6 @@ ansible_pull__age_private_key: ENC[AES256_GCM,data:u0tluAG5YmXTs71/F6RjuTITCrEoJco0K7+o/F7An4OMdOAwJVBvvMCnEaYsKhLhdesnMIoA24oz2j22lKRFgZUNtkF08ZwH9gw=,iv:oqTTeOi8l6ig4vvqOKict5bqxjmiBW+kwlZhbozoCSU=,tag:ZL2wuIczCHguGJIhbY0NuQ==,type:str] secret__gatus_db_password: ENC[AES256_GCM,data:fwtdWmXVTA7odBsKnlxH7mKKGtplAt/rQqscFBAxbDky6DNqgk6PP2OsqbIEpnpzs9Yn7Kd2VAxzfJfK,iv:ox/Lm+LlxxRcssOPc++nRp6nVa2DF3/46eEsGzTOBmA=,tag:i1e71Gm01ojHr5pGy0S9rA==,type:str] -secret__gatus_matrix_access_token: ENC[AES256_GCM,data:4qfXOyp+wAyYKw+KslCvE+6GxxdVfykkHJQUvaYBAebvdHlkRtIlyaI=,iv:axS2IRonJpZR2eanFBfc/LWc7Uhc2bi9eQAebsobtPc=,tag:TkaVZLgJzDz1UHDcDfsJ2A==,type:str] +secret__gatus_matrix_access_token: ENC[AES256_GCM,data:adNtFvg2LXwRiNE7mvTZNO1hXxN3qasWZrDEQOGk5mYEVH0t9pglNrM=,iv:30xXR31qmrywLP3M34u6YgsyQY348zVvt9RM4/bGhtY=,tag:vhgpON0IdQ+FS4uQ/0TpsQ==,type:str] sops: age: - recipient: age1yl9ts8k6ceymaxjs72r5puetes5mtuzxuger7qgme9qkagfrm9hqzxx9qr @@ -12,8 +12,8 @@ sops: RFl1MnI1K0h2MUhvYk40d2JjbDRaUmMKNlPo1s06hVdxAamKhJy4HhNDX8PKQlq2 13PjdTJub64fydGEJng5NigcnNcPo7goGLz5QV7vE+6bO0gNZxBmmw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2026-01-18T03:53:06Z" - mac: ENC[AES256_GCM,data:yCgEtVm+HZfCL2sYg1+2cePBXg5xKoPX/fXln5NLLRJu5hUnsMOTa1VT41rAc6jJKFwbE4GWECkvjwfFReVjplwSJ4jvaY5usWvKjDLG7c8wPqgogR2vRNwxkI9aHU2VtBh7ArjCfmbY9++uWx577OPEdzUmup0TLlHxP68ueAw=,iv:YJjrm1HxCOakgm3c0JhlFfAb/MVi/ykQ1oeomeyQBus=,tag:UFFR6Fy9smzgzOef3NZlOA==,type:str] + lastmodified: "2026-01-18T18:40:32Z" + mac: ENC[AES256_GCM,data:7bP0fmn6TJKA8zLuXE8F47sHn1qqX33z/078KkCJx5yRSKBGyLnTeKNha8EODEBkMG0eXQ2BEQDPfNB892R5OW69xCInCa0+sEPONd3YELMvFVoM7/+avDi94X/tdJKCHVPnF/kpqnGhKlwikKlCFLIcbkfEAHJgDlze32C0QKU=,iv:1Q5dsJP2FToAYDJYWXJufHuIlXGfj93NaBWHfZ5rhHk=,tag:dFNYdMJOwUwr6/zwlRollg==,type:str] pgp: - created_at: "2026-01-15T21:23:56Z" enc: |- diff --git a/resources/external/status/docker_compose/config/general.yaml b/resources/external/status/docker_compose/config/general.yaml index c67811a35..0b30725d6 100644 --- a/resources/external/status/docker_compose/config/general.yaml +++ b/resources/external/status/docker_compose/config/general.yaml @@ -17,7 +17,7 @@ ui: alerting: matrix: - server-url: "https://matrix-client.matrix.org" + server-url: "https://matrix.nekover.se" access-token: "${MATRIX_ACCESS_TOKEN}" internal-room-id: "!jG755onbGAH-lZsZo8SRKtlsncSMvq7nzPhwCi5CgdQ" From ddaa069204bb49b8d1033e42292019ce9b594da8 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 18 Jan 2026 21:39:23 +0100 Subject: [PATCH 063/142] status(host): configure Gatus to store more results and events Also see: https://github.com/TwiN/gatus?tab=readme-ov-file#storage --- resources/external/status/docker_compose/config/general.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/resources/external/status/docker_compose/config/general.yaml b/resources/external/status/docker_compose/config/general.yaml index 0b30725d6..fb1c3ed0f 100644 --- a/resources/external/status/docker_compose/config/general.yaml +++ b/resources/external/status/docker_compose/config/general.yaml @@ -1,6 +1,8 @@ storage: type: postgres path: "postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@database:5432/${POSTGRES_DB}?sslmode=disable" + maximum-number-of-results: 240 # Default are 100. 240 are 4h for 1m interval checks. + maximum-number-of-events: 1000 # Default are 50. Let's keep a long history here - 1000 should suffice for a year with around 3 events a day. ui: title: CCCHH Status From b492472179f8f56a6f46dd0aad0fdc036e99cdde Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sun, 25 Jan 2026 12:12:30 +0100 Subject: [PATCH 064/142] Explain how to add age key for ansible pull --- ...ng_up_secrets_using_sops_for_a_new_host.md | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/docs/setting_up_secrets_using_sops_for_a_new_host.md b/docs/setting_up_secrets_using_sops_for_a_new_host.md index c88315f91..df7b0247f 100644 --- a/docs/setting_up_secrets_using_sops_for_a_new_host.md +++ b/docs/setting_up_secrets_using_sops_for_a_new_host.md @@ -2,19 +2,29 @@ Because we're using the `community.sops.sops` vars plugin, the SOPS-encrypted secrets get stored in the inventory. -1. Add a new creation rule for the hosts `host_vars` file in the sops config at `.sops.yaml`. - It should probably hold all admin keys. +1. Create a new age key for Ansible pull on the host. + ``` + age-keygen + ``` + Then add an entry to `keys.hosts.chaosknoten.age` +2. Add a new creation rule for the hosts `host_vars` file in the sops config at `.sops.yaml`. + It should probably hold all admin keys plus the host entry. You can use existing creation rules as a reference. -2. Create a SOPS secrets file in the `host_vars` subdirectory of the relevant inventory. +3. Create a SOPS secrets file in the `host_vars` subdirectory of the relevant inventory. The name of the file should be in the format `[HOSTNAME].sops.yaml` to get picked up by the vars plugin and to match the previously created creation rule. This can be accomplished with a command similar to this: ``` sops inventories/[chaosknoten|z9]/host_vars/[HOSTNAME].secrets.yaml ``` -3. With the editor now open, add the secrets you want to store. +4. With the editor now open, add the secrets you want to store. Because we're using the `community.sops.sops` vars plugin, the stored secrets will be exposed as Ansible variables. Also note that SOPS only encrypts the values, not the keys. When now creating entries, try to adhere to the following variable naming convention: + - Make sure to put the prive age key in here under `ansible_pull__age_private_key`. - Prefix variable names with `secret__`, if they are intended to be used in a template file or similar. (e.g. `secret__netbox_secret_key: secret_value`) - Otherwise, if the variable is directly consumed by a role or similar, directly set the variable. (e.g. `netbox__db_password: secret_value`) -4. Now that the secrets are stored, they are exposed as variables and can simply be used like any other variable. +5. Now that the secrets are stored, they are exposed as variables and can simply be used like any other variable. + +## GPG Keys + +In order to edit encrypted files, you need all the GPG public keys imported into your GPG Keychain. You should be able to find the necessary public keys in https://git.hamburg.ccc.de/CCCHH/password-store. From 664b9115b8d4e01ae774bf33e041855ed10de585 Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sun, 25 Jan 2026 13:01:52 +0100 Subject: [PATCH 065/142] Fix warning --- roles/docker/tasks/main/01_repo_setup.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/docker/tasks/main/01_repo_setup.yaml b/roles/docker/tasks/main/01_repo_setup.yaml index aa775212a..63bdb9188 100644 --- a/roles/docker/tasks/main/01_repo_setup.yaml +++ b/roles/docker/tasks/main/01_repo_setup.yaml @@ -9,7 +9,7 @@ - name: Ensure Docker APT repository is added ansible.builtin.apt_repository: - repo: "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/docker.asc] https://download.docker.com/linux/debian {{ ansible_distribution_release }} stable" + repo: "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/docker.asc] https://download.docker.com/linux/debian {{ ansible_facts['distribution_release'] }} stable" filename: docker state: present become: true From f887de25c521e52375ae828cab59dd6a17f3b258 Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sun, 25 Jan 2026 13:26:20 +0100 Subject: [PATCH 066/142] make building and pulling configurable --- roles/docker_compose/defaults/main.yaml | 2 ++ roles/docker_compose/tasks/main.yaml | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/roles/docker_compose/defaults/main.yaml b/roles/docker_compose/defaults/main.yaml index 76831d6c7..621ee7b30 100644 --- a/roles/docker_compose/defaults/main.yaml +++ b/roles/docker_compose/defaults/main.yaml @@ -1 +1,3 @@ +docker_compose__build: always docker_compose__configuration_files: [ ] +docker_compose__pull: always diff --git a/roles/docker_compose/tasks/main.yaml b/roles/docker_compose/tasks/main.yaml index bea3f4fb2..a706ab239 100644 --- a/roles/docker_compose/tasks/main.yaml +++ b/roles/docker_compose/tasks/main.yaml @@ -79,8 +79,8 @@ community.docker.docker_compose_v2: project_src: /ansible_docker_compose state: present - build: always - pull: always + build: "{{ docker_compose__build }}" + pull: "{{ docker_compose__pull }}" remove_orphans: true become: true From 0c782caee7a9e68e9b5247f681cf7222b1703ca7 Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sun, 25 Jan 2026 14:03:34 +0100 Subject: [PATCH 067/142] Explain what all needs to be added for a new host --- docs/create-new-web-service-vm.md | 79 +++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 docs/create-new-web-service-vm.md diff --git a/docs/create-new-web-service-vm.md b/docs/create-new-web-service-vm.md new file mode 100644 index 000000000..76eca2169 --- /dev/null +++ b/docs/create-new-web-service-vm.md @@ -0,0 +1,79 @@ +# How to create all necessary entries for new (web service) VM + +Let's assume that you want to add a new web service `example.hamburg.ccc.de` which is going to be hosted on the VM `example` on chaosknoten. These are the steps that you need to take to create the VM and add it to the Ansible repo. + +## IP, DNS, VM + +1. Allocate a fresh [IPv6 in Netbox in the 2a00:14b0:42:102::/64 net](https://netbox.hamburg.ccc.de/ipam/prefixes/47/ip-addresses/). This will be the management address for the VM. +2. Add an entry `example.hosts.hamburg.ccc.de` with that AAAA to the name server (`ns-intern`). +3. Add an entry `example.hamburg.ccc.de` as a CNAME for `public-reverse-proxy` to the same zone. +4. Commit and reload the zone. +5. Create a new VM on chaosknoten, for example by cloning the Debian template 9023. Give it the name `example`. +6. Edit the ethernet interface to be connected to `vmbr0`, VLAN tag `2`. +7. Configure the IPv6 address in the Cloud-Init section. Leave IPv4 set to DHCP. +8. Make sure the VM is started at boot (options). +9. Adjust any other VM parameters as needed. +10. Boot the VM. +11. Add the [VM to Netbox](https://netbox.hamburg.ccc.de/virtualization/virtual-machines/). Make sure to enter the VM ID. +12. Add an Ethernet interface to the VM; we typically use `eth0` as a name. +13. Add IP for that interface, then choose "Assign IP" and search for the IP you've created. Make it the primary IP of that interface. + +## Ansible Basics + +As the first step, we need to make the host known to Ansible. + +1. In `.sops.yaml`, add an entry for the host. Follow the other entries there. + 1. `keys.hosts.chaosknoten.age` needs an age public key (the private key is needed in the host-specific YAML) + 2. `creation_rules` needs an entry for the host, referencing the age key. +2. In `inventories/chaosknoten/hosts.yaml`: + 1. Configure basic connection info: + ``` + example: + ansible_host: example.hosts.hamburg.ccc.de + ansible_user: chaos + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de + ``` + You typically will want to use router as a jump host so that you can run Ansible on an IPv4 only connection. + 2. Add the host to the desired roles. As a minimum, you'll want `base_config_hosts` and `infrastructure_authorized_keys_hosts`. For a typical web service based on Docker Compose, you'll want `docker_compose_hosts`, `nginx_hosts`, and `certbot_hosts`. + 3. In the directorry `inventories/chaosknoten/host_var/`: + 1. A file `inventories/chaosknoten/host_var/example.yaml` with the host/service specific configuration. + 2. A file `inventories/chaosknoten/host_var/example.sops.yaml` with the encrypted secrets for the host/service. Run `sops inventories/chaosknoten/host_var/example.yaml` to edit/create that file. Entries there should generally be prefixed with `secret__` to make it easier to see where that variable is coming from in templates etc. + +## Service-specific config + +From here, we go into the details of the web service that you want to configure. For a typical web service with Docker Compose, you will likely want to configure the following. + +Make `inventories/chaosknoten/host_var/example.yaml` look like this: +```yaml +certbot__version_spec: "" +certbot__acme_account_email_address: le-admin@hamburg.ccc.de +certbot__certificate_domains: + - "example.hamburg.ccc.de" +certbot__new_cert_commands: + - "systemctl reload nginx.service" + +docker_compose__compose_file_content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/example/docker_compose/compose.yaml.j2') }}" + +nginx__version_spec: "" +nginx__configurations: + - name: example.hamburg.ccc.de + content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/spaceapiccc/nginx/example.hamburg.ccc.de.conf') }}" +``` + +This will create `compose.yaml` from the template `resources/chaosknoten/example/docker_compose/compose.yaml.j2'`, and the nginx config from `resources/chaosknoten/spaceapiccc/nginx/example.hamburg.ccc.de.conf`. Of course, depending on your service, you might need additional entries. See the other hosts and the roles for more info. + +## First Ansible run + +Before you can run Ansible successfully, you will want to make sure you can connect to the VM, and that the host key has been added to your known hosts: +* `ssh chaos@example.hosts.hamburg.ccc.de` +* `ssh -J chaos@router.hamburg.ccc.de chaos@example.hosts.hamburg.ccc.de` + +Then run Ansible for `public-reverse-proxy` to add the necessary entries: `ansible-playbook playbooks/deploy.yaml --inventory inventories/chaosknoten/hosts.yaml --limit public-reverse-proxy`. + +Finally run Ansible for the new host: `ansible-playbook playbooks/deploy.yaml --inventory inventories/chaosknoten/hosts.yaml --limit example` + +# Commit your changes + +Do not forget to commit your changes, whether it's a new host or you are making changes to an existing host. + +And always `git pull` before you run Ansible so avoid reverting anything! \ No newline at end of file From cee1fe970aa629d5b2f9bf58de2a8ed18b1726c9 Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sun, 25 Jan 2026 14:03:54 +0100 Subject: [PATCH 068/142] Add spaceapiccc as a replacement for erfafoo --- .sops.yaml | 7 + .../host_vars/spaceapiccc.sops.yaml | 215 ++++++++++++++++++ .../chaosknoten/host_vars/spaceapiccc.yaml | 16 ++ inventories/chaosknoten/hosts.yaml | 9 + .../nginx/acme_challenge.conf | 2 + .../public-reverse-proxy/nginx/nginx.conf | 2 + .../docker_compose/compose.yaml.j2 | 39 ++++ .../nginx/spaceapiccc.hamburg.ccc.de.conf | 42 ++++ 8 files changed, 332 insertions(+) create mode 100644 inventories/chaosknoten/host_vars/spaceapiccc.sops.yaml create mode 100644 inventories/chaosknoten/host_vars/spaceapiccc.yaml create mode 100644 resources/chaosknoten/spaceapiccc/docker_compose/compose.yaml.j2 create mode 100644 resources/chaosknoten/spaceapiccc/nginx/spaceapiccc.hamburg.ccc.de.conf diff --git a/.sops.yaml b/.sops.yaml index 3b728e2d5..bb83e3942 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -33,6 +33,7 @@ keys: - &host_public_reverse_proxy_ansible_pull_age_key age1p7pxgq5kwcpdkhkh3qq4pvnltrdk4gwf60hdhv8ka0mdxmgnjepqyleyen - &host_zammad_ansible_pull_age_key age1sv7uhpnk9d3u3je9zzvlux0kd83f627aclpamnz2h3ksg599838qjgrvqs - &host_ntfy_ansible_pull_age_key age1dkecypmfuj0tcm2cz8vnvq5drpu2ddhgnfkzxvscs7m4e79gpseqyhr9pg + - &host_spaceapiccc_ansible_pull_age_key age1mdtnk78aeqnwqadjqje5pfha04wu92d3ecchyqajjmy434kwq98qksq2wa external: age: &host_external_age_keys - &host_status_ansible_pull_age_key age1yl9ts8k6ceymaxjs72r5puetes5mtuzxuger7qgme9qkagfrm9hqzxx9qr @@ -160,6 +161,12 @@ creation_rules: *admin_gpg_keys age: - *host_public_reverse_proxy_ansible_pull_age_key + - path_regex: inventories/chaosknoten/host_vars/spaceapiccc.* + key_groups: + - pgp: + *admin_gpg_keys + age: + - *host_spaceapiccc_ansible_pull_age_key # external hosts - path_regex: inventories/external/host_vars/status.* key_groups: diff --git a/inventories/chaosknoten/host_vars/spaceapiccc.sops.yaml b/inventories/chaosknoten/host_vars/spaceapiccc.sops.yaml new file mode 100644 index 000000000..4f06e92a3 --- /dev/null +++ b/inventories/chaosknoten/host_vars/spaceapiccc.sops.yaml @@ -0,0 +1,215 @@ +ansible_pull__age_private_key: ENC[AES256_GCM,data:ZQJCVOcc2UTH/3tZRZEZAig2A7Vc/zBBz5IY+gKYMYpIKhLZN9S/OGrRdCc8VbXkN7pmZhzDL531PapI54cmFeCKr2yFJMlfXdE=,iv:1ilb+njcqgYVdownNiMNcAcG/TNpyRnLtAjEUGsCsl0=,tag:Od7kvNn8ZBl1LUnMyFwxpA==,type:str] +secret__spaceapiccc__shared_secret: ENC[AES256_GCM,data:0foffl4HF1SeL9rE3g==,iv:GzRTZAmr7zSBs1W+Vhyv6sMGhPnSy/SUZOSO39lzWHk=,tag:8IAS6Lt9vfpsJQwQfcunXg==,type:str] +secret__spaceapiccc__doku_ccc_de__username: ENC[AES256_GCM,data:fbrZROQz8Fzg/vI=,iv:LaR5UmkS3IhtroJp3C3xNF4ja7IhIiPRzGBHAfQbQGw=,tag:/VCNMKkw5qRbnRNHDnPj/w==,type:str] +secret__spaceapiccc__doku_ccc_de__password: ENC[AES256_GCM,data:mwkjOjRT7gOv,iv:wBzSeLzSWWe0j3LJesN/wnZ0tmUmXMVkRIBnp00qRhg=,tag:JSsbq1+qs2yA9BM2LouG1w==,type:str] +sops: + age: + - recipient: age1mdtnk78aeqnwqadjqje5pfha04wu92d3ecchyqajjmy434kwq98qksq2wa + enc: | + -----BEGIN AGE ENCRYPTED FILE----- + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBCY1Z0Slg4UmpQQUhGKzJX + S0ROZ2owdmNVRUFzbDhjWEJpNkxGQnF1RFFVClgrZDlZRDNCbllWeElEWFN4Uy95 + YXNzUGptcU9adjdJQVphSS9NQ1NaVTQKLS0tIEtQUlIyTURXK2lDbWtmMXU2OWtx + TnNtQjVpMUIzZjgzQnZicHV6OXE3ZlUKtChQKJlUmTV42FEpO2S1sTAI2+K/mro+ + C3cvwiqydpOlbH6tulcP6HSeDVExAAMeDZMfjebg/5cfq7Yfh6xa5Q== + -----END AGE ENCRYPTED FILE----- + lastmodified: "2026-01-25T11:18:43Z" + mac: ENC[AES256_GCM,data:4s5GiYhU/+kieEGUY9bS5W0MAQ/AUS3TbvLezSypH8Div5HRoM7YfMeqgLq4jC+TjUL9d+ZfusjAmsOEG9PjHbIH051gg8U5TvB38wzmw3RpJxnpDtmiFrRh9QbXl+Fz8V/Oigf6hhXbgu01zZpZY9jy6YLNtUZc6AoqAQh27us=,iv:YUS/vGXcbgQPM1CKcK8YjOH5+KPlzBXcOtx3jmUblqA=,tag:jYzqaMfHv4Tyv2NelSSVvQ==,type:str] + pgp: + - created_at: "2026-01-25T11:17:03Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAxK/JaB2/SdtARAAoP0ZuYWL+Z9vrnMN+ISg6/yx8Z3Oq2GufmYMowk/nQ7A + wk+xQQcywn7zLCweaTNtNb8CXtAcInnLhXZNRjviOecyAexZdFxcX+SIiT9x32aZ + xk2M3Bgnrtf9GQMV9q/mr7fgn+iaILyRjWTQMjUYFGuA5Hu7PNICxZZtA1y6p3G8 + iBDROt1vZS2M6WorA5n3FGSwCRFUCqWnRsBR+AkR0vjb/0xEmS4YpDZCdsqWVITq + fBxDZntznqQpmlTH9AxJV48QlfYMLAYFV7seHxp5VSjgDxaPJD4QIiNZMOylRa/y + 9hx1S5VN8KIfT9eW5piOeyNikE3Wv7hdwd4zOQ/ObESADh/QWFN582Smk+fxf76Q + /KlP7BM8JW7afjkvTHXg7cvc1qo9+GilWcWX9pK04v9bZtXTbO6H+uOhydlSmtUe + FGoHgQsMi52S4vHTFF1A8o76pvpQAIYNC2Zif2zZYq9ERvbLeAcgoIoo7bQihttc + lY8ZOqxQj9KbkFNbyLTlyekebNhfa512XjJij14YkYUVU2Y65kxtimZ3WpwKvLO2 + JcDWHOJduhUC+21TGTq6QFo1LNhpowyC447eybi8T0/WxMCBms/fhW+m4Mkt4bRi + ByjgQe8makgLqw2/EUlFl1qyF4zU0zjn+97pISvg0YBfQYhPIb5k8AWWkUF4mHHU + aAEJAhDMVlvoC4bopmVlgoCrCejX5wb+ULW9hle6S69440PVK4uN94Ral+NSH99o + CU4gmqngD9N6sw8SBp8lFFUzjhoqfcNwJ9cv8T9PIPgHLriPnRqwPsy4dHSYSsv1 + wWY4KUeOqk6Y + =Wm7O + -----END PGP MESSAGE----- + fp: EF643F59E008414882232C78FFA8331EEB7D6B70 + - created_at: "2026-01-25T11:17:03Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA6EyPtWBEI+2ARAAh2b51c4cFL0wOPTuQtxjthkEZGVv0sQC19PiDOWAy/zi + 457Ix+QPA31Wmun4uGQF8E+vJC9StDXvOuEku2639wK7Gx8UVHSJM+QhFt+f9tiI + df5mVRPz4R1tVMU6P/f2rTOqqQyugR2pi3wCcwntnZplEuL/Gxw2SI4gGAq9B1Kb + FVVdMkJOxhx33QWFhIEOqLLfMU+gdvGPtRaDPkMA5KJD5FDO0xYzgd+5j6wKLsdb + rY7MVvaP3HWbmsMOpJD+8zo3ONBeaG3OwdhhF8KgbHxGP/49r25WwI5YWqXI44K9 + xIQvtBJFTLaisO3q5rTOZgqKEvWAAX3e82cY3tCUG4aDyKEeF8dOqQ9GbI+KWaKh + kqTFDz3gh9sWI3Ex2/JHxq4xGJE433x4ArxHgSmXxfKWfc9zhiDuhtE1GBfEWP8t + a+07FWvsG8TCbS8pzFu40z/6we2O/VGXnZBa+vlc/9YPyLBN+zmAH3+jfhgYzV22 + oF0HPQTzLdd6FoUx771ETTOqDgwg2H8Lqv+cC5MjPgxUPyScP4G7t0r9TMSydxFv + 85Yo7ZWiBjo5TgdiU7agCCLKYct1C1R+9M20uRyrttDBhrVSjDlsIKmuStIdI7jk + k/PPLjxUKf5osTw8KKsSLvHTxt0G+rRzt38HgOCsOPBSoE6zlMTn79rgy+Ipm7fS + XgHPPTT78/y2Xvx3QGx9C2X9YqPDGhs12uzQ7HdcRlUu3Ay9akrSiV99CKCFb6ZZ + lDzOZrWvuWHcOLLqykhK3x8uhieMmwsM5WCNopr1j7i74b8UlVCmItXFXCaTRqg= + =ytkN + -----END PGP MESSAGE----- + fp: F155144FC925A1BEA1F8A2C59A2A4CD59BFDC5EC + - created_at: "2026-01-25T11:17:03Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAz5uSgHG2iMJARAA7Wenq30iYLUH7qTgwPJyIyPz0blUzqEpEeDyVjfLVxee + VzXUfrxL8ybD+1JNISQNogDRP+gi4Sa/kTwAwEudqg9nv8DTff2l+Ge7YRifTgoO + tK1yjPKpl/iH33s2tIRRPI9DJ38NKtIN7pFrZ9Icyinyx8O+Tx0U/rVOs+4I4i0K + eIhsjG2tD6z5AvDkTqJ70S16LWdlr+hrHfEFmZ9NDbesoVj6YlDjx8yXr6UAdBAd + nx4aVjy2vygBJFZHN3iqitD6pnBvFC6QM1SZTRfe1l0lb1NXiVbT42ir7hsQ1/Di + MKRw/GuD+5jwHWLAzFbmMeirLY1hw418AzMPmCUqg3xJxmm53v4abD/j6cnHaM8h + vkSEsO9iA9exDjM9RPqS5GXCGx3E2MdBzgBMZIdvRmEV8G7FTqBZAJZsElAA/wTl + WhCEB3iDqdTSuDUnEj2FHIrUGNG4IDKOm9mIexqkpdvF6ByXYHeOAVbeb0ByJmgO + 3QIYGsOYiWW2Uq1OCT2F+sP9ogn2GxInfMgPK7shFcUiXUbUKSnfBh4b5DbKPcJJ + wFtuJA4NbWgXbDPn0k2Lwbv33tMVuwQBRbCjseXD5JYUA+wEbNg341oNEl7gIBCp + oNyNJ0y2rkp8rxvf5mYLjk6VsMs0VO4vgRItg8oi78cZMmSrk2zdCda9yZA+JeHS + XgGnSemRkXBLcDcZMa1M178H/YTxispkRvsGyscxn7sjBRUgrFHnWM9j9P0GHtHE + RzBflQuBiG60jDb14l0SBEGDAm3Dp1bT5Up8attUJ0+03ta6E4G6iAR+fMXiBJA= + =LEoh + -----END PGP MESSAGE----- + fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 + - created_at: "2026-01-25T11:17:03Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAw5vwmoEJHQ1AQ/7Be0MaQ6HSb4N2DW+z2ALOuKSljRhSHLiLXt6bmhot+2Z + RRMsfsPGHWwDFzy5WWL6117ViPsxdFy88ZC8IhfT2ysf9d7IsNqBAj/W/a1kUXBg + b3PLPGXT3yHRitmRA0PxBWjmKBHuiKJgpj2AvKPBqmpJOpyWU8Yr0yu+fdPgHHmO + 9gMPwmoeDKCuVUQMtg78cxx3b9v3WzBXbx+VuhPepVPPUr7/iTWYnLWy8+s55hOV + A6qQS8f6JH9rhS7dqoSCMQ3wrqkSVzXhluhjfUXa/FW/EVp0g1r+lLMXHARA1Gtp + EGQS2SfwDB95xl6uLfqKblezzxt52yPvGp+hisAhgkCyoLonhL27fMTmtZ0+q9RX + FJoT2pPNTSP/zoLxfEJzsa9MgTCDKQL55215hTGHS2I/2ZeDtfINyc+/4LE/AhSc + 4OOdPSbgG7bIPkCepphBAccjbCVmPOQqaEOk5C9TfLbZREEBv0mQA7pzWVIsa6Gc + xep0qJGMSmRT5rmqs9pFFISAx57H7w91cRaEtwtGkg9/90+wTW2kIvnHMLXV/T6z + wxVG4RHn7eXlDdh9oz0ncpA1uh2A4fvEJN5dAbQHawiAUaOokm8cmv42LQ1zTF0x + 4EcZPQ1VAFzKsZE7/3TnCWoLPOUSNSOG+uJm2Gaps8P1DzIfgUAcSybaB+3cbGjS + XgEVALzLzyRrFB48McT/fU4l0dMiQ49OdFmWm5oWgOWDCCrHBomxPmWRQ5cUzVSV + wvgo/MrfGVOLrwinfeu/izoy9U0LxFcJtqiVLyxtUTARDlDcjv6OYWoRzvb0DzA= + =KudR + -----END PGP MESSAGE----- + fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 + - created_at: "2026-01-25T11:17:03Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DerEtaFuTeewSAQdAlSeQVBNgJ8WxD85XYmcCHmlNXIyIkAJPEu0coBpNpVQw + mGZKY6j0WkQSmHdCVAeh8/z6LOEgXMphP2jn0ZpZHiMu3FGNJJtWFloRKxOvOxr5 + 0l4BXq0oVpIYhcxeVxS1prF1F2EJf/OuRX8Zz9ngZuL7UlMoToBYHksPMaBfLlKB + iFcXPURafpmhvWpRaqD9CRqM3XRagm1nYPS6Zg8Yae9cfSmU7UnYMtJZwdMmJ+x4 + =gfNC + -----END PGP MESSAGE----- + fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 + - created_at: "2026-01-25T11:17:03Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQILAxjNhCKPP69fAQ/4mdGngFM8WhiX5P5RFo679yRMp5iHtiPqD0V1dE1byyje + d7WzceQwOYfYq/UEEw2ruiqIPhUjHlzB/GQ6wqFbj0+1tm7+/X2B42tO7vkO9gQf + 2mvG0gCGB1iykMnfARQ6EH1s90oAHCBcPFamjBZ3oawS0sI34aSInQGqLl7Ss+O+ + UgoOc2fbhYmRriZW7Elyx+8DuQg4RZ6/oPs18mtwQdLfKB8dwrt1TQrJvBx7iPh4 + RQWrRf3id+C8EeysmWPtMotukh1FgvBtBFEXIL66wntJTDC65AlNU1c2xkgUTATI + rA6ucSoyROTGDOTAWhBdwA+yV9Tf2zw5hzu8G2vT1nFLU+DFQiuQWj6TNn1s5xzc + 63bQ9bFzY/0pKKB2T1TLdeU6xoSt9QoJukagFS86Tgh3NcoMi69dFSSlchldgeX2 + wiJwpUjl8DgeJFEXcQES1vbn+MNJHYZHSSAcZecQX5rauSj6EmTFTXxYg7Vp98D9 + S4lVnXl6P7OByxqRJyQUzBmSD21KYeVXs6O4hY4cAxKx+pXYXqlGMmSpQi4SqJKF + xyD0f7Iz1FjB1u3dpcJmf5/71wLkZWc9smKfJICLaFZzYKfbfrF32xbAPGRuTq50 + Fv5d3R1YJKA9afQUI3HT0PpCEOnsI44WPqgnoOPHyT032gruZt9geL7yM1sRj9Je + AfCwLc18oeiRWhnZLw/K1YMTnDACVhMMRufyoE7MEEixsV3xhuG54+5FIufERSO3 + aW2vmDt65mLjqGVcepqbEz/Ip4hfGeMOnPfNbNil79Hc6TV1SzTcPnem40QPAA== + =7Qbv + -----END PGP MESSAGE----- + fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 + - created_at: "2026-01-25T11:17:03Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA1Hthzn+T1OoAQ//QizKfdVMoIVzretcwqPNQPhXnKYbHNI/AHhpsK2AeOFw + N2pP+8itgzpoJ+l3qYc1s7HnUYqN69cVXNOkuB9+EKUmEoubj9oLJEJQdfr1apux + wrqgvIfeXuQZWp4E4aI/02ndyWzzedfVV3/qf+JC0ZColccmKFReSsMedz7dOmWK + BM2bieM1PajS65leCAO2VVFTrwayKiHWpURMUY8HvrMk8N6GQkXqe1XDdxXNJqFr + irXgWtBaKbl/KJgrxnT9HwlH9YkCebsyCi2sZKmJEqyIi78SOrhmWzeoTs5Mgg/M + EqZLWrGhOOD2/ineOxiDhFPOEDVjgoprghxei2Ef0i9pYITJmGMuB76KayMW3nbY + mEJgASKsWFN10zTiZK5DjxJoDEq4fyqtzFhYhRenwcvZqiklr2JudSzBWkKfx4Y/ + TOoLwwn93TQDLoIIEsOlLaWMBxm3LsAe4MAr2k9/gAkGGMzeOiTRISHJeFtaNRPe + xPv2hJBKqAJJkWu5nlcn5FEtAqdG8hPRPqEZWDyWRmQDlk0Rx286UFIS+BKSfwvo + Ak52YxruVlkwxn4lRJ8yCrIneZocLFlBgTNoqbr0uYSHkg6XHwzniN+qGRHxjrm8 + hDYcnVeAnLCDGEwPpMcx7KYVtLeEcr2Tm5btAlHugpQ1pNrUuZ3Lf47AdneMSY7S + XgE32gbAcEaZVQRl1fnehRIwqqNIuFDxjhFpDYpvX1Rep2NEUtEaxd50aqMh3PKm + XE6ZBkKbhSylRnOs8dgVZK3nqEe1xDsdcx5hFAoyyhs1QhWVT/MHUtfuB2PBcjo= + =T4dN + -----END PGP MESSAGE----- + fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD + - created_at: "2026-01-25T11:17:03Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA46L6MuPqfJqAQ//SZac3kFkPkHZ4CveGECwnJLKA/UJO/XoV44mjiQDtY4Q + tFJ+YauR7GHK3CYMvpx8uWejiW6PzMkuqVuKwk5QMBsRA7q/6SmQeLUNNIPx8AAm + s1Lo1Cdjv5Ku8AnR7gAJ9w3O+qM635xo7zgtvEv5qJuPrwbqy8kstvS2fnxg9Zb3 + Dl4J+Wp1kRs8hHsFIkECKPqKNB0LfP57s63Vwd5tI2TltDMlMkvKvjgsQSPhUqQl + z0AIPT+zON37P4EW5buJ5NKvojYZ/QyzoqJ+Zb+2jn3uyMRDo4lqaT+uiVDcmB6w + jg2yBGKgU5XGAU5NyCSldBGW3yQfNHAEjTPHWIvcplfUOUQ2mKIV31c3ci8cBWa5 + zfA4K2UOFPSHSraohaT770Ani/qvm5XH9HvAA2HOI50LuIh4t8cWGocbW1f5PfvZ + gMIuA27UfWWD10tz+J3qvz2RGcfBPV+3BS8BJUh2SRC80ba8nDM/VSuQUkxQA1go + AHogKohH7v5vIPEN6ggRxZ3yCroQ3zfdABekrP8sfKXU652/vhw5MFPtqp8ow5hU + uJ3S3lCoKQCKE8tc+288WuJXIGaYG4LKhaVlFWFqQDib+0jfm8RfwqqxV5vis7np + mbPMIyl/MTAeevsQC2yqbHeZ+nDXhrb8b4lfWCnn5jpNwZFpP+RZpJT6XxFbONTS + XgGQowdDlIEa1Hs1klR8lPOScW3VyhWbTyfWkhg4cI6js21/0MMsC22myhjxjZKU + rCn8k0mgZw+HyB9qfm3eM4fYXHs+CXQM22eBQK+IK2VvzT9jbpSBIoJEDW0B47c= + =PbAZ + -----END PGP MESSAGE----- + fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A + - created_at: "2026-01-25T11:17:03Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DQrf1tCqiJxoSAQdArbiHTkrjSYBSPIIgSNnEoAWkU43Zn8/6rtksEivhPVgw + ik9/LvTH3VUSS1pDtLNoJq3wfE8aCoGTVXHjCtaEQqp7PJ9c83afZuT0/jSs20vo + 0l4Bbp+AopvK8wlLakYZM0rbXzJw7LyW7hyA3wSN/gL0MwT8sW6hb08BB3+zRY+f + dQGtPMDNZ0aJ8nzJ/WLVxi4GdC3pAWxqw/1AX0SwwMb0PEf9kdYSgnrmYQsqx9KU + =Cbzj + -----END PGP MESSAGE----- + fp: B71138A6A8964A3C3B8899857B4F70C356765BAB + - created_at: "2026-01-25T11:17:03Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DzAGzViGx4qcSAQdAQKsWq8NPJbW2SBhKhlgkW1gzYnx9baL8spEk1Wv31Asw + fuq75JZ/m8yR6+jnchE8ikuWrVQ1IRwyQBB2qlaArrdwnVpkF5HG/ggpDy4l5UYK + 0lgBhuKG36g1P7G0incMXR+S+UswYQhzm+19LqoB247HvZZoyIT4m0k7XndHBpUw + fzQyFTKdwQpmWyQWsbkW/ycvxkKyKcEce6xkga0e8UbB8w1fJ0P6gErz + =g5Ck + -----END PGP MESSAGE----- + fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD + - created_at: "2026-01-25T11:17:03Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA2pVdGTIrZI+AQ//X0eMLW5Con7f2J4S15RwQX/uMc+p0tabrfSYAT8cg1oR + X8qyFgBWL4EK/VAcgS+Loe6cOCO8pDv7R81nn18wg2D6hVN3BOcotgLtLpqWEdMz + FguVIc++/Nh5+s+H1oDxqfwO6LbcuewBvvNS9xvBUtHBMuoAGVO0mUu7jpxrg+4k + dh2QeA/YWc4hGly/lO6eOhq61arAY4tukqs1K4JRY7z1vZYb2658HamfruLcRP1j + kM6yvJ9bgrg3hIEPG48lWX3SATRpKDP4ukyTYMFPN5rePUu67rnkwCvXwvBzWV4v + fvjmDZ4U2AD6Ihn5Be3ThZyQivZJPmxBlgit6uQOdu08Q5/S0DDWSS/MnbRnElQt + caQMnIcSbwLJfum2/0AS/dcl6f36vOl5t9eiy3nnrgufFEUcAMgJ2bJk8+6nPRli + MImBTXLMor97XD4DS+xyQ8NjYzf8XxEDduCzWA/EQborLkkaXj5J9ZmQSKDfv6bb + wcGfxt0+JGEPmOuOD/BwZHhEcd6eV8k3cM6k4oQ3k9cMGele+dtSkrlkyFKnnBNV + NrZVBE5j62sgnUUgKCesbKPfauETE5Z+R2uvOK5Y0gqjTfaw8hV1YF2q+x2qRWig + 6NjHheUtjigCgF61OK4x1a5WDJmVeuAe03JnwKYMujN4H5Oi9YMhSX65lX1+fhrU + aAEJAhCV01dJAuYksyvp+F5Dx62eKZj7gL/MHL3zHw97WbONvI7ApC3/Q7fkupYm + oPfYKQD5ov77V3u+Y8nVOoYM+Hb4thFQdEV01r90g9WUj8LrXvxd08j3GwAnzDMG + xU5hdDPzz/jT + =zb8A + -----END PGP MESSAGE----- + fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + unencrypted_suffix: _unencrypted + version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/spaceapiccc.yaml b/inventories/chaosknoten/host_vars/spaceapiccc.yaml new file mode 100644 index 000000000..377b90975 --- /dev/null +++ b/inventories/chaosknoten/host_vars/spaceapiccc.yaml @@ -0,0 +1,16 @@ +docker_compose__compose_file_content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/spaceapiccc/docker_compose/compose.yaml.j2') }}" +docker_compose__build: never +docker_compose__pull: never + +certbot__version_spec: "" +certbot__acme_account_email_address: le-admin@hamburg.ccc.de +certbot__certificate_domains: + # - "spaceapi.ccc.de" # after DNS has been adjusted + - "spaceapiccc.hamburg.ccc.de" +certbot__new_cert_commands: + - "systemctl reload nginx.service" + +nginx__version_spec: "" +nginx__configurations: + - name: spaceapiccc.hamburg.ccc.de + content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/spaceapiccc/nginx/spaceapiccc.hamburg.ccc.de.conf') }}" diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 93c61be86..62461192a 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -74,6 +74,10 @@ all: ansible_host: renovate.hosts.hamburg.ccc.de ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de + spaceapiccc: + ansible_host: spaceapiccc.hosts.hamburg.ccc.de + ansible_user: chaos + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de hypervisors: hosts: chaosknoten: @@ -98,6 +102,7 @@ base_config_hosts: ntfy: sunders: renovate: + spaceapiccc: systemd_networkd_hosts: hosts: router: @@ -117,6 +122,7 @@ docker_compose_hosts: zammad: ntfy: sunders: + spaceapiccc: nextcloud_hosts: hosts: cloud: @@ -138,6 +144,7 @@ nginx_hosts: zammad: ntfy: sunders: + spaceapiccc: public_reverse_proxy_hosts: hosts: public-reverse-proxy: @@ -158,6 +165,7 @@ certbot_hosts: zammad: ntfy: sunders: + spaceapiccc: prometheus_node_exporter_hosts: hosts: ccchoir: @@ -189,6 +197,7 @@ infrastructure_authorized_keys_hosts: ntfy: sunders: renovate: + spaceapiccc: wiki_hosts: hosts: eh22-wiki: diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 82e596aa9..0a6a70dd4 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -78,6 +78,8 @@ map $host $upstream_acme_challenge_host { cryptoparty.hamburg.ccc.de 172.31.17.151:31820; staging.cryptoparty-hamburg.de 172.31.17.151:31820; staging.cryptoparty.hamburg.ccc.de 172.31.17.151:31820; + spaceapiccc.hamburg.ccc.de spaceapiccc.hosts.hamburg.ccc.de:31820; + spaceapi.ccc.de spaceapiccc.hosts.hamburg.ccc.de:31820; default ""; } diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index 489dda558..2ad5dc4d2 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -96,6 +96,8 @@ stream { cryptoparty.hamburg.ccc.de 172.31.17.151:8443; staging.cryptoparty-hamburg.de 172.31.17.151:8443; staging.cryptoparty.hamburg.ccc.de 172.31.17.151:8443; + spaceapiccc.hamburg.ccc.de spaceapiccc.hosts.hamburg.ccc.de:8443; + spaceapi.ccc.de spaceapiccc.hosts.hamburg.ccc.de:8443; } server { diff --git a/resources/chaosknoten/spaceapiccc/docker_compose/compose.yaml.j2 b/resources/chaosknoten/spaceapiccc/docker_compose/compose.yaml.j2 new file mode 100644 index 000000000..67e4b5816 --- /dev/null +++ b/resources/chaosknoten/spaceapiccc/docker_compose/compose.yaml.j2 @@ -0,0 +1,39 @@ +--- +services: + frontend: + #build: ./frontend + networks: + spaceapi-network: + ipv4_address: 172.16.238.10 + image: gidsi/spaceapi-ccc-frontend:saved_from_old_host + restart: always + expose: + - "80" + depends_on: + - backend + backend: + #build: ./backend + networks: + - spaceapi-network + image: gidsi/spaceapi-ccc-backend:saved_from_old_host + restart: always + environment: + SHARED_SECRET: "{{ secret__spaceapiccc__shared_secret }}" + DOKU_WIKI_USER: "{{ secret__spaceapiccc__doku_ccc_de__username }}" + DOKU_WIKI_PASSWORD: "{{ secret__spaceapiccc__doku_ccc_de__password }}" + depends_on: + - database + database: + image: mongo:saved_from_old_host + networks: + - spaceapi-network + restart: always + volumes: + - ./data/database:/data/db + +networks: + spaceapi-network: + ipam: + driver: default + config: + - subnet: 172.16.238.0/24 diff --git a/resources/chaosknoten/spaceapiccc/nginx/spaceapiccc.hamburg.ccc.de.conf b/resources/chaosknoten/spaceapiccc/nginx/spaceapiccc.hamburg.ccc.de.conf new file mode 100644 index 000000000..f060996a9 --- /dev/null +++ b/resources/chaosknoten/spaceapiccc/nginx/spaceapiccc.hamburg.ccc.de.conf @@ -0,0 +1,42 @@ +# partly generated 2022-01-08, Mozilla Guideline v5.6, nginx 1.17.7, OpenSSL 1.1.1k, intermediate configuration +# https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 +server { + # Listen on a custom port for the proxy protocol. + listen [::]:8443 ssl http2 proxy_protocol; + # Make use of the ngx_http_realip_module to set the $remote_addr and + # $remote_port to the client address and client port, when using proxy + # protocol. + # First set our proxy protocol proxy as trusted. + set_real_ip_from 2a00:14b0:4200:3000:125::1; + # Then tell the realip_module to get the addreses from the proxy protocol + # header. + real_ip_header proxy_protocol; + + server_name spaceapi.ccc.de spaceapiccc.hamburg.ccc.de; + + ssl_certificate /etc/letsencrypt/live/spaceapiccc.hamburg.ccc.de/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/spaceapiccc.hamburg.ccc.de/privkey.pem; + # verify chain of trust of OCSP response using Root CA and Intermediate certs + ssl_trusted_certificate /etc/letsencrypt/live/spaceapiccc.hamburg.ccc.de/chain.pem; + + # HSTS (ngx_http_headers_module is required) (63072000 seconds) + add_header Strict-Transport-Security "max-age=63072000" always; + + proxy_set_header Host $host; + proxy_set_header X-Forwarded-Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Port 443; + # This is https in any case. + proxy_set_header X-Forwarded-Proto https; + # Hide the X-Forwarded header. + proxy_hide_header X-Forwarded; + # Assume we are the only Reverse Proxy (well using Proxy Protocol, but that + # is transparent). + # Also provide "_hidden" for by, since it's not relevant. + proxy_set_header Forwarded "for=$remote_addr;proto=https;host=$host;by=_hidden"; + + location / { + proxy_pass http://172.16.238.10/; + } +} From d35f1cc779b9ed4a23ddc8e376c393cf1c33f2e7 Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sun, 25 Jan 2026 15:31:42 +0100 Subject: [PATCH 069/142] GPG must be installed for the docker role to be able to add the repo --- roles/base_config/tasks/main.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/base_config/tasks/main.yaml b/roles/base_config/tasks/main.yaml index 7f0281eb7..ab737b762 100644 --- a/roles/base_config/tasks/main.yaml +++ b/roles/base_config/tasks/main.yaml @@ -30,4 +30,5 @@ - dnsutils - usbutils - kitty + - gpg become: true From c285694aaadd49374745c9749d54b2ece5c7afaa Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sun, 25 Jan 2026 15:47:41 +0100 Subject: [PATCH 070/142] Add age private key --- docs/create-new-web-service-vm.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/create-new-web-service-vm.md b/docs/create-new-web-service-vm.md index 76eca2169..1f5874d7d 100644 --- a/docs/create-new-web-service-vm.md +++ b/docs/create-new-web-service-vm.md @@ -37,7 +37,8 @@ As the first step, we need to make the host known to Ansible. 2. Add the host to the desired roles. As a minimum, you'll want `base_config_hosts` and `infrastructure_authorized_keys_hosts`. For a typical web service based on Docker Compose, you'll want `docker_compose_hosts`, `nginx_hosts`, and `certbot_hosts`. 3. In the directorry `inventories/chaosknoten/host_var/`: 1. A file `inventories/chaosknoten/host_var/example.yaml` with the host/service specific configuration. - 2. A file `inventories/chaosknoten/host_var/example.sops.yaml` with the encrypted secrets for the host/service. Run `sops inventories/chaosknoten/host_var/example.yaml` to edit/create that file. Entries there should generally be prefixed with `secret__` to make it easier to see where that variable is coming from in templates etc. + 2. A file `inventories/chaosknoten/host_var/example.sops.yaml` with the encrypted secrets for the host/service. Run `sops inventories/chaosknoten/host_var/example.yaml` to edit/create that file. Entries here should generally be prefixed with `secret__` to make it easier to see where that variable is coming from in templates etc. + * Add an entry `ansible_pull__age_private_key` with the age private key you generated above. ## Service-specific config From 0939771d0812e71fad69074420223a706353ec98 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 25 Jan 2026 20:22:44 +0100 Subject: [PATCH 071/142] public-reverse-proxy(host): add entries for cpu.ccc.de --- .../chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf | 2 ++ resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 2 ++ 2 files changed, 4 insertions(+) diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 0a6a70dd4..71ae72921 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -80,6 +80,8 @@ map $host $upstream_acme_challenge_host { staging.cryptoparty.hamburg.ccc.de 172.31.17.151:31820; spaceapiccc.hamburg.ccc.de spaceapiccc.hosts.hamburg.ccc.de:31820; spaceapi.ccc.de spaceapiccc.hosts.hamburg.ccc.de:31820; + cpuccc.hamburg.ccc.de 172.31.17.151:31820; + cpu.ccc.de 172.31.17.151:31820; default ""; } diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index 2ad5dc4d2..bdf71846a 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -98,6 +98,8 @@ stream { staging.cryptoparty.hamburg.ccc.de 172.31.17.151:8443; spaceapiccc.hamburg.ccc.de spaceapiccc.hosts.hamburg.ccc.de:8443; spaceapi.ccc.de spaceapiccc.hosts.hamburg.ccc.de:8443; + cpuccc.hamburg.ccc.de 172.31.17.151:8443; + cpu.ccc.de 172.31.17.151:8443; } server { From 652aa32e217fe21f864d9e24d2c80ccd520776c0 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 25 Jan 2026 20:49:39 +0100 Subject: [PATCH 072/142] docker_compose(role): document new build and pull arguments --- roles/docker_compose/README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/roles/docker_compose/README.md b/roles/docker_compose/README.md index c0a7a93d5..6f2c84132 100644 --- a/roles/docker_compose/README.md +++ b/roles/docker_compose/README.md @@ -19,6 +19,10 @@ Should work on Debian-based distributions. - `docker_compose__configuration_files`: A list of configuration files to deploy to the `/ansible_docker_compose/configs/` directory. - `docker_compose__configuration_files.*.name`: The name of the configuration file. - `docker_compose__configuration_files.*.content`: The content to deploy to the configuration file. +- `docker_compose__build`: Whether or not to build images before starting containers. + Defaults to `always`. +- `docker_compose__pull`: Whether or not to pull images before starting containers. + Defaults to `always`. ## Links & Resources From a5d291cea8829f7098929b3da0640c5effdc06c4 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 25 Jan 2026 20:58:57 +0100 Subject: [PATCH 073/142] spaceapiccc(host): setup ansible-pull --- inventories/chaosknoten/hosts.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 62461192a..2a95ba871 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -232,6 +232,7 @@ ansible_pull_hosts: public-reverse-proxy: zammad: ntfy: + spaceapiccc: msmtp_hosts: hosts: renovate_hosts: From 1523b15952987cc23f87a7845d480be9bf89327c Mon Sep 17 00:00:00 2001 From: June Date: Sun, 25 Jan 2026 21:11:07 +0100 Subject: [PATCH 074/142] docs: improve formatting and wording a bit to make things clearer --- docs/create-new-web-service-vm.md | 55 +++++++++++++++++++++---------- 1 file changed, 37 insertions(+), 18 deletions(-) diff --git a/docs/create-new-web-service-vm.md b/docs/create-new-web-service-vm.md index 1f5874d7d..da8293bca 100644 --- a/docs/create-new-web-service-vm.md +++ b/docs/create-new-web-service-vm.md @@ -5,36 +5,47 @@ Let's assume that you want to add a new web service `example.hamburg.ccc.de` whi ## IP, DNS, VM 1. Allocate a fresh [IPv6 in Netbox in the 2a00:14b0:42:102::/64 net](https://netbox.hamburg.ccc.de/ipam/prefixes/47/ip-addresses/). This will be the management address for the VM. -2. Add an entry `example.hosts.hamburg.ccc.de` with that AAAA to the name server (`ns-intern`). -3. Add an entry `example.hamburg.ccc.de` as a CNAME for `public-reverse-proxy` to the same zone. -4. Commit and reload the zone. -5. Create a new VM on chaosknoten, for example by cloning the Debian template 9023. Give it the name `example`. -6. Edit the ethernet interface to be connected to `vmbr0`, VLAN tag `2`. -7. Configure the IPv6 address in the Cloud-Init section. Leave IPv4 set to DHCP. -8. Make sure the VM is started at boot (options). -9. Adjust any other VM parameters as needed. -10. Boot the VM. -11. Add the [VM to Netbox](https://netbox.hamburg.ccc.de/virtualization/virtual-machines/). Make sure to enter the VM ID. -12. Add an Ethernet interface to the VM; we typically use `eth0` as a name. -13. Add IP for that interface, then choose "Assign IP" and search for the IP you've created. Make it the primary IP of that interface. +2. On `ns-intern`: + 1. Add an entry `example.hosts.hamburg.ccc.de` as an AAAA pointing to the allocated IP. + 2. Add an entry `example.hamburg.ccc.de` as a CNAME for `public-reverse-proxy` to the same zone. + 3. Commit and reload the zone. +3. On Chaosknoten: + 1. Create a new VM, for example by cloning the Debian template 9023. + Give it the name `example`. + 2. Edit the ethernet interface to be connected to `vmbr0`, VLAN tag `2`. + 3. Configure the IPv6 address in the Cloud-Init section. Leave IPv4 set to DHCP. + 4. Make sure the VM is started at boot (options). + 5. Adjust any other VM parameters as needed. + 6. Boot the VM. +4. Add the [VM to Netbox](https://netbox.hamburg.ccc.de/virtualization/virtual-machines/). + - Make sure to enter the VM ID. + - Add an Ethernet interface to the VM; we typically use `eth0` as a name. + - Add IP for that interface, then choose "Assign IP" and search for the IP you've created. Make it the primary IP of that interface. ## Ansible Basics As the first step, we need to make the host known to Ansible. 1. In `.sops.yaml`, add an entry for the host. Follow the other entries there. - 1. `keys.hosts.chaosknoten.age` needs an age public key (the private key is needed in the host-specific YAML) + 1. `keys.hosts.chaosknoten.age` needs an age public key (must be generated; the private key gets added later in the host-specific YAML) 2. `creation_rules` needs an entry for the host, referencing the age key. 2. In `inventories/chaosknoten/hosts.yaml`: 1. Configure basic connection info: - ``` + ```yaml example: ansible_host: example.hosts.hamburg.ccc.de ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de ``` You typically will want to use router as a jump host so that you can run Ansible on an IPv4 only connection. - 2. Add the host to the desired roles. As a minimum, you'll want `base_config_hosts` and `infrastructure_authorized_keys_hosts`. For a typical web service based on Docker Compose, you'll want `docker_compose_hosts`, `nginx_hosts`, and `certbot_hosts`. + 2. Add the host to the desired roles. + 1. As a minimum, you'll want the following roles: + - `base_config_hosts` + - `infrastructure_authorized_keys_hosts` + 2. For a typical web service based on Docker Compose, you'll also want: + - `docker_compose_hosts` + - `nginx_hosts` + - `certbot_hosts`. 3. In the directorry `inventories/chaosknoten/host_var/`: 1. A file `inventories/chaosknoten/host_var/example.yaml` with the host/service specific configuration. 2. A file `inventories/chaosknoten/host_var/example.sops.yaml` with the encrypted secrets for the host/service. Run `sops inventories/chaosknoten/host_var/example.yaml` to edit/create that file. Entries here should generally be prefixed with `secret__` to make it easier to see where that variable is coming from in templates etc. @@ -69,12 +80,20 @@ Before you can run Ansible successfully, you will want to make sure you can conn * `ssh chaos@example.hosts.hamburg.ccc.de` * `ssh -J chaos@router.hamburg.ccc.de chaos@example.hosts.hamburg.ccc.de` -Then run Ansible for `public-reverse-proxy` to add the necessary entries: `ansible-playbook playbooks/deploy.yaml --inventory inventories/chaosknoten/hosts.yaml --limit public-reverse-proxy`. +Then run Ansible for `public-reverse-proxy` to add the necessary entries: -Finally run Ansible for the new host: `ansible-playbook playbooks/deploy.yaml --inventory inventories/chaosknoten/hosts.yaml --limit example` +```sh +ansible-playbook playbooks/deploy.yaml --inventory inventories/chaosknoten/hosts.yaml --limit public-reverse-proxy +``` + +Finally run Ansible for the new host: + +```sh +ansible-playbook playbooks/deploy.yaml --inventory inventories/chaosknoten/hosts.yaml --limit example +``` # Commit your changes Do not forget to commit your changes, whether it's a new host or you are making changes to an existing host. -And always `git pull` before you run Ansible so avoid reverting anything! \ No newline at end of file +And always `git pull` before you run Ansible so avoid reverting anything! From c6c02724487ab278aa9904483d66efb8d4872d64 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 25 Jan 2026 21:16:38 +0100 Subject: [PATCH 075/142] docs: add section on conf. monitoring with Gatus (status.hamburg.ccc.de) --- docs/create-new-web-service-vm.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/create-new-web-service-vm.md b/docs/create-new-web-service-vm.md index da8293bca..57a1e81c5 100644 --- a/docs/create-new-web-service-vm.md +++ b/docs/create-new-web-service-vm.md @@ -97,3 +97,16 @@ ansible-playbook playbooks/deploy.yaml --inventory inventories/chaosknoten/hosts Do not forget to commit your changes, whether it's a new host or you are making changes to an existing host. And always `git pull` before you run Ansible so avoid reverting anything! + +# Monitoring + +## Gatus (`status.hamburg.ccc.de`) + +After you configured a new service or website, add it to our status and uptime monitoring. +Take a look at the configuration in `resources/external/status/docker_compose/config` and extend it to cover the newly added service or website. The configuration should probably happen in either `services-chaosknoten.yaml` or `websites.yaml`. Taking the existing configuration as a reference should give guidance on how to configure new checks. Additionally there's also the comprehensive [Gatus Documentation](https://github.com/TwiN/gatus?tab=readme-ov-file#table-of-contents). + +After you've added some checks, the configuration can be deployed using: + +```sh +ansible-playbook playbooks/deploy.yaml --inventory inventories/external --limit status +``` From 8f7990acc0240123d2d488c334ba2904060ece12 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 25 Jan 2026 21:17:28 +0100 Subject: [PATCH 076/142] docs: add ansible_pull_hosts to the desired minimum roles/groups --- docs/create-new-web-service-vm.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/create-new-web-service-vm.md b/docs/create-new-web-service-vm.md index 57a1e81c5..46ff19f13 100644 --- a/docs/create-new-web-service-vm.md +++ b/docs/create-new-web-service-vm.md @@ -42,6 +42,7 @@ As the first step, we need to make the host known to Ansible. 1. As a minimum, you'll want the following roles: - `base_config_hosts` - `infrastructure_authorized_keys_hosts` + - `ansible_pull_hosts` 2. For a typical web service based on Docker Compose, you'll also want: - `docker_compose_hosts` - `nginx_hosts` From 11779ab21d742da75e4ab13e001be29ee74ccd52 Mon Sep 17 00:00:00 2001 From: chris Date: Sun, 25 Jan 2026 21:41:20 +0100 Subject: [PATCH 077/142] grafana: get alertmanager to be more chill a bit of help to deal with alert fatigue --- .../docker_compose/alertmanager.yaml.j2 | 23 +++++-------------- .../grafana/docker_compose/compose.yaml.j2 | 4 ++-- 2 files changed, 8 insertions(+), 19 deletions(-) diff --git a/resources/chaosknoten/grafana/docker_compose/alertmanager.yaml.j2 b/resources/chaosknoten/grafana/docker_compose/alertmanager.yaml.j2 index 51aeb63ed..10fb3463e 100644 --- a/resources/chaosknoten/grafana/docker_compose/alertmanager.yaml.j2 +++ b/resources/chaosknoten/grafana/docker_compose/alertmanager.yaml.j2 @@ -7,7 +7,7 @@ route: group_by: [ "alertname", "site", "type", "hypervisor" ] group_wait: 30s group_interval: 5m - repeat_interval: 6h + repeat_interval: 26h routes: - receiver: "null" matchers: @@ -16,49 +16,38 @@ route: matchers: - org = "ccchh" - severity = "critical", - repeat_interval: 18h + repeat_interval: 26h continue: true - receiver: ntfy-ccchh matchers: - org = "ccchh" - severity =~ "info|warning", - repeat_interval: 36h + repeat_interval: 52h continue: true - receiver: ntfy-fux-critical matchers: - org = "fux" - severity = "critical", - repeat_interval: 18h + repeat_interval: 26h continue: true - receiver: email-fux-critical matchers: - org = "fux" - severity = "critical", - repeat_interval: 36h + repeat_interval: 52h continue: true - receiver: ntfy-fux matchers: - org = "fux" - severity =~ "info|warning", - repeat_interval: 36h + repeat_interval: 52h continue: true - - receiver: ccchh-infrastructure-alerts - matchers: - - org = "ccchh" - - severity =~ "info|warning|critical" templates: - "/etc/alertmanager/templates/*.tmpl" receivers: - name: "null" - - name: "ccchh-infrastructure-alerts" - telegram_configs: - - send_resolved: true - bot_token: {{ secret__alertmanager_telegram_bot_token }} - chat_id: -1002434372415 - parse_mode: HTML - message: {{ "'{{ template \"alert-message.telegram.ccchh\" . }}'" }} - name: "ntfy-ccchh-critical" webhook_configs: diff --git a/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 b/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 index 90952ee88..c2c312c24 100644 --- a/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 @@ -19,7 +19,7 @@ services: - prom_data:/prometheus alertmanager: - image: docker.io/prom/alertmanager:v0.30.0 + image: docker.io/prom/alertmanager:v0.30.1 container_name: alertmanager command: - '--config.file=/etc/alertmanager/alertmanager.yaml' @@ -59,7 +59,7 @@ services: - /dev/null:/etc/prometheus/pve.yml loki: - image: docker.io/grafana/loki:3.6.3 + image: docker.io/grafana/loki:3.6.4 container_name: loki ports: - 13100:3100 From 995dbb06e2ea547177b00566b64b4fde595456cb Mon Sep 17 00:00:00 2001 From: June Date: Sun, 4 Jan 2026 19:32:42 +0100 Subject: [PATCH 078/142] wip: alloy --- roles/alloy/tasks/main.yaml | 48 +++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 roles/alloy/tasks/main.yaml diff --git a/roles/alloy/tasks/main.yaml b/roles/alloy/tasks/main.yaml new file mode 100644 index 000000000..2bc308ac4 --- /dev/null +++ b/roles/alloy/tasks/main.yaml @@ -0,0 +1,48 @@ +# https://github.com/grafana/grafana-ansible-collection/blob/main/roles/alloy/tasks/deploy.yml#L124 +- name: ensure alloy user exists + ansible.builtin.user: + name: alloy + system: true + append: true + create_home: false + state: present + +- name: ensure the `/etc/alloy/` config directory exists + ansible.builtin.file: + path: /etc/alloy + state: directory + mode: "0770" + owner: root + group: alloy + become: true + +- name: synchronize the additional configuration files directory, if present + when: alloy__additional_configs_dir is defined and alloy__additional_configs_dir != "" + block: + - name: ensure rsync is installed + ansible.builtin.apt: + name: rsync + become: true + + - name: synchronize the additional configuration files directory, if present + ansible.posix.synchronize: + src: "{{ alloy__additional_configs_dir }}" + dest: /etc/alloy/additional + delete: true + recursive: true + use_ssh_args: true + rsync_opts: + - "--chown=root:alloy" + become: true + +- name: delete the additional configuration files directory, if not present + when: alloy__additional_configs_dir is not defined or alloy__additional_configs_dir == "" + ansible.builtin.file: + path: /etc/alloy/additional + state: absent + become: true + +- name: Setup Alloy + ansible.builtin.import_role: + name: grafana.grafana.alloy + become: true From c7d51af5b428b7b1fe065c23fbfa1d1b6bd51980 Mon Sep 17 00:00:00 2001 From: chris Date: Sun, 25 Jan 2026 20:03:13 +0100 Subject: [PATCH 079/142] rollout Alloy to replace prometheus_node_exporter With the new network we need to deploy a push based solution in order to get metrics into prometheus --- .../chaosknoten/group_vars/all.sops.yaml | 7 +- .../chaosknoten/host_vars/grafana.yaml | 42 +-------- .../chaosknoten/host_vars/ntfy.sops.yaml | 6 +- inventories/chaosknoten/host_vars/ntfy.yaml | 86 +------------------ inventories/chaosknoten/hosts.yaml | 16 ++-- playbooks/deploy.yaml | 11 +-- .../grafana/docker_compose/prometheus.yml | 35 -------- .../grafana/nginx/metrics.hamburg.ccc.de.conf | 1 - roles/alloy/defaults/main.yaml | 44 ++++++++++ roles/alloy/tasks/main.yaml | 2 + roles/prometheus_node_exporter/meta/main.yaml | 10 --- .../prometheus_node_exporter/tasks/main.yaml | 14 --- 12 files changed, 69 insertions(+), 205 deletions(-) create mode 100644 roles/alloy/defaults/main.yaml delete mode 100644 roles/prometheus_node_exporter/meta/main.yaml delete mode 100644 roles/prometheus_node_exporter/tasks/main.yaml diff --git a/inventories/chaosknoten/group_vars/all.sops.yaml b/inventories/chaosknoten/group_vars/all.sops.yaml index ebc53b75f..0c5762de2 100644 --- a/inventories/chaosknoten/group_vars/all.sops.yaml +++ b/inventories/chaosknoten/group_vars/all.sops.yaml @@ -1,4 +1,5 @@ msmtp__smtp_password: ENC[AES256_GCM,data:xcBVBTb6mfr5Ubyfga9ibKWKhrfrEEaDWD98vIbX8fl8lQ4YTovg8Ax1HTK4UQ6AkJGHq2A0D5B67KUTlp9eLw==,iv:TOp1G1LktRPj/KMCRU5CXBUsgKOqGssUvvk5oY0QnPM=,tag:SVBdDQy+fM0xeEToappP+A==,type:str] +metrics__chaos_password: ENC[AES256_GCM,data:al234VSAH7oxka8X0hTvEJKVLD6O/WCrCKfVLLvm,iv:+TmA+0hXMV4OxvK7RH2g1dIzm88Lpm3zevxSZxK23QQ=,tag:txCVr5SEW3dVHgNFInR94g==,type:str] sops: age: - recipient: age1ss82zwqkj438re78355p886r89csqrrfmkfp8lrrf8v23nza492qza4ey3 @@ -163,8 +164,8 @@ sops: SnUrSUlvMXhnY3JrbER0TkxBcGJucmsKdBDkRY5FUtOo8zQ0QtfPFGJn0O2Fg5xn mSloxLaFwdXAR9L1QfUdsW+9Vgez4s5bxMJtn8hkwqIfyJc25FEEcA== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-10-13T23:45:06Z" - mac: ENC[AES256_GCM,data:QxH4lnNyCAAEJhzbgCrq7QeLs+OAtYgwQP4oFm93NE4Fbz7/Hz2dvL/2SopOdW7nYVeb1scuG1ra+yvgzuQDhg4lcgt9eBJoBiynM3qiHBs+FtcSJoKs16I/ACAadQwClALb4E0xxwKFJI8ewMZu5BAxi5EhYbgNfnKCIbhvgWo=,iv:LRa2vX0HUBugeEAVeOqXbPsMQrfrCpyzGUGjK6+VaQc=,tag:/sfhJM8V1IYBh94ZS/TDxQ==,type:str] + lastmodified: "2026-01-25T18:06:26Z" + mac: ENC[AES256_GCM,data:plHNLOgGWwNWbakKG6X5EOxwERE3rvYO4EOAzY/sz+uM7cZBEnqU5LZwjlD8B75hgRHqpnDBF0JbHgsEwVxfJJRL1phkeMJFOapQMjZVWMz6j7eb1hOwpdktd+bpuimy4XCD1aOxOoInKpFSK33usxLfyqSxjFDM5+i6D22qBTs=,iv:/iOIfNuSIDsa/UKLP0d63tpOrYMFO3Bk1qPssY0AzuI=,tag:k+824MXD+r0lNUcuvisudw==,type:str] pgp: - created_at: "2025-10-20T19:03:07Z" enc: |- @@ -360,4 +361,4 @@ sops: -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 unencrypted_suffix: _unencrypted - version: 3.10.2 + version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/grafana.yaml b/inventories/chaosknoten/host_vars/grafana.yaml index ecc942c8c..b87a19891 100644 --- a/inventories/chaosknoten/host_vars/grafana.yaml +++ b/inventories/chaosknoten/host_vars/grafana.yaml @@ -53,16 +53,7 @@ nginx__configurations: - name: metrics.hamburg.ccc.de content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf') }}" -alloy_config: | - prometheus.remote_write "default" { - endpoint { - url = "https://metrics.hamburg.ccc.de/api/v1/write" - basic_auth { - username = "chaos" - password = "{{ secret__metrics_chaos }}" - } - } - } +alloy_config_additional: | loki.write "default" { endpoint { url = "https://loki.hamburg.ccc.de/loki/api/v1/push" @@ -98,9 +89,9 @@ alloy_config: | } rule { source_labels = ["__journal__hostname"] - target_label = "host" + target_label = "instance" regex = "([^:]+)" - replacement = "${1}.hamburg.ccc.de" + replacement = "${1}.hosts.hamburg.ccc.de" action = "replace" } } @@ -111,30 +102,3 @@ alloy_config: | format_as_json = true labels = {component = "loki.source.journal", org = "ccchh"} } - - logging { - level = "info" - } - prometheus.exporter.unix "local_system" { - enable_collectors = ["systemd"] - } - - prometheus.relabel "default" { - forward_to = [prometheus.remote_write.default.receiver] - rule { - target_label = "org" - replacement = "ccchh" - } - rule { - source_labels = ["instance"] - target_label = "host" - regex = "([^:]+)" - replacement = "${1}.hamburg.ccc.de" - action = "replace" - } - } - - prometheus.scrape "scrape_metrics" { - targets = prometheus.exporter.unix.local_system.targets - forward_to = [prometheus.relabel.default.receiver] - } diff --git a/inventories/chaosknoten/host_vars/ntfy.sops.yaml b/inventories/chaosknoten/host_vars/ntfy.sops.yaml index e860cca58..1328d6646 100644 --- a/inventories/chaosknoten/host_vars/ntfy.sops.yaml +++ b/inventories/chaosknoten/host_vars/ntfy.sops.yaml @@ -1,5 +1,3 @@ -secret__loki_chaos: ENC[AES256_GCM,data:LWFTOyER+m021ogmXYBrcr/2fUe3XuZhs5ho0KbM,iv:808LWnSUAPeclhsIgOyR6SutTvJGOu7mrGaVayo7v8M=,tag:f2WCPyUESfMiGDQ4Km5Dyw==,type:str] -secret__metrics_chaos: ENC[AES256_GCM,data:lAepzCI4pwkF8KiGYzGnC4dPASdHDn+LfbJTFSvt,iv:EUW+CGeYUqhY4G1kb2bbU16j9iLwABHfRCdn2vac5gY=,tag:IcyscB9lZuZgC04XTxDb5w==,type:str] secret__ntfy_web_push_private_key: ENC[AES256_GCM,data:YqNEYa1Ln3NFpNoIuBUN1V/WRzod5HAtYueBJYHOwyM59cCaYhQR1S9aQg==,iv:t8bEs5ZAEe6pqbbOb0mpJdfgruX1P9Jd+sbNurGqkng=,tag:Cdy5HKkvb55V6AeRt+MVHg==,type:str] ntfy: user: @@ -18,8 +16,8 @@ sops: bUhGdEFwOEVxUzVZdERReVF6cmcxeDgKDlO+jacsYgWXqjoxAIKJiB8mCHZ8U7TM sGD3oaCi9x6Uvse7hq0BaUe/LaJt2tDaqve9nm3n06V93HNcR9/cdw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-10-20T19:01:39Z" - mac: ENC[AES256_GCM,data:a87jRAGBIypZfYCILYCOM+H8KCVUBgb2/1sG05wDbPmLe9IfDT6rzlljbRFOUozq9xsqxpFLsPQx1wPVDi1lhaRT+5oE/NDgVH8aQCofA96DQd3SeB8fWn3LhYjOpmo9ZsFSemvGcXYk/SjVvoU9aN8KG4DHYCOOseGIBTa/a2Y=,iv:5Atem3ACdfdCPUp184cAf/EI9BEXQ1i719l+sIlOnUY=,tag:LWQCxrsZ3660UCcOjY4gMQ==,type:str] + lastmodified: "2026-01-25T18:41:48Z" + mac: ENC[AES256_GCM,data:2+628ZxPIto0AUhRExTB0UF/XKD7l0qz/NVncKbk+E5nZ5IRGwnhvY5DPiaDNWxskngaYhSYaQZTJTuvC1TuflCr8+IsZRYobj22mYEsrK2KWbozQvYsuooK2HdSWAkE2U5xKKodev2KqxMT+ZY0AIq8ifCo033ro6t0rnIEVQI=,iv:ncKxlhfZ+04rylNmMtOaWyonCJO4gbsuABMAJfVDDIQ=,tag:6c141UrWXNuGM5giTS7Ecw==,type:str] pgp: - created_at: "2025-10-20T19:03:04Z" enc: |- diff --git a/inventories/chaosknoten/host_vars/ntfy.yaml b/inventories/chaosknoten/host_vars/ntfy.yaml index cab4e761e..2d68bfaa0 100644 --- a/inventories/chaosknoten/host_vars/ntfy.yaml +++ b/inventories/chaosknoten/host_vars/ntfy.yaml @@ -15,90 +15,8 @@ nginx__configurations: - name: ntfy.hamburg.ccc.de content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/ntfy/nginx/ntfy.hamburg.ccc.de.conf') }}" -alloy_config: | - prometheus.remote_write "default" { - endpoint { - url = "https://metrics.hamburg.ccc.de/api/v1/write" - basic_auth { - username = "chaos" - password = "{{ secret__metrics_chaos }}" - } - } - } - loki.write "default" { - endpoint { - url = "https://loki.hamburg.ccc.de/loki/api/v1/push" - basic_auth { - username = "chaos" - password = "{{ secret__loki_chaos }}" - } - } - } - - loki.relabel "journal" { - forward_to = [] - - rule { - source_labels = ["__journal__systemd_unit"] - target_label = "systemd_unit" - } - rule { - source_labels = ["__journal__hostname"] - target_label = "instance" - } - rule { - source_labels = ["__journal__transport"] - target_label = "systemd_transport" - } - rule { - source_labels = ["__journal_syslog_identifier"] - target_label = "syslog_identifier" - } - rule { - source_labels = ["__journal_priority_keyword"] - target_label = "level" - } - rule { - source_labels = ["__journal__hostname"] - target_label = "host" - regex = "([^:]+)" - replacement = "${1}.hamburg.ccc.de" - action = "replace" - } - } - - loki.source.journal "read_journal" { - forward_to = [loki.write.default.receiver] - relabel_rules = loki.relabel.journal.rules - format_as_json = true - labels = {component = "loki.source.journal", org = "ccchh"} - } - - prometheus.exporter.unix "local_system" { - enable_collectors = ["systemd"] - } - - prometheus.relabel "default" { - forward_to = [prometheus.remote_write.default.receiver] - rule { - target_label = "org" - replacement = "ccchh" - } - rule { - source_labels = ["instance"] - target_label = "host" - regex = "([^:]+)" - replacement = "${1}.hamburg.ccc.de" - action = "replace" - } - } - - prometheus.scrape "unix_metrics" { - targets = prometheus.exporter.unix.local_system.targets - forward_to = [prometheus.relabel.default.receiver] - } - +alloy_config_additional: | prometheus.scrape "ntfy_metrics" { targets = [{"__address__" = "localhost:9586", job = "ntfy", instance = "ntfy", __scrape_interval__ = "120s"}] - forward_to = [prometheus.relabel.default.receiver] + forward_to = [prometheus.relabel.chaosknoten_common.receiver] } diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 2a95ba871..5c114c9f9 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -166,11 +166,10 @@ certbot_hosts: ntfy: sunders: spaceapiccc: -prometheus_node_exporter_hosts: +alloy_hosts: hosts: ccchoir: eh22-wiki: - tickets: keycloak: netbox: onlyoffice: @@ -178,6 +177,15 @@ prometheus_node_exporter_hosts: pretalx: wiki: zammad: + grafana: + ntfy: + tickets: + renovate: + cloud: + public-reverse-proxy: + router: + sunders: + spaceapiccc: infrastructure_authorized_keys_hosts: hosts: ccchoir: @@ -208,10 +216,6 @@ netbox_hosts: proxmox_vm_template_hosts: hosts: chaosknoten: -alloy_hosts: - hosts: - grafana: - ntfy: ansible_pull_hosts: hosts: netbox: diff --git a/playbooks/deploy.yaml b/playbooks/deploy.yaml index f416b914a..fe0cf78e7 100644 --- a/playbooks/deploy.yaml +++ b/playbooks/deploy.yaml @@ -64,11 +64,6 @@ roles: - nginx -- name: Ensure prometheus_node_exporter deployment on prometheus_node_exporter_hosts - hosts: prometheus_node_exporter_hosts - roles: - - prometheus_node_exporter - - name: Configure unattended upgrades for all non-hypervisors hosts: all:!hypervisors become: true @@ -83,10 +78,8 @@ - name: Ensure Alloy is installed and Setup on alloy_hosts hosts: alloy_hosts become: true - tasks: - - name: Setup Alloy - ansible.builtin.include_role: - name: grafana.grafana.alloy + roles: + - alloy - name: Ensure ansible_pull deployment on ansible_pull_hosts hosts: ansible_pull_hosts diff --git a/resources/chaosknoten/grafana/docker_compose/prometheus.yml b/resources/chaosknoten/grafana/docker_compose/prometheus.yml index fd59034a5..7f94ab04d 100644 --- a/resources/chaosknoten/grafana/docker_compose/prometheus.yml +++ b/resources/chaosknoten/grafana/docker_compose/prometheus.yml @@ -82,41 +82,6 @@ scrape_configs: target_label: instance - target_label: __address__ replacement: pve-exporter:9221 - - job_name: hosts - static_configs: - # Wieske Chaosknoten VMs - - labels: - org: ccchh - site: wieske - type: virtual_machine - hypervisor: chaosknoten - targets: - - netbox-intern.hamburg.ccc.de:9100 - - matrix-intern.hamburg.ccc.de:9100 - - public-web-static-intern.hamburg.ccc.de:9100 - - git-intern.hamburg.ccc.de:9100 - - forgejo-actions-runner-intern.hamburg.ccc.de:9100 - - eh22-wiki-intern.hamburg.ccc.de:9100 - - mjolnir-intern.hamburg.ccc.de:9100 - - woodpecker-intern.hamburg.ccc.de:9100 - - penpot-intern.hamburg.ccc.de:9100 - - jitsi.hamburg.ccc.de:9100 - - onlyoffice-intern.hamburg.ccc.de:9100 - - ccchoir-intern.hamburg.ccc.de:9100 - - tickets-intern.hamburg.ccc.de:9100 - - keycloak-intern.hamburg.ccc.de:9100 - - onlyoffice-intern.hamburg.ccc.de:9100 - - pad-intern.hamburg.ccc.de:9100 - - wiki-intern.hamburg.ccc.de:9100 - - zammad-intern.hamburg.ccc.de:9100 - - pretalx-intern.hamburg.ccc.de:9100 - - labels: - org: ccchh - site: wieske - type: physical_machine - targets: - - chaosknoten.hamburg.ccc.de:9100 - storage: tsdb: diff --git a/resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf b/resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf index ef2fe0798..195b99dc2 100644 --- a/resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf +++ b/resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf @@ -9,7 +9,6 @@ server { allow 2a00:14b0:4200:3380::/64; allow 2a00:14b0:f000:23::/64; #CCCHH v6 bei Wieske, geroutet über turing # Z9 - allow 2a07:c480:0:100::/56; allow 2a07:c481:1::/48; # fuxnoc allow 2a07:c481:0:1::/64; diff --git a/roles/alloy/defaults/main.yaml b/roles/alloy/defaults/main.yaml new file mode 100644 index 000000000..92bc960f0 --- /dev/null +++ b/roles/alloy/defaults/main.yaml @@ -0,0 +1,44 @@ +alloy_config_default: | + prometheus.remote_write "default" { + endpoint { + url = "https://metrics.hamburg.ccc.de/api/v1/write" + basic_auth { + username = "chaos" + password = "{{ metrics__chaos_password }}" + } + } + } + + prometheus.relabel "chaosknoten_common" { + forward_to = [prometheus.remote_write.default.receiver] + rule { + target_label = "org" + replacement = "ccchh" + } + rule { + target_label = "site" + replacement = "wieske" + } + rule { + source_labels = ["instance"] + target_label = "instance" + regex = "([^:]+)" + replacement = "${1}.hosts.hamburg.ccc.de" + action = "replace" + } + } + + logging { + level = "info" + } + + prometheus.exporter.unix "local_system" { + enable_collectors = ["systemd"] + } + + prometheus.scrape "scrape_metrics" { + targets = prometheus.exporter.unix.local_system.targets + forward_to = [prometheus.relabel.chaosknoten_common.receiver] + } + +alloy_config_additional: "" diff --git a/roles/alloy/tasks/main.yaml b/roles/alloy/tasks/main.yaml index 2bc308ac4..5e3cd64c7 100644 --- a/roles/alloy/tasks/main.yaml +++ b/roles/alloy/tasks/main.yaml @@ -45,4 +45,6 @@ - name: Setup Alloy ansible.builtin.import_role: name: grafana.grafana.alloy + vars: + alloy_config: "{{ alloy_config_default ~ alloy_config_additional }}" become: true diff --git a/roles/prometheus_node_exporter/meta/main.yaml b/roles/prometheus_node_exporter/meta/main.yaml deleted file mode 100644 index 78bb77058..000000000 --- a/roles/prometheus_node_exporter/meta/main.yaml +++ /dev/null @@ -1,10 +0,0 @@ ---- -dependencies: - - role: distribution_check - vars: - distribution_check__distribution_support_spec: - - name: Debian - major_versions: - - "11" - - "12" - - "13" diff --git a/roles/prometheus_node_exporter/tasks/main.yaml b/roles/prometheus_node_exporter/tasks/main.yaml deleted file mode 100644 index c138f18e6..000000000 --- a/roles/prometheus_node_exporter/tasks/main.yaml +++ /dev/null @@ -1,14 +0,0 @@ -- name: make sure the `prometheus-node-exporter` package is installed - ansible.builtin.apt: - name: prometheus-node-exporter - state: present - allow_change_held_packages: true - update_cache: true - become: true - -- name: make sure `prometheus-node-exporter.service` is started and ansibled - ansible.builtin.systemd: - name: prometheus-node-exporter.service - state: started - enabled: true - become: true From 5693989c384646d260ad8b37f85d45aa5d5827b8 Mon Sep 17 00:00:00 2001 From: chris Date: Sun, 25 Jan 2026 20:58:14 +0100 Subject: [PATCH 080/142] add alloy to the z9 hosts and some cleanup --- .sops.yaml | 4 + inventories/chaosknoten/group_vars/all.yaml | 43 +++++ inventories/z9/group_vars/all.sops.yaml | 200 ++++++++++++++++++++ inventories/z9/group_vars/all.yaml | 43 +++++ inventories/z9/hosts.yaml | 6 + roles/alloy/defaults/main.yaml | 12 +- 6 files changed, 302 insertions(+), 6 deletions(-) create mode 100644 inventories/z9/group_vars/all.sops.yaml create mode 100644 inventories/z9/group_vars/all.yaml diff --git a/.sops.yaml b/.sops.yaml index bb83e3942..0b9c24592 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -51,6 +51,10 @@ creation_rules: *admin_gpg_keys age: *host_external_age_keys + - path_regex: inventories/z9/group_vars/all.* + key_groups: + - pgp: + *admin_gpg_keys ## host vars # chaosknoten hosts - path_regex: inventories/chaosknoten/host_vars/cloud.* diff --git a/inventories/chaosknoten/group_vars/all.yaml b/inventories/chaosknoten/group_vars/all.yaml index 60349e08a..76147d88c 100644 --- a/inventories/chaosknoten/group_vars/all.yaml +++ b/inventories/chaosknoten/group_vars/all.yaml @@ -14,3 +14,46 @@ msmtp__smtp_port: 465 msmtp__smtp_tls_method: smtps msmtp__smtp_user: any@hosts.hamburg.ccc.de msmtp__smtp_from: "{{ inventory_hostname }}@hosts.hamburg.ccc.de" + +alloy_config_default: | + prometheus.remote_write "default" { + endpoint { + url = "https://metrics.hamburg.ccc.de/api/v1/write" + basic_auth { + username = "chaos" + password = "{{ metrics__chaos_password }}" + } + } + } + + prometheus.relabel "chaosknoten_common" { + forward_to = [prometheus.remote_write.default.receiver] + rule { + target_label = "org" + replacement = "ccchh" + } + rule { + target_label = "site" + replacement = "wieske" + } + rule { + source_labels = ["instance"] + target_label = "instance" + regex = "([^:]+)" + replacement = "${1}.hosts.hamburg.ccc.de" + action = "replace" + } + } + + logging { + level = "info" + } + + prometheus.exporter.unix "local_system" { + enable_collectors = ["systemd"] + } + + prometheus.scrape "scrape_metrics" { + targets = prometheus.exporter.unix.local_system.targets + forward_to = [prometheus.relabel.chaosknoten_common.receiver] + } diff --git a/inventories/z9/group_vars/all.sops.yaml b/inventories/z9/group_vars/all.sops.yaml new file mode 100644 index 000000000..7c25351b0 --- /dev/null +++ b/inventories/z9/group_vars/all.sops.yaml @@ -0,0 +1,200 @@ +metrics__chaos_password: ENC[AES256_GCM,data:seOU504dZ9K21+NK1MBf9isee2L2rueP6Bl0F66R,iv:ZtQ516gzJQSSgvOOAzPF9MuarXqHSLXy37/9z85KoQ8=,tag:dIal6OxPLli+7DbzhjNFsA==,type:str] +sops: + lastmodified: "2026-01-25T19:52:03Z" + mac: ENC[AES256_GCM,data:6JXc+K8fmANf22puWyllV5wVSxZSVnN+U7GM9lNhkxbUBM4AaIedIHOXz9zDaZh/nT6onrW2nhKNC00kWziaddOnBxBUCWUk7bDGea6qJMIk4GfyU0f/xX7mHpgYorF/KmQP1uvNNAryn7zeSfS8Vk27GFDPbBO3GvYlOZFUJD8=,iv:6X6uf9obhNix/qLrpiP3bw1CWM7dY+XAEdfhuTTmuVc=,tag:KJHK1Hc/uV8DOw/7txHfEw==,type:str] + pgp: + - created_at: "2026-01-25T19:51:13Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAxK/JaB2/SdtAQ/9GKyJ+6SzK5xucxIxUKPRdsxirJwd6LHuIDkVTr7JTjfi + sXQZKVtQ7ZXbbVgZKURLtsdbhayZoU/8xYCQsX4vzDeAKc4bS6X25PLxs2oBKCYB + 2oWl/jhKSAtVjtgnPnxljiEGxkDKW2sKlfjdjMj9yOYyif35AoQ8pIr2Tg4U8Z9C + ofaWBejvqxgaIShXe4jio3SIiOLYwTnaYmkoSY3QEA3RjckzNmqRE4aX+csB27cI + Vt8aGrcNzM8gCfi8IM1ypLHLw7Fg0OntF91RAUExG9OZJm2rGZabUixxhOCf/ttk + UOq7Eq29xFr9mTzyoZC2zmaOt7O+PIu8FDOvkvCgNv89ewn00DjT7DYSXB0AnPRD + VahAi4VAjKU2RXXbfZArdCXJpCTM2OPnXBh8Bfx/7eTnu2O8EK8OFbWuOWja8Ogr + 7z9bgsoK4Uva6F3BQcLlZppKmkLk0P8detZihvwNbS55kkkdsA9LiyYEoHpasWpG + HW4dcQOqyuKwGjLE7FsqPtlxmWD6psCK3GdHzKGQR9fbXfUyD+c0DmPgPh6roFW8 + XzvRGw6YUrP7/wtvUH4zSLQbB6kqz6nO88isPoLpClyQ/3Khj9QLljCDQB+yRBIu + p3a2HISwt4HQzuckk8W4yKIDdzf86dXVEMqUe4JTe+vW9PPobnUEXrPgRBNZYD7S + XgHOfGiWknFPa8s4KCHZK9sLB2joWAJTtQnk4cuaXoIgamiXB0qgiArc43PsjstE + N6kvVXrFVgQ9Xlrp8XDJHOsUYAy8admA8KNQF+XQ+KeHgQGKKX1RjbBFunIkaOc= + =1Rdp + -----END PGP MESSAGE----- + fp: EF643F59E008414882232C78FFA8331EEB7D6B70 + - created_at: "2026-01-25T19:51:13Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA6EyPtWBEI+2AQ//QgGTp9DYSoNWI5n0+9gMUP7asTRdRl7T+xT88k7cCO9Z + lNi86qeqiGGkqTffARBJNaq+ut/D7EKc6ivp+ewfySimM5E3ape3C6rulHybE/j8 + 3EpP4VW+5yA4Nq+CbZvzQb60oXR8LnGzVX1gePWwyQozVzRS72/hnxyecQYsc1IJ + OTQPSfclZXJO3k6fK+BrfHsjJkOpHYoLAnI/9ty9JBSuwGfzI+ur2Jimn0Y783Ou + orZNzxrRKfkIPjdFnWGY3i31nW9tnkEXLdsdOHfOu8Ahtdi2NhwReSv5hMKPXbOw + lxhL/Y1bG4ChgAAFVG5QYZ69tuzSov8XP2Wv6auVA7HC3H+689fNeO0C6GhDcVgc + LBF1nK/zJq95uxlSNy5dpTSzKqwlwRzvLOCPByXc3pLcDDW9Zp194bS/iDGfnfqe + UUPK9e0gX8TYOeQhF3K+H6JMdFO/uYbiaeVZWmvOV6jSiii0CXoGe4oVZqcfcfA3 + RScUjLx0f2w4xQwU60ZmHsmvs2PmdBsNDPeQXrqeyAfgFReDoI1RLo+k+3khoAJE + LzzNFg6bVBx3rRazWoASlHYK8i6dTHpMBompPC+kmjorZnoqnTRX4bix0atsFY7g + vt8CVfqy8YKrVIGPZnDAsrZ3ecShIQFB6OfxgSb6nqN1K3NwFcjXWH05SJOfFR3S + XgGrU49/hKqHTmAGHbWoe54qkPj+WvRkeGccEnvtum8yrPpDpmYg+wyEm3JeQf1S + gCHS/j0pJS/CnnfgoUgkYCMokGvtSoTJgIE/2XTA/BFNRg0vc1Dgk/WonG33PDU= + =ev2Q + -----END PGP MESSAGE----- + fp: F155144FC925A1BEA1F8A2C59A2A4CD59BFDC5EC + - created_at: "2026-01-25T19:51:13Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAz5uSgHG2iMJAQ//SxqxshraAR0pQf1lzhtZ5RHoNZJnaZKwic/pvJvIDUCA + 6zotOpu478rK4w8zWdX1gfjve+iu4BkaB16lZqvsV6lLq80dT3yfeil9ETFElKuA + womIEdAafq8W71eTffUZ3Klrg/WjDVjeDRRKqz8vv9pd9MQbYmDhrjRG/ySP5qgZ + +/apRAOrYnbtzgjlPAfLIGD65jvS3JRE3gbZfpzzkLB8P5M1JVOUf15FxAZ2tyhO + PZ3FYC2JbCzftp0Iiksq8sl42Fl0FzOTLFQb0GhQ60tJatFVWhG31NeXdRRuLnQU + 5bmanb2nJBroQJWM/8piG8npG8jhzRzeMTHboW5TezYAXBLxRQJct7pR9ZwDje2U + 5j9VkNyKQ+wMJ2vMiyshserEe6gjc2/E+XYDheAPrFPqwGNklb6OSemm4vWwd6GK + HNqDxA/C0du1b1vm9CTLgk7utbEpspnNQnZh32iifSfiQ3Zl7FwTxnA/2Bj0csQ/ + xrck7T2gzY39tOqXbq0QqIQA31BW4ukmxcAKn8pmJpguW0cBxDTaGNXQ4jo+8YtQ + MYYT4dR9S95MsOKWGREvMA0GMxzwbA2eMwZ7yUARCLVGD48MMiiDZcYqd03cnOO3 + hGj+vy0FbsVdknztBDeGttUYHOtjb+XO4gF4sHdpaWxdF7kVVknNUtciWa+Kw4LS + XgGqWekdWhsKZ+bPboinUPY9e5vkgLueSWrQ0aqi5Pte9lQ3pYPqT2U51fJG5G9/ + tYiofc0K7CB/qyxB7LpF5rtUla9oQQJd36xC0eO7laSapWiag2rzuIsMxR+4egA= + =a2qJ + -----END PGP MESSAGE----- + fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 + - created_at: "2026-01-25T19:51:13Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAw5vwmoEJHQ1AQ//U6R7Cb1kfojFwzVy9ky+y7Puhk7Jyog+jLabWhurkV30 + RO4EeTXMEJ1gVU9qJDeHn7Fr1HbYr9cdTf1yw5Y23p+pBZA1wRTkxHctEk1KNDRW + 8QdCmQOu8jTDc5cq0F6d6lD6vJpfjaQez5cT7dN9Eqp0jUsmQCSLmqmXvbNEv3fW + n+o/VsvtaqMTjhlPUHvhe/d0/YWvkp4xPycDVW/oYh2KE3QUV5AKUJSOLuSIFENy + f0hjnoz8xmY7eA20uXvTWPgUU9J+KCSgmy87wM/WkM3kjKWOUkijDFCsCWSEIx4W + E2iY6N7yaYBkKfQ6s+f77xg+vc7g1plheK3pdyYkYvgfeqg27QFV/3m80f0gULS4 + bNrZKNRrMD+grgjB75cj14PRHGQcaZEouE7l2uCUNbR/hFIF1M2F91HAW61mVLv6 + ZNluofRYqHf+YWUO4KtJwpfgfh0gsCF3KaeHnAA/Xy9e+7KRgWbAbsDIQr40Nqm1 + Cbv/HqjHCeS7ylw3TmYcwFoGO1XoL/toSQQ4/y0JPMCae+MGslDm2o/1X1VqAnIZ + sdhcTKY8HJWxn8uc5MFG4Mr0PhMIXirhBBQLYXdVJ/tOj9yVU+gJZe3lv64uQgDZ + Ey1KESfJu98uwrPS3Dzy2YPbT7Gh58sOfHeaDoeZAu+YzQMOQ7V260vu0XXMgSfS + XgE3PiMBjbW4eypClEK6H5iSL4SjEm+NweQNkwGaxqLSsb7LuOtSkiEmf4mdQEnI + SI14d0nNv7ki0T59Ssmi65A49SXjvLzsCBE1DgeqVD8IwKCewma0dgkNErdyG4s= + =rV/a + -----END PGP MESSAGE----- + fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 + - created_at: "2026-01-25T19:51:13Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DerEtaFuTeewSAQdAdDLPgKw0A+eoKiYGIKxOFZHYVg0V4UmuIti0XC5RJCIw + IPu2/Y45X9L40RRhH8N9lazjLeJv5Lbo08hMlo/CgshZ0BJVot8mBAiH/R2DsVRC + 0l4BL6ctQ/xivjWQBBhy/DCYVtDRv8JXIEXNJgU/+UjkSE8Auh4NASANg9GTcBBn + lukzOBGYF9nH69fAkVtZbNL5+dFoPLDPUzZTU19D15J6IJkt+gKPSzjbtWaJqIsQ + =dGU4 + -----END PGP MESSAGE----- + fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 + - created_at: "2026-01-25T19:51:13Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAxjNhCKPP69fAQ/+LQ3yEzhjYXoDkE9olsl0lVxQ9FdCbqDHFJZAIReI0jqg + WF+0GmoMuG4kFZu+ju3vCWpT5kH84SUxOFXyaXp1TCfcJ1zCUno93fVssOL/9Sma + vVPVIXpTqJqFBOWJNOe7wNjvQiDE4TxjGC/FXr+hOoLZXrf7gdNaUXxZOb+vPZih + t79eZhxALGwmwsMdZxkA8ERCmNJet1/wn7s5vUjwrDYRZL2zGf4yocSCjwGYHOCs + j+DcrYG7Cd5J+CS8rKu2Yh5KEAfMhgMxGjK0HKUVPk1cQxOgronnM1vrij30S4+9 + avNlOwAerg3RaFhXPj9UY7FGV+rZQY1CQKEWqr4AANkdDXb/LnLalwMBMcm+EDwT + zHxBhJ69QJmsZUP3Z5WQqxmyAux9+oodgehWKkY4sCR2huHuysbJNEStuI1HaTRj + ZJafiniHkFyQyTqc4wwJrRxkwJM6mVvcZdXuV7+QaEWr3FEF0t7tyEYUIRkUlJOQ + IUPDClDRLJnQGq11XT/QOlGfxET9fGoAkij1LrPqpvHxJ6IEGLMOPN4kw1yg02yO + u0HiB2wIUzKHJJ6vMR6zK3WY4MXCQISTZXpK7mILleRIIOWhw7C7gvlfuYkMT3fM + dXUQRhTblZXaeTxRuCUPqa0eGzac4UJBVoRAWXYiZWhdKxNJbyCMRQDcaOeho9/S + XgGENH9zFjI//pveCrlxx5BKDxTdqIn9R3iskbKbZRhVr+pU3IK4uCsUQlOBG3++ + zxQinHgNbqA22clcuRMZ1NeDrzDfBLndsWuSeyWaAA9qEG9XjmjCRRzPGACoDLs= + =dywj + -----END PGP MESSAGE----- + fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 + - created_at: "2026-01-25T19:51:13Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA1Hthzn+T1OoAQ/+P4h9d4LPElJbVr4L3cE+6/9mhLF6n1hre14cCTSxTe20 + HqpY7U9yE4G/1IfAE3pueOgc5FsLRPn8VnHAzy6ygt4/xXXzH6aACDiUtweqyExE + K39J9PLjczWb7XGbZc3YKoz5x0Q/93s+CdjK7piamb41bMRVbmffNtEceH8Gld9u + t8SI18F1yrRtXpK8FvzFLvA1jEt9sduPVq51bWG2LjMFaMrsm7hXt1ArUGsOoGN3 + 36E4VrVp6gp8BVa+apsUY3mHBi3hUE0h2tO4iEsi1qYr1OTn3v4Dn9oxKrYIIom2 + hHszqVSq0fnIqoKOZbyUe2AdXtnTGpQQRxCBvtIEBNB1FS/CKCe7ceXVBZujU2Kd + JD3Lg5uXgkolfyjFCPzOp292xvJ83i7QMoTuVEw14PSjux3jAa4K3wpKUvF80ja2 + ugGj3zTLAHdAV37lKO2WYZuMMJLKWKX1p9yKZqteJdiLQHH8f24dFZ2Vtoly/GKM + KzGJ1fimB6divQ8TOHVFAr1qDksk8zf1PBJ/IlWoBKv5IWwoikf42IOL/P2c/nk7 + 4pYwHrlk8y71Cgjw50K9/T/Ul0Ov6ay4FK+0vy+zbokSVczZKsrL4/Tc6s0S9ty6 + SVKm7yL+BSGgZWmDNesYoRzboBT2mSb1N45ThUaeW7AwMo3hDJPjEkaFtZN3bqzS + XgEIFYvxWH6OEIl+VZ/J5qxxmi3Cz6XVzTliCnoTFUoVxHyOxN6HX0Jn/qRqmmlN + mJX4OT1FJ3WnqOHQ5Cm4403bm2H79mGCBKYiXPQeO/bVBh0mTbeYKRr8bjsm+rc= + =lIEt + -----END PGP MESSAGE----- + fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD + - created_at: "2026-01-25T19:51:13Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA46L6MuPqfJqAQ//Ue74vm+2K7chQcfdrY5GR0rPUKNiX9MMw9zgHpdyHlXa + FfL0NQbG8Rfc/6Yf7LH1sWMGED5Yvci3z+YkTWg8Fcv1pYQGj6Kul2L0aL4tvq/a + tdIJi+Ajp92jr+5jdae+GvJZedaHZYxykyeSe4/nk1j6k4u3TiVMBczk7z9701F+ + ZFtG1SBRcqjZ/Vx36B6s+10f9ft7TWCIJfeTimBJV3fFt7r698vTQ+S1/uxo5Ik0 + kQOtYDxsigBBeE0OX2ZBDyeGhfl/PZgN7GD7bgpjnfzDi+8kMXEMu4z88tOQulhk + qj+63irEydFCsMEC22XhLaqW8bjld0VAnkXv7DfoEbMt84XN6SejjDy6aXK9C0Qd + BIyQwTvsmgbInluw8Qu+GJPLLbY9qYjjuo5BbwUeBfiVxQaBYcm5lmPSKM0lq+Uq + fUYowpMS417L5kkp2yE/NmKOzi2ZuiFWMCpvPIvKea9zJxvEtIjohwtM86b4LH+j + 7yie9gWu0bhBw9keKtIbRmgbsilp8E5OUHXgOT0sNWTLenQDsWQ9dmgvtpeEb9ax + 6mw1QUpFz4CcHhuQixoI+q4y0SXcWxyN0U78U8igaELUtwpaRR7yf4VUJOEid+m1 + Rzu5jLCuhlLmmW03W6Y/Vl+n0QOyEl0uPCRiRgYeUzKiYw6NRYHPezbJnmNAeKnS + XgFCdzLc5Jl6OqJfy4V0yJucGq72oKK1wdJi74PqTNs44CaeEW8tDhxVWm367e5b + Ve88LJyDhOrMi57aKcAJ12HoL8pI5hambJ0qSs9RKpnQIJH7U60MBBTCBHN3H4k= + =az/q + -----END PGP MESSAGE----- + fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A + - created_at: "2026-01-25T19:51:13Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DQrf1tCqiJxoSAQdA04/sIHLMEFJO8wCB5+N5QWPzwyefW49JuNr/O2A+tTcw + Rm/CybmXPnSCx7p8QLruOG0tz8kM+YoSthSWlC9/B6TZgKLyrMOvx1U/fSNjKC4Q + 0l4BDFhVCnXKTQmfZtj5Qpwuj3H5fZ7QzKUQz542pvqN/fJVnc0Q4rQapKcU4AOx + JTdXpu6gP3FRGviA342GHJU0gq220vSzPu889dsdmtgNfAEQWPLVKKwjigDQN+SV + =2Eki + -----END PGP MESSAGE----- + fp: B71138A6A8964A3C3B8899857B4F70C356765BAB + - created_at: "2026-01-25T19:51:13Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DzAGzViGx4qcSAQdAxLZsKVzF30df0Zk7Eg9u7fLJzApid00aEcZVxHQnZ0kw + 5SDeSOzzTue71lKcCyunbO1/e20jMrNVvYKQp0kKkNHpTWgjN0hW3vZt6zeLcrSo + 0lgBTOoJykoj24Y9WvIaQbae2K6M35drO2c7nhVmTzibUe7XEJ3C+vbUySdSTd+0 + WL1IjqZUGSUL4SUIW6kW0WFdSJ01O6vbXhw1gw7KwKMfBHgIUAzpENTW + =S45t + -----END PGP MESSAGE----- + fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD + - created_at: "2026-01-25T19:51:13Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA2pVdGTIrZI+AQ/8Dd/YnYUP9OA6qxJcerf9mCkQkC5PLehCPAOLOn4sNV5x + DnpdfAvgej1Vuy0CHK8//PAiEC7idLN+ictIdQgy0RaObp50tca44U2ssQOkmxcd + j5WpKKunHsKomksr7bRpwm/vtN4LoldQc7g1qaBlsaJE7iEOrB8I3n3fFhWD6xBG + TUzRe8r/M2/c25Agky9caILYvjm/etCsf/gZq3RwVvV48912JNqb+7o04vpj3MbO + AOsiEBCTNSZqN5XuRi/jCpQNe0p18M9irYkFWVe2be6Cb4wE2cdg904rC3K+v0QA + nwD6/bXWGI7WAF6nhvuiAS0vxmbvOePNI3KZ1CdEDeScqnAWUdkFuuAwmw0K7tHt + UJe/SlML6strnnjOGR6p3eeIjoDKtGBiqEjXYyEcXPVi8vFSd7muGcjLieyJUmfH + FVGA7bF+a6c4iTFSM2GNpANFV0qzZ/wa4aj9MqzOATTglQnr2LZJP7chnzoLyzx6 + 7cjTcWHsb3E+D7X37yF+mZAT6yvOoxaQNqTY6u1ZoY9NrGdJ1reudAlzg6k10cpf + O4Zww2Jjz5yEhvS9cTh8+bKOJYgKnbg/LLty/ade+rio4E0jn+a6VgRCqIMbGwgx + vf9ATU8S10/Es2cT6f99EpPgV0w9QCfhAGel/sjXk/zIT8rF2SbIlXf0/GK3yaXS + XgGrocZNe2RNZd3ZjsvtU6bBsPd9tekQLjC1vE6U/WXXPKapb6aOq2eL7Qb7QFu7 + XSGN+YA/c9OwmtJLP3y5mGBowa6vWT1Uf6NweamPYJBpNG27Bt5yLlnEnaDZokw= + =9ri7 + -----END PGP MESSAGE----- + fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + unencrypted_suffix: _unencrypted + version: 3.11.0 diff --git a/inventories/z9/group_vars/all.yaml b/inventories/z9/group_vars/all.yaml new file mode 100644 index 000000000..9a312517e --- /dev/null +++ b/inventories/z9/group_vars/all.yaml @@ -0,0 +1,43 @@ +alloy_config_default: | + prometheus.remote_write "default" { + endpoint { + url = "https://metrics.hamburg.ccc.de/api/v1/write" + basic_auth { + username = "chaos" + password = "{{ metrics__chaos_password }}" + } + } + } + + prometheus.relabel "z9_common" { + forward_to = [prometheus.remote_write.default.receiver] + rule { + target_label = "org" + replacement = "ccchh" + } + rule { + target_label = "site" + replacement = "z9" + } + rule { + source_labels = ["instance"] + target_label = "instance" + regex = "([^:]+)" + replacement = "${1}.z9.ccchh.net" + action = "replace" + } + } + + logging { + level = "info" + } + + prometheus.exporter.unix "local_system" { + enable_collectors = ["systemd"] + } + + prometheus.scrape "scrape_metrics" { + targets = prometheus.exporter.unix.local_system.targets + forward_to = [prometheus.relabel.z9_common.receiver] + } + diff --git a/inventories/z9/hosts.yaml b/inventories/z9/hosts.yaml index 9f4a69208..f88f10619 100644 --- a/inventories/z9/hosts.yaml +++ b/inventories/z9/hosts.yaml @@ -49,5 +49,11 @@ ola_hosts: proxmox_vm_template_hosts: hosts: thinkcccore0: +alloy_hosts: + hosts: + authoritative-dns: + light: + yate: + dooris: ansible_pull_hosts: hosts: diff --git a/roles/alloy/defaults/main.yaml b/roles/alloy/defaults/main.yaml index 92bc960f0..09c99ee44 100644 --- a/roles/alloy/defaults/main.yaml +++ b/roles/alloy/defaults/main.yaml @@ -4,26 +4,26 @@ alloy_config_default: | url = "https://metrics.hamburg.ccc.de/api/v1/write" basic_auth { username = "chaos" - password = "{{ metrics__chaos_password }}" + password = "chaos_password" } } } - prometheus.relabel "chaosknoten_common" { + prometheus.relabel "common" { forward_to = [prometheus.remote_write.default.receiver] rule { target_label = "org" - replacement = "ccchh" + replacement = "noorg" } rule { target_label = "site" - replacement = "wieske" + replacement = "nosite" } rule { source_labels = ["instance"] target_label = "instance" regex = "([^:]+)" - replacement = "${1}.hosts.hamburg.ccc.de" + replacement = "${1}.hosts.test" action = "replace" } } @@ -38,7 +38,7 @@ alloy_config_default: | prometheus.scrape "scrape_metrics" { targets = prometheus.exporter.unix.local_system.targets - forward_to = [prometheus.relabel.chaosknoten_common.receiver] + forward_to = [prometheus.relabel.common.receiver] } alloy_config_additional: "" From 6a92aa68c1846d4c3713a2f81487894ba57fcfc1 Mon Sep 17 00:00:00 2001 From: chris Date: Sun, 25 Jan 2026 22:36:30 +0100 Subject: [PATCH 081/142] light: fix tls cert expiring and not renewing --- inventories/z9/host_vars/light.yaml | 14 ++++++++++- inventories/z9/hosts.yaml | 1 + resources/z9/light/nginx/http_handler.conf | 10 +++----- resources/z9/light/nginx/light.conf | 29 ++++++++++++---------- 4 files changed, 34 insertions(+), 20 deletions(-) diff --git a/inventories/z9/host_vars/light.yaml b/inventories/z9/host_vars/light.yaml index 0336d2201..0c7e11d77 100644 --- a/inventories/z9/host_vars/light.yaml +++ b/inventories/z9/host_vars/light.yaml @@ -50,10 +50,22 @@ ola__configs: content: "{{ lookup('ansible.builtin.file', 'resources/z9/light/ola/ola-usbdmx.conf') }}" - name: ola-usbserial content: "{{ lookup('ansible.builtin.file', 'resources/z9/light/ola/ola-usbserial.conf') }}" + nginx__version_spec: "" nginx__deploy_redirect_conf: false nginx__configurations: - name: light content: "{{ lookup('ansible.builtin.file', 'resources/z9/light/nginx/light.conf') }}" - name: http_handler - content: "{{ lookup('ansible.builtin.file', 'resources/z9/light/nginx/http_handler.conf') }}" + content: "{{ lookup('ansible.builtin.file', 'resources/z9/dooris/nginx/http_handler.conf') }}" + +certbot__version_spec: "" +certbot__acme_account_email_address: le-admin@hamburg.ccc.de +certbot__certificate_domains: + - "light-werkstatt.ccchh.net" + - "light.ccchh.net" + - "light.z9.ccchh.net" +certbot__new_cert_commands: + - "systemctl reload nginx.service" + + diff --git a/inventories/z9/hosts.yaml b/inventories/z9/hosts.yaml index f88f10619..319f81756 100644 --- a/inventories/z9/hosts.yaml +++ b/inventories/z9/hosts.yaml @@ -20,6 +20,7 @@ all: certbot_hosts: hosts: dooris: + light: docker_compose_hosts: hosts: dooris: diff --git a/resources/z9/light/nginx/http_handler.conf b/resources/z9/light/nginx/http_handler.conf index d9b336c5c..8572664d6 100644 --- a/resources/z9/light/nginx/http_handler.conf +++ b/resources/z9/light/nginx/http_handler.conf @@ -1,14 +1,12 @@ server { listen 80 default_server; listen [::]:80 default_server; - server_name _; - - location /.well-known/acme-challenge/ { - autoindex on; - root /webroot-for-acme-challenge; - } location / { return 301 https://$host$request_uri; } + + location /.well-known/acme-challenge/ { + proxy_pass http://127.0.0.1:31820/.well-known/acme-challenge/; + } } diff --git a/resources/z9/light/nginx/light.conf b/resources/z9/light/nginx/light.conf index 9f70cf870..6217e0458 100644 --- a/resources/z9/light/nginx/light.conf +++ b/resources/z9/light/nginx/light.conf @@ -1,15 +1,16 @@ # partly generated 2022-01-08, Mozilla Guideline v5.6, nginx 1.17.7, OpenSSL 1.1.1k, intermediate configuration # https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 server { - listen 443 ssl http2; - listen [::]:443 ssl http2; + listen 443 ssl; + listen [::]:443 ssl; + http2 on; server_name light-werkstatt.ccchh.net; - ssl_certificate /etc/letsencrypt/live/light.ccchh.net/fullchain.pem; - ssl_certificate_key /etc/letsencrypt/live/light.ccchh.net/privkey.pem; + ssl_certificate /etc/letsencrypt/live/light-werkstatt.ccchh.net/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/light-werkstatt.ccchh.net/privkey.pem; # verify chain of trust of OCSP response using Root CA and Intermediate certs - ssl_trusted_certificate /etc/letsencrypt/live/light.ccchh.net/chain.pem; + ssl_trusted_certificate /etc/letsencrypt/live/light-werkstatt.ccchh.net/chain.pem; # replace with the IP address of your resolver resolver 10.31.208.1; @@ -25,15 +26,16 @@ server { } server { - listen 443 ssl http2; - listen [::]:443 ssl http2; + listen 443 ssl; + listen [::]:443 ssl; + http2 on; - server_name light.z9.ccchh.net ; + server_name light.z9.ccchh.net; - ssl_certificate /etc/letsencrypt/live/light.ccchh.net/fullchain.pem; - ssl_certificate_key /etc/letsencrypt/live/light.ccchh.net/privkey.pem; + ssl_certificate /etc/letsencrypt/live/light.z9.ccchh.net/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/light.z9.ccchh.net/privkey.pem; # verify chain of trust of OCSP response using Root CA and Intermediate certs - ssl_trusted_certificate /etc/letsencrypt/live/light.ccchh.net/chain.pem; + ssl_trusted_certificate /etc/letsencrypt/live/light.z9.ccchh.net/chain.pem; location / { return 307 https://light.ccchh.net$request_uri; @@ -41,8 +43,9 @@ server { } server { - listen 443 ssl http2; - listen [::]:443 ssl http2; + listen 443 ssl; + listen [::]:443 ssl; + http2 on; server_name light.ccchh.net; From 2cd0811b2965a62c9b073ac03e66edc5e30cfd83 Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sun, 25 Jan 2026 22:21:25 +0100 Subject: [PATCH 082/142] Fix warning --- roles/nginx/tasks/main/02_repo_setup.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/roles/nginx/tasks/main/02_repo_setup.yaml b/roles/nginx/tasks/main/02_repo_setup.yaml index eaaec30ee..b4720c141 100644 --- a/roles/nginx/tasks/main/02_repo_setup.yaml +++ b/roles/nginx/tasks/main/02_repo_setup.yaml @@ -15,13 +15,13 @@ - name: Ensure NGINX APT repository is added ansible.builtin.apt_repository: - repo: "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/nginx.asc] https://nginx.org/packages/debian/ {{ ansible_distribution_release }} nginx" + repo: "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/nginx.asc] https://nginx.org/packages/debian/ {{ ansible_facts['distribution_release'] }} nginx" state: present become: true - name: Ensure NGINX APT source repository is added ansible.builtin.apt_repository: - repo: "deb-src [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/nginx.asc] https://nginx.org/packages/debian/ {{ ansible_distribution_release }} nginx" + repo: "deb-src [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/nginx.asc] https://nginx.org/packages/debian/ {{ ansible_facts['distribution_release'] }} nginx" state: present become: true From c33ae36af326b2649f74424ad32364b7d9e7ea9c Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sun, 25 Jan 2026 22:21:45 +0100 Subject: [PATCH 083/142] Enable IPv6 by default --- roles/docker/files/daemon.json | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/roles/docker/files/daemon.json b/roles/docker/files/daemon.json index 49d410835..d55e4cb4a 100644 --- a/roles/docker/files/daemon.json +++ b/roles/docker/files/daemon.json @@ -2,5 +2,13 @@ "log-driver": "journald", "log-opts": { "tag": "{{.Name}}" + }, + "ipv6": true, + "ip6tables": true, + "fixed-cidr-v6": "fd00:1::/64", + "default-network-opts": { + "bridge": { + "com.docker.network.enable_ipv6":"true" + } } } From 0f3cd2c70ab2a937327280adec5194402247aa2b Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sun, 25 Jan 2026 22:40:22 +0100 Subject: [PATCH 084/142] amcedns to enable Let's Encrypt DNS-01 challenges --- .sops.yaml | 7 + .../chaosknoten/host_vars/acmedns.sops.yaml | 214 ++++++++++++++++++ .../chaosknoten/host_vars/acmedns.yaml | 23 ++ inventories/chaosknoten/hosts.yaml | 10 +- .../acmedns/docker_compose/acmedns.cfg.j2 | 27 +++ .../acmedns/docker_compose/compose.yaml.j2 | 22 ++ .../acmedns/docker_compose/index.html.j2 | 63 ++++++ .../docker_compose/oauth2-proxy.cfg.j2 | 13 ++ .../acmedns/nginx/acmedns.hamburg.ccc.de.conf | 83 +++++++ .../nginx/acme_challenge.conf | 1 + .../public-reverse-proxy/nginx/nginx.conf | 1 + 11 files changed, 463 insertions(+), 1 deletion(-) create mode 100644 inventories/chaosknoten/host_vars/acmedns.sops.yaml create mode 100644 inventories/chaosknoten/host_vars/acmedns.yaml create mode 100644 resources/chaosknoten/acmedns/docker_compose/acmedns.cfg.j2 create mode 100644 resources/chaosknoten/acmedns/docker_compose/compose.yaml.j2 create mode 100644 resources/chaosknoten/acmedns/docker_compose/index.html.j2 create mode 100644 resources/chaosknoten/acmedns/docker_compose/oauth2-proxy.cfg.j2 create mode 100644 resources/chaosknoten/acmedns/nginx/acmedns.hamburg.ccc.de.conf diff --git a/.sops.yaml b/.sops.yaml index 0b9c24592..60da9eb92 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -34,6 +34,7 @@ keys: - &host_zammad_ansible_pull_age_key age1sv7uhpnk9d3u3je9zzvlux0kd83f627aclpamnz2h3ksg599838qjgrvqs - &host_ntfy_ansible_pull_age_key age1dkecypmfuj0tcm2cz8vnvq5drpu2ddhgnfkzxvscs7m4e79gpseqyhr9pg - &host_spaceapiccc_ansible_pull_age_key age1mdtnk78aeqnwqadjqje5pfha04wu92d3ecchyqajjmy434kwq98qksq2wa + - &host_acmedns_ansible_pull_age_key age16pxqxdj25xz6w200sf8duc62vyk0xkhzc7y63nyhg29sm077vp8qy4sywv external: age: &host_external_age_keys - &host_status_ansible_pull_age_key age1yl9ts8k6ceymaxjs72r5puetes5mtuzxuger7qgme9qkagfrm9hqzxx9qr @@ -57,6 +58,12 @@ creation_rules: *admin_gpg_keys ## host vars # chaosknoten hosts + - path_regex: inventories/chaosknoten/host_vars/acmedns.* + key_groups: + - pgp: + *admin_gpg_keys + age: + - *host_acmedns_ansible_pull_age_key - path_regex: inventories/chaosknoten/host_vars/cloud.* key_groups: - pgp: diff --git a/inventories/chaosknoten/host_vars/acmedns.sops.yaml b/inventories/chaosknoten/host_vars/acmedns.sops.yaml new file mode 100644 index 000000000..2e728ca5f --- /dev/null +++ b/inventories/chaosknoten/host_vars/acmedns.sops.yaml @@ -0,0 +1,214 @@ +ansible_pull__age_private_key: ENC[AES256_GCM,data:R0FZVQXrUgqW04VltXpYhEuI8Q8i0gE4K1EI05NTZyTO+9QOynMVzfLOzOOT1Yh+oQNLsE0MFELX8eo3EFKyXIrkE/wr2ECgFqY=,iv:m4N6t03tklKRaRZ9eVl2vv9T8WUy6AiPQDNuyU0UEtI=,tag:XJMnT5GZthv9RPQFZTWZaA==,type:str] +secret__oidc_client_secret: ENC[AES256_GCM,data:UHbIuftvyPHxtHGRvH+ydMetiCRu3z3JL+zFzLwVaSQ=,iv:1/KKB9IHZEWgEULoab1aVwbPIW7mxfRK7NABiSP2yIQ=,tag:8g3ej7ZJwAuPk9eGdPGyog==,type:str] +secret__oidc_cookie_secret: ENC[AES256_GCM,data:epKralmaga5W0TK0njjTBP0GIlkUK2ogKEbWQ/zlIhQ=,iv:rDBiSE+DPkX2I2i2fJQ/SrkltlCnPOEyeMfud2xXbFA=,tag:SOGIJHiaKq1t+Dg0NJGnxA==,type:str] +sops: + age: + - recipient: age16pxqxdj25xz6w200sf8duc62vyk0xkhzc7y63nyhg29sm077vp8qy4sywv + enc: | + -----BEGIN AGE ENCRYPTED FILE----- + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA5SDJ0NHZkK3hvUSt2K2hV + TWNKUkFlUFVkaEFlM1lDVTdnZU5EeURiOURzCnQzcWE2RnpiZ3BmRzIwbFRDdkRr + VmcreVJvdTl2Z3lBVFJTNmNLZWdyMWcKLS0tIEkwcXAwY0NoNmhCZm9JUDMyRjVC + bUM2WC9QeWFrdm43a2N1eStEOFFXVGcKCCqwLQ67aEEjTAyXXabZ2AoBag/QY4HW + WwgmI8KNYpC0YXzDJ3fUUL6g4oiSqMxTGvQ+0oABOk+XFnVx+++aoQ== + -----END AGE ENCRYPTED FILE----- + lastmodified: "2026-01-25T16:16:15Z" + mac: ENC[AES256_GCM,data:dBBAJIXeVUXXPXB8Eq4gH5F/0jTpvb79hdu4KD9gV5RL36Tr3iU92SKAZdMcw3/+8zq5L32YWWpYR5HFVPXaSdgls3wtWdrz/1j/C/zRxup+Y8DSOdiebCtz1lJJvglQMZNznRvo7N58lTdF/XqJA4tY51xZZi/krsJXDxtlTgA=,iv:yhwXbXu1MKl4sSYaCKPVUK9aedmIMnt/rzXTcGqmqpk=,tag:hZX6YZrzkrr1mPe6FOs7Xw==,type:str] + pgp: + - created_at: "2026-01-25T14:20:25Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAxK/JaB2/SdtARAAi+qxfJ++qxSRxZLZiJ6njtlaOvrmE3uDCxbBwK5/lc7K + rt1liJ3Ue1hR1Bt6ozbH72shd5EOQzDuwQiRLZSR/7q6dcM0wdGRrfXuNvsRbQFf + Mb1D5L5Md1zOH4HuUx38+GGoB1CchpQwdZpjzcU2+MI5O5YIw3DDcKOAAMa+Nfpy + m0aezDSM6zDYYrYKjZUrMCXZFn0cnWAosod1ZJDz+rNMfFaVCPUlcUO4/p8cPzvr + rz+B5MV6Nyft3FUpHntFAgGjwlt31ZANZoWeJxJ5/zFlmieXMihjC4x1QPBs42E2 + den7NPprSZX1ynGdImaZfTHwuwP1bpLrVFegG1EPrMIUwjRbSZDdmWxaR0uvajgM + GcbJLRFdvOcc7g7NWh2n4AwjpjcPN0cNrAit5/S0PG7JYdZFi4abfxTur12p9BPk + xJacN4ZVnT5qRRnqinPDCCiR4MLg/L9fxG6Dap6xboBTnHS5GksuLiDFMjsSAVh7 + /63SOn6/Po1BUiiZPRHkvlm1uhkP7k5iDT/cP+gV1QDjdrXbD27D3c2eJveBaX03 + oLhXi+2/tmitsRw5vp+jTwHP3RDC9ZsORdEoshaGJ7Axbmai1wmUAabaz60vbTzV + W5KHaEAdC97YsUFUn4ZgqORJ5MlPRUGUGGmlYJq6peihLYx/wdCLw9DywhZAYiTU + aAEJAhACPP4YiVUAbMaXB3q7AJWnoF20oJVBcGD7nvAVIaJJL0zuYe3lsujo2O2L + wqzIw80YE0tSaHx9GWJorF3vQQ1/jxrgiZofZNrsrQ5mzVADGO5+JLuU1THyDWXV + PPvkTEc7AdD6 + =GWYV + -----END PGP MESSAGE----- + fp: EF643F59E008414882232C78FFA8331EEB7D6B70 + - created_at: "2026-01-25T14:20:25Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA6EyPtWBEI+2AQ/+KKOoBqMu5MXGmEM70WGKs7qGiqcJ4jizWaf2BjO8JtcU + DUJ31xy+KOnZh4pNP3bYptBtv/FehKHfaC1HB+sXBqT7hhAT5k2WyNo6Y1EdsGeG + HuccJ8rEMxwRSp3rdpca/53mtFzYHFHDT2nOEc5wkl0KqPITIJAiaGVVeS/ANy6X + qijabdecK8Ekb0Ev7OHwxFQT92DdtN7xdQns4bUoxSy9j/7SDUII7btG3alhlH2Z + XF+aZ4Fo+P/O8yavyTuwm6GlKWaWtGn9xRhNXvMkpBXIa4rwHC0re3DJNlMqN7EV + gW2sxnAxBShNU/ZtpqaQ2ku8L7FPB4Y8hhbk08PVlqz6F1xFm9x5PEriuaIPd1pp + 0TQtekvntBWiRAQ8QPmrfg96BaLqvL+Hffb3PlIRvnXHmaJY/5Ci0HGgoUjodKIT + 0tZzP0xcElbm3Mf5z/uyRzCwpx7oLn+q9xiJ2yoYwn4IkMWd2VaJZJlVcKH1RRXS + A4OUERkDSV3Fz6VjnI0VQ/hpfLDLCaQp8TzUOtNy4MqzsB0fQbDWnPR1KFrmNmSv + SSkS04tSt9CMNDFllrwQg6fbaZMmS97JeXb723mfUrPa0o3MeTxa9EuB/NQvWYuS + iBqC+NxIAvUw/IJtKg3unA9ysigCDUTbi6P7F69NMJM9qHet7PSLgqsM9RPdPlLS + XgH+T9DivFMWNnGvAS+wMckvKcTtskHWnQMCYdx62VsXzS/LU3iWq+OBz/xf8yhD + 2vS25oi54fQKz6diOrq/TgO0Cx2/1LXqOYL5m/6+Qvv7wxHHZHeLcdwCRVceLZs= + =5SxJ + -----END PGP MESSAGE----- + fp: F155144FC925A1BEA1F8A2C59A2A4CD59BFDC5EC + - created_at: "2026-01-25T14:20:25Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAz5uSgHG2iMJARAArv3KHUknyw89o/HA+T9vv1orrq0uztAOtOYLXIxF0mPL + S+Yrqs8uT0UmIJ/vdNZpf6HYw7Cmk4XErSsT4l15/5JbGfvqbc1ECdoz6j6kNfID + eHP3iJkySKbxSqflZ/3Hs8UXV65RU4F1HHK2SsQVvb0FCl03KNqkNAMicqiYZyzH + CAKOje7fnCHQ2oClUXakwXDQMnQwboXmhC26ghTvCYHIcb/VD8z91TSjxNitA1nG + 7Ky1VvBWTuC0qcfaxkrkkwDPcxdfA2BXyxwm7b/w2IwmQX1cce25MCgIhMCFuf0C + rvw8GgfJEQ/qI3Rk1R87cpyRte4itrl1cCJI1UgS088+eHhmeS8XOZL860Eiqho4 + tQJLUCr0P+LSBgOxj6/hnzY56bpPxa1NjRjqCGh+WF9XzeM8vY1MkzIjqHXxq9bD + 9yGnFujzTcFbpEzdigPfAt6VgMe3jAEWqnr9fTK/f4qKWdXfycEHAJgL9UqHCtR0 + DMy2+ZsHy5Hn9S5hmXLWpKo579FEWMLeCRA2DZvCHKIWUPhv3O4BAGovh8px9wRR + V7HeNK0efhiPm80alIQUGn+JEyNOaBrjAQmS0+ELF1S1AaHzXoLNrxfBCQJJCHd6 + BvZIC6mVWF9DSeD+s/twk6qGNwAl17OAi3fyahunefODNqMcW73RI6x0BhkBfvnS + XgGEHYtdIiwWW+nCWBCrlXHrZ2AqgFKqNInB8lR5t7GtSjVxF6blysWXyv4JtegX + A3gMULNrOAZiPMe5Q1DDMNJ34jEnveojMIAOb/j+w7bvcgh7wbrUIUhNQSDgoaY= + =H3mo + -----END PGP MESSAGE----- + fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 + - created_at: "2026-01-25T14:20:25Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAw5vwmoEJHQ1ARAAqbv66yl/dyRf3f1ejNWsZxwD5oo99rHvbfWDCjTEFpzo + QUHgi7h+uF3GfRqkbE8YK7oFmTdxDS7DEkiQHw3jbJwI2+K1umubwq5sL1IMhSyG + SHZL+3r4ytBj6kuraXoTGqBFjNNht+3rRUEvgK8eXAixp8aHbx2LAVzjhxGTa9WY + yT9H4XJgEac5ODiyhyu3wxzZFmcr9VVNpja7C3iJ5PymjKPnzMFHzdhYflVG4ptP + lscRsl5TakEL7p4wsjLszeXTSq38ueaH3Bhvts3Kl72BU2rICDzlBOzGszq3gI2c + o97Vydku1MBsIwbUdKAOdhjA4BFyPAg1z1VkeEOrH1ThaZ0cfalN6TxBfCeKftSv + VAn9ErK6cRjM5peyJPSHUjpXZEcomtZonhAIBUfDeFW3Sk4lE7+SnIvJkLtrvSZy + QDgbA4dE19d8MUL0uu+fyp85+OkXI+e1QOOoZX+7/Mco3wKbCbP5T21T/+SLsH0N + oNrQpQlDch5YB+vLISUE7+buFdlMpIlcHAnL9scjgIdU0Z/X75p/5t7g99D/0nc/ + WGu4l2n9fbrvimnqc6wWzBHgQZVcPKr5tMB6jVQu4WCdHX9VkI+Ru2IfCFsQ09TD + RQMybPT3tTdYODVCeoE3NmilqE+igEzFYRDwFdKjR2eLnuli5mI7GlXrboPGjWPS + XgEpnUxHg7oik0vO8YsyRldQ2Vyw1vIskRq9cdUY0Ix3u0gyqUF56aWhA+4fhr3H + Q8RsT8OXXswSozzkw3AvKi3VaGjwDr1Wasq6YVRtV5pjS0Rx/ILo85grKi5vgpk= + =bY3Q + -----END PGP MESSAGE----- + fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 + - created_at: "2026-01-25T14:20:25Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DerEtaFuTeewSAQdAh8vUqXwXAq615cIswD1e2FbDgcFp4pDKWP4Of9bDRWYw + 5UMSvrCgWei0lytGCaApC6J+Ppd5o9D34fux8X0/ztoRopIV1RlrcepPr9jo3ROk + 0l4B4T+mFz+FNrO79ldBuysOEo6qX7kSfJ63cpy48nDNVi0pTDr87OiJTQQD3gfx + wQdkqjYs204YvFP8Zp/+Ow+52z0W2ecLwgByVxsiusf8JLlYQMHOL9QisPxWMErr + =C2Ii + -----END PGP MESSAGE----- + fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 + - created_at: "2026-01-25T14:20:25Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAxjNhCKPP69fAQ//YH0pZvxXkXYi9tRWPSVllAsKgwzZsKkXS2LrfysCvnNS + LmcLrWNV8upH8g6ubHwwq1Q6WcpaoraIGB2Pw7OPKvynqqhMamk6jAzuYF1hMsd/ + efGlsIF/wE/MLo0AizDZ5H/k6g/BfdSm3VFvAYbdHObQld/+uEMdotBrUjtXJlA/ + lare1GFxSt+P9J+h5U0kf8VFWbgzf7SkViWBvEpyUaBa0VLgyOc59e9BZzWX8h2R + FjNX40MkZHxdbqBx3Bw8MZmQz+Q1O8w7uNcf6YZxl7+tYka99DSoK2T6YxTqqqrt + FtqDAUAS+yweg4hP7CwUK05VzmH/y6S4brVJz73NzahVNUBRpPXJUWs8QsR96xx/ + hUMRGOrfd0qJ/jv2P+oMJipGsWZ5b6rkj/LX9ZAyGW7TgWbelr4zwM2C/n5xDkKf + LSQFH1Nx9QG0Aq6JT6staq+xiw/w1ipn0IDL18YPvX5kkO3KNUZk1F7zF6rbXRXa + LQIY+lhDnslkOMHmUIvqPSFWDQT/a/ttg0jVazz9IHnCz/+ShCh8nwiXXa6swlGC + XFzJS0Lyz55JfRcEN2h4lc6U7sE7MN9WEo8DWNv2UJwIZtu5dHBI9PjFSAxm73KJ + FSQDFxqlR7a7BXKw+KfvHUzWcRInWLE3bMQlg9ECJX1sQf2Bu8/YxU9bFT2fzfLS + XgHsHSJqqcZ3gwwUPNeQMadRylccXoPOCns3rf3W+7zKRBb8poRpj0hK2J2eIkGG + M5kRRudGy07hLV2wQGitucekIFUStxumRSQqpcUhk+RKTOyTMIqT4o6ykVBgke0= + =/EHL + -----END PGP MESSAGE----- + fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 + - created_at: "2026-01-25T14:20:25Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA1Hthzn+T1OoAQ/+IxC99h9NXy1lKs8K3O6zNPE4vvoUdlHyU7MngSUe7FID + cfVoJmqumGJ2VL052PyGNuJl4wwI0Bk4GJ1B17sDiROM21BgV2xJN44I8DzU/s2i + 1P/WOcpofsng7xBPib5vETo2ypfiNzurNwKidID6rc8k3TL2Eq3U9gPajdgaHWTx + jCBEiBs4B2H0Jv0teH7NK7VY21v/GQ6wCATUdFugjOocWT/Up9SbIKgvzXgxmoB7 + glmOZGtqMsorMw7Rr9fy5qdL6HK50dYbzQ8IppZFG7PrFLyLsp//S7fReFbtp8oD + yCBbhOfywLuhyWmLu78F32l5upv4Q/RPfsOEQVRd13+4XeYIYqbVlBRI4c38iA8k + sKgN/l5mH4FPmFWhRfeMOQn51tTDiq/n8G86EJETJJxC2kAhfLXi5YLECH693Vzw + Mad81jxssJP5pTTUDBzog6oMNyCvs9paRgb0O4Bt0Zpox+BFdQcTNJahj9wDyfZV + TjV6lUtuQ7QvHDYyujxhkJWUOyd2Urfk9Ku8A/xeCGwLRJS9BKYgwvatc49zL5zZ + 3GZ59gBGERbBCBPoFZgpVh73ZF/riAMHbgh+ZzUlFxJNY4fVvCk79bMitsihAbp8 + NAELn1kiDPjlW1SsiiIzkdq87ttJ7aVtR1vQBYWapWmU9eSkn8XZcX4PxFot68zS + XgEvZxgH4TgGrPuTYusDaopSObkq19jiEJ/A44Jiy2yvU9hXeOn8CeXHTJnwcSeQ + ey3QV0vu+gYPL26T5M8fp3DwgZYr+dtAX2jydweT9MKjgeUyZAZmIieY1gdguIw= + =WwLj + -----END PGP MESSAGE----- + fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD + - created_at: "2026-01-25T14:20:25Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA46L6MuPqfJqAQ/9FcgBwOTVqwohN7+iNCiq13Na/qcvFvFxymSo5ZhtjB/q + rMfLaSwsVAZuN9ishdip+a9tFb4oBPpwZjztvsgetoVNvLOrP/ZQag9SDy1fe8KH + DDlPFFRjTYtPdS+5ScHc8pGTLmyQzYDfieD0FCdZsNwz5PpAtUu7itvpZKtNWMXr + k/N3Mjena5iv79ngDsRlc9O/YXWsAPf8scgApwi+lVilJ7E/jTkrXxiku0knrlfl + NnNJKqh5iT2NWXB3Dgw0fQMLbAuDUOlkvrdwxnaJsIyjo8D5g/gh9rXBCJsMMFCp + 1qppPBTV2f/gZb1gKFpnlBJAiDhmBWoBhlgbmFXv0E/V7F/7bFtsHagb50nEHZlA + QH0JjRHN83eGCR9ZBUttxMh0FWV2ND3YlxnCNb43TEoCx9f5ml7L5GbGqu0+8Yrc + fHCGPW8DSUh7zTrmB0bn6R60hXcWchNcPdorPopROhGTSC4pkAKn+mt3jvEkyLsW + TGqNCEbFbMBJlhhn9w5fxT7vEX0Rt/vO4gXKIzPfcyzsgORIW1YxwtaGyRQErlqo + ITnLtowfgrlvU1hI+hwivD9kQ32kmEyYKa9J8fBx07XArYRR64+Eyaaq4lOeZbE4 + 1l0zskD5i1R8NO3yzxpIAqi+H7VPhYLwidjXT54QT8vyqrkmvksANR8UqydYUgnS + XgGuO1O1pKkiHHLcb8EydlgW61sLIZZjlkYynMRM5MjgPD5Z3ikeD6VaNSYnOw6c + gkisHXqY9EFSPfw8EHnGspyD/mvzDUz63GrylUO+wXgMKdByrsYRaj93j7vfYZ4= + =Bk3g + -----END PGP MESSAGE----- + fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A + - created_at: "2026-01-25T14:20:25Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DQrf1tCqiJxoSAQdADv1xBEY68JQ6Xo2ZT1FV2BJgeB7Yaahi9OQ/aypT0i8w + FJRRTtmWVBRtOecoG6SrHLtmYozuLyNFG8/ZFOU7jTSZL6lXr5NV6GIyNZPFTjvE + 0l4Bqjjh871cqN4Cq5CF3kDibHTyZYsvcQ0BmxSZy2v+moYqZGFPEjNiniS6JrK/ + Ch+cZvlsGIjTmP96IZfHbO3+hL+tVhO78bmixnN6SE6UDOzdmWcMkQ9DHSZp+p4j + =xd/t + -----END PGP MESSAGE----- + fp: B71138A6A8964A3C3B8899857B4F70C356765BAB + - created_at: "2026-01-25T14:20:25Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DzAGzViGx4qcSAQdASnWlOX4oItUMy2BNF+UdGfSkijvIKK1WohLp2rJmQGMw + /rpiFcCiX7rZNyn3f+eOULjCPbNtfwqG5Ji6YzGJPEaLg9J/CCYDP7eZ0M13tK9V + 0lgBjTZZwa7SYs+c49UkhUN92Jrt439mTud3Sa6hvfQTntISOUF3QsMyQO+2h0EH + zvaV7dmtiLZZ6ukp9vJG2asPcA1McYBHABUUcjlmFkQ74CYhPFU03/kb + =9oyC + -----END PGP MESSAGE----- + fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD + - created_at: "2026-01-25T14:20:25Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA2pVdGTIrZI+ARAAvugr3SudoqZm6B9o/a2bYVlR8eee3Cxtqb/SDfFKJ42J + /KIJHOpfs0iyoJzeq4GXn89RU08EHz+1/rAqIHN/cMGc/IjOOXcqKcKVBqhb68+I + OyEyxx0YAV939Jc+L9rxb4FnqV/HFJuA087jqP43NgPWySoUzWZshK57Yw/VJNxd + U5zDMAciWNVISL/ArcJFroK0n9dvRRsHHHx3/OgQ9Lnl73X5JEAleIPJVb1SDV4e + HgmBrlRFpp9e/Mu94Gp9yFd9PqziSA47lkdMwjMYHntTwbT3dqUGOJLF1D1oqC9V + +t+5FO5fP+LbnmuFQIGRGqdPpCy4S60d2EqocwBl6q6xn/DLQw1j9hGNpMl3GwBI + O7zquV2MyXJR9JqyklWoCmKldLIhpsnPtTx/AhIsMLWq2hvNfbBBNA41sMkofcvl + H2Hggi+TkpOh6bre1/uPkr8T3MLsiZIUB/1uHcgYO3FH13K2Ow9ChxmkeLsW6Afu + hbQcG7SKr0sCHAmvzbTsIRCpryORDRw4vwrsKuVVgA7neD8HtCItJ/Vk1JmV2xYZ + 96ilVPPpDs0tmQ/6dZZosoXLGi37Hs+FRgcAUuAdZ3bzb65e+CxtSVjRALG7hz9R + XPKmsD6tTgdLpau/zugxdKx3yKMCHzC+AouD+esea8GNuoeGug58IEoglLXDctbU + aAEJAhC0Js4STROmS43wGXP2v4umeLw9iF3Wp9L6o12BL3FZXi121py2ogosjAY2 + 30wzFU2KJGqS25/pnXw6r9ycgxdXeKsddR94Q4TOulO3SSEdjs7B+iOKwUkGKoBq + 9iHTzz6Gpajo + =bBZ5 + -----END PGP MESSAGE----- + fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + unencrypted_suffix: _unencrypted + version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/acmedns.yaml b/inventories/chaosknoten/host_vars/acmedns.yaml new file mode 100644 index 000000000..364aa9afe --- /dev/null +++ b/inventories/chaosknoten/host_vars/acmedns.yaml @@ -0,0 +1,23 @@ +--- +docker_compose__compose_file_content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/acmedns/docker_compose/compose.yaml.j2') }}" +docker_compose__configuration_files: + - name: acmedns.cfg + content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/acmedns/docker_compose/acmedns.cfg.j2') }}" + - name: oauth2-proxy.cfg + content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/acmedns/docker_compose/oauth2-proxy.cfg.j2') }}" + - name: html/index.html + content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/acmedns/docker_compose/index.html.j2') }}" +docker_compose__pull: missing + +certbot__version_spec: "" +certbot__acme_account_email_address: le-admin@hamburg.ccc.de +certbot__certificate_domains: + # - "spaceapi.ccc.de" # after DNS has been adjusted + - "acmedns.hamburg.ccc.de" +certbot__new_cert_commands: + - "systemctl reload nginx.service" + +nginx__version_spec: "" +nginx__configurations: + - name: acmedns.hamburg.ccc.de + content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/acmedns/nginx/acmedns.hamburg.ccc.de.conf') }}" diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index 5c114c9f9..395b154fe 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -78,11 +78,16 @@ all: ansible_host: spaceapiccc.hosts.hamburg.ccc.de ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de + acmedns: + ansible_host: acmedns.hosts.hamburg.ccc.de + ansible_user: chaos + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de hypervisors: hosts: chaosknoten: base_config_hosts: hosts: + acmedns: ccchoir: cloud: eh22-wiki: @@ -110,7 +115,8 @@ nftables_hosts: hosts: router: docker_compose_hosts: - hosts: + hosts: + acmedns: ccchoir: grafana: tickets: @@ -128,6 +134,7 @@ nextcloud_hosts: cloud: nginx_hosts: hosts: + acmedns: ccchoir: eh22-wiki: grafana: @@ -150,6 +157,7 @@ public_reverse_proxy_hosts: public-reverse-proxy: certbot_hosts: hosts: + acmedns: ccchoir: eh22-wiki: grafana: diff --git a/resources/chaosknoten/acmedns/docker_compose/acmedns.cfg.j2 b/resources/chaosknoten/acmedns/docker_compose/acmedns.cfg.j2 new file mode 100644 index 000000000..4f3b49c58 --- /dev/null +++ b/resources/chaosknoten/acmedns/docker_compose/acmedns.cfg.j2 @@ -0,0 +1,27 @@ +# https://github.com/joohoi/acme-dns?tab=readme-ov-file#configuration +[general] +protocol = "both" +domain = "auth.acmedns.hamburg.ccc.de" +nsname = "acmedns.hosts.hamburg.ccc.de" +nsadmin = "noc.lists.hamburg.ccc.de" +records = [ + "auth.acmedns.hamburg.ccc.de. CNAME public-reverse-proxy.hamburg.ccc.de.", + "auth.acmedns.hamburg.ccc.de. NS acmedns.hosts.hamburg.ccc.de.", +] + +[database] +engine = "sqlite3" +connection = "/var/lib/acme-dns/acme-dns.db" + +[api] +ip = "0.0.0.0" +port = "80" +tls = "none" +corsorigins = [ + "*" +] + +[logconfig] +loglevel = "debug" +logtype = "stdout" +logformat = "text" diff --git a/resources/chaosknoten/acmedns/docker_compose/compose.yaml.j2 b/resources/chaosknoten/acmedns/docker_compose/compose.yaml.j2 new file mode 100644 index 000000000..89768523b --- /dev/null +++ b/resources/chaosknoten/acmedns/docker_compose/compose.yaml.j2 @@ -0,0 +1,22 @@ +--- +services: + oauth2-proxy: + container_name: oauth2-proxy + image: quay.io/oauth2-proxy/oauth2-proxy:v7.14.2 + command: --config /oauth2-proxy.cfg + hostname: oauth2-proxy + volumes: + - "./configs/oauth2-proxy.cfg:/oauth2-proxy.cfg" + restart: unless-stopped + ports: + - 4180:4180 + + acmedns: + image: docker.io/joohoi/acme-dns:latest + ports: + - "[::]:53:53" + - "[::]:53:53/udp" + - 8080:80 + volumes: + - ./configs/acmedns.cfg:/etc/acme-dns/config.cfg:ro + - ./data/acmedns:/var/lib/acme-dns \ No newline at end of file diff --git a/resources/chaosknoten/acmedns/docker_compose/index.html.j2 b/resources/chaosknoten/acmedns/docker_compose/index.html.j2 new file mode 100644 index 000000000..02216da4a --- /dev/null +++ b/resources/chaosknoten/acmedns/docker_compose/index.html.j2 @@ -0,0 +1,63 @@ + + +ACME DNS Register + + + +

Register an Entry in ACME DNS

+ +

This is the page where you can create an entry in ACME DNS. Please only do so when you need a new entry; there is currently no way to remove entries once they have been created.

+

See the ACME DNS service entry in the wiki for further details.

+ +

+ + + + + + + + + + + + + + + + + + diff --git a/resources/chaosknoten/acmedns/docker_compose/oauth2-proxy.cfg.j2 b/resources/chaosknoten/acmedns/docker_compose/oauth2-proxy.cfg.j2 new file mode 100644 index 000000000..f11eadf5c --- /dev/null +++ b/resources/chaosknoten/acmedns/docker_compose/oauth2-proxy.cfg.j2 @@ -0,0 +1,13 @@ +reverse_proxy = true +http_address="0.0.0.0:4180" +cookie_secret="{{ secret__oidc_cookie_secret }}" +email_domains="*" + +# dex provider +oidc_issuer_url="https://id.hamburg.ccc.de/realms/ccchh" +provider="oidc" +provider_display_name="CCCHH ID" +client_id="acmedns" +client_secret="{{ secret__oidc_client_secret }}" +redirect_url="https://acmedns.hamburg.ccc.de/oauth2/callback" + diff --git a/resources/chaosknoten/acmedns/nginx/acmedns.hamburg.ccc.de.conf b/resources/chaosknoten/acmedns/nginx/acmedns.hamburg.ccc.de.conf new file mode 100644 index 000000000..b360d40e7 --- /dev/null +++ b/resources/chaosknoten/acmedns/nginx/acmedns.hamburg.ccc.de.conf @@ -0,0 +1,83 @@ +# partly generated 2022-01-08, Mozilla Guideline v5.6, nginx 1.17.7, OpenSSL 1.1.1k, intermediate configuration +# https://ssl-config.mozilla.org/#server=nginx&version=1.17.7&config=intermediate&openssl=1.1.1k&guideline=5.6 +server { + # Listen on a custom port for the proxy protocol. + listen [::]:8443 ssl http2 proxy_protocol; + # Make use of the ngx_http_realip_module to set the $remote_addr and + # $remote_port to the client address and client port, when using proxy + # protocol. + # First set our proxy protocol proxy as trusted. + set_real_ip_from 2a00:14b0:4200:3000:125::1; + # Then tell the realip_module to get the addreses from the proxy protocol + # header. + real_ip_header proxy_protocol; + + server_name acmedns.hamburg.ccc.de; + + root /ansible_docker_compose/configs/html/; + + ssl_certificate /etc/letsencrypt/live/acmedns.hamburg.ccc.de/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/acmedns.hamburg.ccc.de/privkey.pem; + # verify chain of trust of OCSP response using Root CA and Intermediate certs + ssl_trusted_certificate /etc/letsencrypt/live/acmedns.hamburg.ccc.de/chain.pem; + + # HSTS (ngx_http_headers_module is required) (63072000 seconds) + add_header Strict-Transport-Security "max-age=63072000" always; + + proxy_set_header Host $host; + proxy_set_header X-Forwarded-Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Port 443; + # This is https in any case. + proxy_set_header X-Forwarded-Proto https; + # Hide the X-Forwarded header. + proxy_hide_header X-Forwarded; + # Assume we are the only Reverse Proxy (well using Proxy Protocol, but that + # is transparent). + # Also provide "_hidden" for by, since it's not relevant. + proxy_set_header Forwarded "for=$remote_addr;proto=https;host=$host;by=_hidden"; + proxy_buffer_size 8k; # needed for oauth2-proxy to work correctly + port_in_redirect off; + + location /oauth2/ { + proxy_pass http://127.0.0.1:4180; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Auth-Request-Redirect $request_uri; + # or, if you are handling multiple domains: + # proxy_set_header X-Auth-Request-Redirect $scheme://$host$request_uri; + } + + location = /oauth2/auth { + proxy_pass http://127.0.0.1:4180; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-Uri $request_uri; + # nginx auth_request includes headers but not body + proxy_set_header Content-Length ""; + proxy_pass_request_body off; + } + + location = / { + auth_request /oauth2/auth; + error_page 401 = @oauth2_signin; + + index index.html; + } + + location = /register { + auth_request /oauth2/auth; + error_page 401 = @oauth2_signin; + + proxy_pass http://127.0.0.1:8080/register; + } + + location = /update { # no auth by proxy required + proxy_pass http://127.0.0.1:8080/update; + } + + location @oauth2_signin { + return 302 /oauth2/sign_in?rd=$scheme://$host$request_uri; + } +} diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 71ae72921..feacfa7e4 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -82,6 +82,7 @@ map $host $upstream_acme_challenge_host { spaceapi.ccc.de spaceapiccc.hosts.hamburg.ccc.de:31820; cpuccc.hamburg.ccc.de 172.31.17.151:31820; cpu.ccc.de 172.31.17.151:31820; + acmedns.hamburg.ccc.de acmedns.hosts.hamburg.ccc.de:31820; default ""; } diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index bdf71846a..fc62a8924 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -100,6 +100,7 @@ stream { spaceapi.ccc.de spaceapiccc.hosts.hamburg.ccc.de:8443; cpuccc.hamburg.ccc.de 172.31.17.151:8443; cpu.ccc.de 172.31.17.151:8443; + acmedns.hamburg.ccc.de acmedns.hosts.hamburg.ccc.de:8443; } server { From 42b23eb1817995f2fa5edef34980382aace7a84d Mon Sep 17 00:00:00 2001 From: June Date: Sun, 25 Jan 2026 23:55:48 +0100 Subject: [PATCH 085/142] get collections from repos directly instead of using Ansible Galaxy As Ansible Galaxy is currently down, switch to using the repos directly. This avoids reliancy on Ansible Galaxy in the future as well. --- requirements.yml | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/requirements.yml b/requirements.yml index 6011bdab1..8f483589f 100644 --- a/requirements.yml +++ b/requirements.yml @@ -1,11 +1,13 @@ collections: - # Install a collection from Ansible Galaxy. - - name: debops.debops - version: ">=3.1.0" - source: https://galaxy.ansible.com - - name: community.sops - version: ">=2.2.4" - source: https://galaxy.ansible.com - - name: community.docker - version: ">=5.0.0" - source: https://galaxy.ansible.com + # debops.debops + - source: https://github.com/debops/debops + type: git + version: "v3.2.5" + # community.sops + - source: https://github.com/ansible-collections/community.sops + type: git + version: "2.2.7" + # community.docker + - source: https://github.com/ansible-collections/community.docker + type: git + version: "5.0.5" From ca20721f04b46d49b423d61cecd0e88fc7090e78 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 25 Jan 2026 23:55:57 +0100 Subject: [PATCH 086/142] add missing grafana.grafana collection dependency --- requirements.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/requirements.yml b/requirements.yml index 8f483589f..dffe9d35c 100644 --- a/requirements.yml +++ b/requirements.yml @@ -11,3 +11,7 @@ collections: - source: https://github.com/ansible-collections/community.docker type: git version: "5.0.5" + # grafana.grafana + - source: https://github.com/grafana/grafana-ansible-collection + type: git + version: "6.0.6" From c8edde4d113d30f3a71ea383b525e55646766c6b Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Mon, 26 Jan 2026 00:20:27 +0100 Subject: [PATCH 087/142] Pretty up --- .../acmedns/docker_compose/index.html.j2 | 21 ++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/resources/chaosknoten/acmedns/docker_compose/index.html.j2 b/resources/chaosknoten/acmedns/docker_compose/index.html.j2 index 02216da4a..1170cec7d 100644 --- a/resources/chaosknoten/acmedns/docker_compose/index.html.j2 +++ b/resources/chaosknoten/acmedns/docker_compose/index.html.j2 @@ -4,14 +4,21 @@ @@ -24,19 +31,23 @@ th { - + - + - + - + + +

Note: there is no way to delete registrations. Each registration is small, so it's not an immediate problem, but please do not click register unless you are planning to really create a new entry.

+ + + + + + {% block additionaljs %}{% endblock %} + + \ No newline at end of file diff --git a/resources/chaosknoten/lists/docker_compose/settings_local.py b/resources/chaosknoten/lists/docker_compose/settings_local.py new file mode 100644 index 000000000..fd90fa9c0 --- /dev/null +++ b/resources/chaosknoten/lists/docker_compose/settings_local.py @@ -0,0 +1,34 @@ +# might need to copy (some) code from https://github.com/maxking/docker-mailman/blob/main/web/mailman-web/settings.py + +import os + +BASE_DIR = os.path.dirname(os.path.abspath(__file__)) + +HYPERKITTY_ENABLE_GRAVATAR=False +FILTER_VHOST = True + +TEMPLATES = [ + { + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'DIRS': [ + BASE_DIR + '/templates', + ], + 'APP_DIRS': True, + 'OPTIONS': { + 'context_processors': [ + 'django.template.context_processors.debug', + 'django.template.context_processors.i18n', + 'django.template.context_processors.media', + 'django.template.context_processors.static', + 'django.template.context_processors.tz', + 'django.template.context_processors.csrf', + 'django.template.context_processors.request', + 'django.contrib.auth.context_processors.auth', + 'django.contrib.messages.context_processors.messages', + 'django_mailman3.context_processors.common', + 'hyperkitty.context_processors.common', + 'postorius.context_processors.postorius', + ], + }, + }, +] From 08101ccef1b79f7cb600eaa542366f70d8758f70 Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sun, 22 Feb 2026 18:37:01 +0100 Subject: [PATCH 119/142] Fix permission --- roles/docker_compose/tasks/main.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/roles/docker_compose/tasks/main.yaml b/roles/docker_compose/tasks/main.yaml index 04c2baa90..588371686 100644 --- a/roles/docker_compose/tasks/main.yaml +++ b/roles/docker_compose/tasks/main.yaml @@ -76,8 +76,11 @@ ansible.posix.synchronize: src: "{{ docker_compose__files }}/" dest: "/ansible_docker_compose/files" + archive: false + recursive: true delete: true become: true + notify: docker compose restart when: docker_compose__files != "" - name: Flush handlers to make "docker compose down" and "docker compose restart" handlers run now From ac013ca8a1735d05d7ab3e411ecf09091e6b3e88 Mon Sep 17 00:00:00 2001 From: Stefan Bethke Date: Sun, 22 Feb 2026 18:37:16 +0100 Subject: [PATCH 120/142] Fix template syntax --- .../lists/docker_compose/files/templates/postorius/base.html | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/resources/chaosknoten/lists/docker_compose/files/templates/postorius/base.html b/resources/chaosknoten/lists/docker_compose/files/templates/postorius/base.html index af4c29743..1b447e58f 100644 --- a/resources/chaosknoten/lists/docker_compose/files/templates/postorius/base.html +++ b/resources/chaosknoten/lists/docker_compose/files/templates/postorius/base.html @@ -25,9 +25,7 @@ - {# - {% trans 'Mailman logo' %} Postorius - #} + {# {% trans 'Mailman logo' %} Postorius #} CCCHH   Mailing Lists {% if not user.is_authenticated %} From 3e3cedd35770d358ea523559853d7440e834040a Mon Sep 17 00:00:00 2001 From: lilly Date: Tue, 24 Feb 2026 16:28:58 +0100 Subject: [PATCH 121/142] add www2 and www3 hosts --- inventories/chaosknoten/hosts.yaml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/inventories/chaosknoten/hosts.yaml b/inventories/chaosknoten/hosts.yaml index e7f0559c2..7bf45449c 100644 --- a/inventories/chaosknoten/hosts.yaml +++ b/inventories/chaosknoten/hosts.yaml @@ -86,6 +86,14 @@ all: ansible_host: acmedns.hosts.hamburg.ccc.de ansible_user: chaos ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de + www2: + ansible_host: www2.hosts.hamburg.ccc.de + ansible_user: chaos + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de + www3: + ansible_host: www3.hosts.hamburg.ccc.de + ansible_user: chaos + ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de hypervisors: hosts: chaosknoten: @@ -113,6 +121,8 @@ base_config_hosts: renovate: spaceapiccc: mjolnir: + www2: + www3: systemd_networkd_hosts: hosts: router: @@ -158,6 +168,8 @@ nginx_hosts: ntfy: sunders: spaceapiccc: + www2: + www3: public_reverse_proxy_hosts: hosts: public-reverse-proxy: @@ -200,6 +212,8 @@ alloy_hosts: router: sunders: spaceapiccc: + www2: + www3: infrastructure_authorized_keys_hosts: hosts: ccchoir: @@ -221,6 +235,8 @@ infrastructure_authorized_keys_hosts: renovate: spaceapiccc: mjolnir: + www2: + www3: wiki_hosts: hosts: eh22-wiki: @@ -253,6 +269,8 @@ ansible_pull_hosts: ntfy: spaceapiccc: mjolnir: + # www2: + # www3: msmtp_hosts: hosts: renovate_hosts: From 41dc9c8529a3ec2c768afa0754a5bf819a33a6d7 Mon Sep 17 00:00:00 2001 From: lilly Date: Tue, 24 Feb 2026 17:01:25 +0100 Subject: [PATCH 122/142] configure www2 nginx --- inventories/chaosknoten/host_vars/www2.yaml | 5 ++ .../chaosknoten/www2/nginx/diday.org.conf | 80 +++++++++++++++++++ 2 files changed, 85 insertions(+) create mode 100644 inventories/chaosknoten/host_vars/www2.yaml create mode 100644 resources/chaosknoten/www2/nginx/diday.org.conf diff --git a/inventories/chaosknoten/host_vars/www2.yaml b/inventories/chaosknoten/host_vars/www2.yaml new file mode 100644 index 000000000..a8a9ce893 --- /dev/null +++ b/inventories/chaosknoten/host_vars/www2.yaml @@ -0,0 +1,5 @@ +nginx__version_spec: "" +nginx__configurations: + - name: diday.org + content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/www2/nginx/diday.org.conf') }}" + diff --git a/resources/chaosknoten/www2/nginx/diday.org.conf b/resources/chaosknoten/www2/nginx/diday.org.conf new file mode 100644 index 000000000..8cc655cd6 --- /dev/null +++ b/resources/chaosknoten/www2/nginx/diday.org.conf @@ -0,0 +1,80 @@ +server { + listen 443 ssl; + listen [::]:443 ssl; + http2 on; + + server_name diday.org; + + # use our router as resolver + resolver 10.31.208.1; + + # configure the ngx_http_realip_module to set $remote_addr and $remote_port to the + # information passed through from public-reverse-proxy.hamburg.ccc.de via proxy-protocol + set_real_ip_from 2a00:14b0:4200:3000:125::1; + real_ip_header proxy_protocol; + + # configure tls trustchain + ssl_certificate /dev/null; + ssl_certificate_key /dev/null; + ssl_trusted_certificate /dev/null; + + # + # configure site + # + root /var/www/diday.org; + error_page 404 /404.html; + index index.html; + add_header Referrer-Policy "strict-origin-when-cross-origin" always; + + # return a redirect based on the map loaded from the webroot + if ($did_redirect_target ~ ^301:(.*)$) { + return 301 $1; + } + if ($did_redirect_target ~ ^302:(.*)$) { + return 302 $1; + } + + # deny access to the redirects config file + location = /nginx-redirects.conf { + deny all; + return 404; + } + + # dynamically redirect the user to the language they prefer + location = / { + set $lang "de"; + if ($http_accept_language ~* "^en") { + set $lang "en"; + } + return 302 /$lang/; + } + + # configure decap-cms content-type and caching rules + location = /admin/cms.js { + expires -1; + add_header Cache-Control "no-store"; + } + location = /admin/config.yml { + expires -1; + add_header Cache-Control "no-store"; + types { } + default_type text/yaml; + } + + # configure asset caching + location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff2?)$ { + expires 1y; + add_header Cache-Control "public, immutable"; + } + + # we are using the Astro Image Pipeline, therefore DecapCMS can't access image previews + location /admin/src/ { + log_not_found off; + return 404; + } + + location / { + try_files $uri $uri/ =404; + } +} + From fcc0d615a7ff4dde2d78867ebf36bc97099cc781 Mon Sep 17 00:00:00 2001 From: lilly Date: Thu, 26 Feb 2026 18:01:50 +0100 Subject: [PATCH 123/142] configure diday.org on public-reverse-proxy --- .../chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf | 1 + resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 1 + 2 files changed, 2 insertions(+) diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index dac2ecc51..6f7a57d19 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -83,6 +83,7 @@ map $host $upstream_acme_challenge_host { lokal.ccc.de 172.31.17.151:31820; local.ccc.de 172.31.17.151:31820; acmedns.hamburg.ccc.de acmedns.hosts.hamburg.ccc.de:31820; + diday.org 172.31.17.151:31820; did.hamburg.ccc.de 172.31.17.151:31820; staging.did.hamburg.ccc.de 172.31.17.151:31820; default ""; diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index 2fc542085..b126fc305 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -102,6 +102,7 @@ stream { local.ccc.de 172.31.17.151:8443; acmedns.hamburg.ccc.de acmedns.hosts.hamburg.ccc.de:8443; did.hamburg.ccc.de 172.31.17.151:8443; + diday.org 172.31.17.151:8443; staging.did.hamburg.ccc.de 172.31.17.151:8443; } From 7ca446457a227874d4c20fb46b279145d74e0f38 Mon Sep 17 00:00:00 2001 From: June Date: Thu, 26 Feb 2026 23:00:53 +0100 Subject: [PATCH 124/142] onlyoffice: support custom fonts and add di.day fonts --- playbooks/deploy.yaml | 3 ++ playbooks/onlyoffice_fonts.yaml | 54 +++++++++++++++++++ .../onlyoffice/docker_compose/compose.yaml.j2 | 1 + 3 files changed, 58 insertions(+) create mode 100644 playbooks/onlyoffice_fonts.yaml diff --git a/playbooks/deploy.yaml b/playbooks/deploy.yaml index fe0cf78e7..e03278225 100644 --- a/playbooks/deploy.yaml +++ b/playbooks/deploy.yaml @@ -54,6 +54,9 @@ roles: - certbot +- name: Ensure OnlyOffice custom fonts + ansible.builtin.import_playbook: onlyoffice_fonts.yaml + - name: Ensure Docker Compose deployment on docker_compose_hosts hosts: docker_compose_hosts roles: diff --git a/playbooks/onlyoffice_fonts.yaml b/playbooks/onlyoffice_fonts.yaml new file mode 100644 index 000000000..00ad32e2b --- /dev/null +++ b/playbooks/onlyoffice_fonts.yaml @@ -0,0 +1,54 @@ +- name: Ensure custom fonts are added to OnlyOffice + hosts: onlyoffice + tasks: + - name: ensure the `/ansible_docker_compose/fonts/export` directory exists + ansible.builtin.file: + path: /ansible_docker_compose/fonts/export + state: directory + mode: "0755" + owner: root + group: root + become: true + + # Relevant volume added in onlyoffice compose.yaml. + + # Add di.day fonts. + # See: https://codeberg.org/DI-Day/creative-identity/src/commit/864876576996394cec34fd54e739c8b1236ab4c8/assets/README.md + - name: (di.day fonts) ensure source is present + ansible.builtin.get_url: + url: https://codeberg.org/DI-Day/creative-identity/archive/864876576996394cec34fd54e739c8b1236ab4c8:assets/fonts.tar.gz + dest: /ansible_docker_compose/fonts/diday_src.tar.gz + checksum: sha256:b343593b86df46b559b592b49b6f07a864b3435b8b202f2f52e31c27fc0dbedb + mode: "0644" + owner: root + group: root + become: true + register: onlyoffice_fonts__diday_src + + - name: (di.day fonts) ensure export is absent + ansible.builtin.file: + path: /ansible_docker_compose/fonts/export/diday + state: absent + become: true + when: onlyoffice_fonts__diday_src.changed # noqa: no-handler + + - name: (di.day fonts) ensure export directory is absent + ansible.builtin.file: + path: /ansible_docker_compose/fonts/export/diday + state: directory + mode: "0755" + owner: root + group: root + become: true + when: onlyoffice_fonts__diday_src.changed # noqa: no-handler + + - name: (di.day fonts) ensure export has content + ansible.builtin.unarchive: + remote_src: true + src: /ansible_docker_compose/fonts/diday_src.tar.gz + dest: /ansible_docker_compose/fonts/export/diday + mode: "0755" + owner: root + group: root + become: true + when: onlyoffice_fonts__diday_src.changed # noqa: no-handler diff --git a/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 b/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 index 8bc37e93b..5f3478d36 100644 --- a/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 @@ -11,6 +11,7 @@ services: - "./onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data" - "./onlyoffice/DocumentServer/lib:/var/lib/onlyoffice" - "./onlyoffice/DocumentServer/db:/var/lib/postgresql" + - "./fonts/export:/usr/share/fonts/custom:ro" ports: - "8080:80" environment: From 983584a510551ea293fe0cc23ae4abf8841cae62 Mon Sep 17 00:00:00 2001 From: lilly Date: Fri, 27 Feb 2026 21:48:47 +0100 Subject: [PATCH 125/142] configure reverse proxy map explicitly for hostnames --- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index b126fc305..cbefa75c4 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -18,6 +18,7 @@ stream { resolver 212.12.50.158 192.76.134.90; map $ssl_preread_server_name $address { + hostnames; ccchoir.de ccchoir.hosts.hamburg.ccc.de:8443; www.ccchoir.de ccchoir.hosts.hamburg.ccc.de:8443; cloud.hamburg.ccc.de cloud.hosts.hamburg.ccc.de:8443; From bc9e76b8ed14005ace989c36feb3247016329986 Mon Sep 17 00:00:00 2001 From: lilly Date: Fri, 27 Feb 2026 21:48:47 +0100 Subject: [PATCH 126/142] remove did.hamburg.ccc.de from public-reverse-proxy --- .../chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf | 2 -- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 2 -- 2 files changed, 4 deletions(-) diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf index 6f7a57d19..d79f29907 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/acme_challenge.conf @@ -84,8 +84,6 @@ map $host $upstream_acme_challenge_host { local.ccc.de 172.31.17.151:31820; acmedns.hamburg.ccc.de acmedns.hosts.hamburg.ccc.de:31820; diday.org 172.31.17.151:31820; - did.hamburg.ccc.de 172.31.17.151:31820; - staging.did.hamburg.ccc.de 172.31.17.151:31820; default ""; } diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index cbefa75c4..be5dd5210 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -102,9 +102,7 @@ stream { lokal.ccc.de 172.31.17.151:8443; local.ccc.de 172.31.17.151:8443; acmedns.hamburg.ccc.de acmedns.hosts.hamburg.ccc.de:8443; - did.hamburg.ccc.de 172.31.17.151:8443; diday.org 172.31.17.151:8443; - staging.did.hamburg.ccc.de 172.31.17.151:8443; } server { From 165487884ccfda30a7836278b74ed0bcf33ac51f Mon Sep 17 00:00:00 2001 From: lilly Date: Fri, 27 Feb 2026 21:48:47 +0100 Subject: [PATCH 127/142] setup reverse-proxying for *.staging.diday.org --- resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf index be5dd5210..01edbfec6 100644 --- a/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf +++ b/resources/chaosknoten/public-reverse-proxy/nginx/nginx.conf @@ -103,6 +103,7 @@ stream { local.ccc.de 172.31.17.151:8443; acmedns.hamburg.ccc.de acmedns.hosts.hamburg.ccc.de:8443; diday.org 172.31.17.151:8443; + *.staging.diday.org 172.31.17.151:8443; } server { From 711f2f1c64739039e0889a73bfd8041551e247d1 Mon Sep 17 00:00:00 2001 From: June Date: Sun, 1 Mar 2026 20:08:49 +0100 Subject: [PATCH 128/142] certbot(role): don't use certbot__version_spec anymore as its not used --- docs/create-new-web-service-vm.md | 1 - inventories/chaosknoten/host_vars/acmedns.yaml | 1 - inventories/chaosknoten/host_vars/ccchoir.yaml | 1 - inventories/chaosknoten/host_vars/eh22-wiki.yaml | 1 - inventories/chaosknoten/host_vars/grafana.yaml | 1 - inventories/chaosknoten/host_vars/keycloak.yaml | 1 - inventories/chaosknoten/host_vars/lists.yaml | 1 - inventories/chaosknoten/host_vars/mumble.yaml | 1 - inventories/chaosknoten/host_vars/netbox.yaml | 1 - inventories/chaosknoten/host_vars/ntfy.yaml | 1 - inventories/chaosknoten/host_vars/onlyoffice.yaml | 1 - inventories/chaosknoten/host_vars/pad.yaml | 1 - inventories/chaosknoten/host_vars/pretalx.yaml | 1 - inventories/chaosknoten/host_vars/spaceapiccc.yaml | 1 - inventories/chaosknoten/host_vars/sunders.yaml | 1 - inventories/chaosknoten/host_vars/tickets.yaml | 1 - inventories/chaosknoten/host_vars/wiki.yaml | 1 - inventories/chaosknoten/host_vars/zammad.yaml | 1 - inventories/external/host_vars/status.yaml | 1 - inventories/z9/host_vars/dooris.yaml | 1 - inventories/z9/host_vars/light.yaml | 3 --- roles/certbot/meta/argument_specs.yaml | 9 --------- roles/certbot/tasks/main/install.yaml | 10 +--------- roles/nextcloud/meta/main.yaml | 1 - 24 files changed, 1 insertion(+), 42 deletions(-) diff --git a/docs/create-new-web-service-vm.md b/docs/create-new-web-service-vm.md index f6ccf4af0..b91d9fab9 100644 --- a/docs/create-new-web-service-vm.md +++ b/docs/create-new-web-service-vm.md @@ -59,7 +59,6 @@ From here, we go into the details of the web service that you want to configure. Make `inventories/chaosknoten/host_var/example.yaml` look like this: ```yaml -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: - "example.hamburg.ccc.de" diff --git a/inventories/chaosknoten/host_vars/acmedns.yaml b/inventories/chaosknoten/host_vars/acmedns.yaml index 364aa9afe..5c9cf56b9 100644 --- a/inventories/chaosknoten/host_vars/acmedns.yaml +++ b/inventories/chaosknoten/host_vars/acmedns.yaml @@ -9,7 +9,6 @@ docker_compose__configuration_files: content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/acmedns/docker_compose/index.html.j2') }}" docker_compose__pull: missing -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: # - "spaceapi.ccc.de" # after DNS has been adjusted diff --git a/inventories/chaosknoten/host_vars/ccchoir.yaml b/inventories/chaosknoten/host_vars/ccchoir.yaml index 93e49b0a8..7b7d572aa 100644 --- a/inventories/chaosknoten/host_vars/ccchoir.yaml +++ b/inventories/chaosknoten/host_vars/ccchoir.yaml @@ -1,7 +1,6 @@ docker_compose__compose_file_content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/ccchoir/docker_compose/compose.yaml.j2') }}" docker_compose__configuration_files: [ ] -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: - "ccchoir.de" diff --git a/inventories/chaosknoten/host_vars/eh22-wiki.yaml b/inventories/chaosknoten/host_vars/eh22-wiki.yaml index 4b7ce47f3..5e0ca522d 100644 --- a/inventories/chaosknoten/host_vars/eh22-wiki.yaml +++ b/inventories/chaosknoten/host_vars/eh22-wiki.yaml @@ -3,7 +3,6 @@ nginx__configurations: - name: eh22.easterhegg.eu content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/eh22-wiki/nginx/eh22.easterhegg.eu.conf') }}" -certbot__version_spec: "" certbot__acme_account_email_address: j+letsencrypt-ccchh@jsts.xyz certbot__certificate_domains: - "eh22.easterhegg.eu" diff --git a/inventories/chaosknoten/host_vars/grafana.yaml b/inventories/chaosknoten/host_vars/grafana.yaml index b87a19891..f259ad716 100644 --- a/inventories/chaosknoten/host_vars/grafana.yaml +++ b/inventories/chaosknoten/host_vars/grafana.yaml @@ -25,7 +25,6 @@ docker_compose__configuration_files: - name: ntfy-alertmanager-fux content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/grafana/docker_compose/ntfy-alertmanager-fux.j2') }}" -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: - "grafana.hamburg.ccc.de" diff --git a/inventories/chaosknoten/host_vars/keycloak.yaml b/inventories/chaosknoten/host_vars/keycloak.yaml index a8fbc999a..c288da521 100644 --- a/inventories/chaosknoten/host_vars/keycloak.yaml +++ b/inventories/chaosknoten/host_vars/keycloak.yaml @@ -1,7 +1,6 @@ docker_compose__compose_file_content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/keycloak/docker_compose/compose.yaml.j2') }}" docker_compose__configuration_files: [ ] -certbot__version_spec: "" certbot__acme_account_email_address: j+letsencrypt-ccchh@jsts.xyz certbot__certificate_domains: - "id.hamburg.ccc.de" diff --git a/inventories/chaosknoten/host_vars/lists.yaml b/inventories/chaosknoten/host_vars/lists.yaml index 99acde35b..0e5317801 100644 --- a/inventories/chaosknoten/host_vars/lists.yaml +++ b/inventories/chaosknoten/host_vars/lists.yaml @@ -4,7 +4,6 @@ docker_compose__configuration_files: content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/lists/docker_compose/settings_local.py') }}" docker_compose__files: resources/chaosknoten/lists/docker_compose/files -certbot__version_spec: "" certbot__acme_account_email_address: j+letsencrypt-ccchh@jsts.xyz certbot__certificate_domains: - "lists.hamburg.ccc.de" diff --git a/inventories/chaosknoten/host_vars/mumble.yaml b/inventories/chaosknoten/host_vars/mumble.yaml index 3f3a06ea4..fe44b1764 100644 --- a/inventories/chaosknoten/host_vars/mumble.yaml +++ b/inventories/chaosknoten/host_vars/mumble.yaml @@ -1,4 +1,3 @@ -certbot__version_spec: "" certbot__acme_account_email_address: j+letsencrypt-ccchh@jsts.xyz certbot__certificate_domains: - "mumble.hamburg.ccc.de" diff --git a/inventories/chaosknoten/host_vars/netbox.yaml b/inventories/chaosknoten/host_vars/netbox.yaml index 2c68c1718..8982a22df 100644 --- a/inventories/chaosknoten/host_vars/netbox.yaml +++ b/inventories/chaosknoten/host_vars/netbox.yaml @@ -8,7 +8,6 @@ nginx__configurations: - name: netbox.hamburg.ccc.de content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/netbox/nginx/netbox.hamburg.ccc.de.conf') }}" -certbot__version_spec: "" certbot__acme_account_email_address: j+letsencrypt-ccchh@jsts.xyz certbot__certificate_domains: - "netbox.hamburg.ccc.de" diff --git a/inventories/chaosknoten/host_vars/ntfy.yaml b/inventories/chaosknoten/host_vars/ntfy.yaml index 2d68bfaa0..0cc9433c5 100644 --- a/inventories/chaosknoten/host_vars/ntfy.yaml +++ b/inventories/chaosknoten/host_vars/ntfy.yaml @@ -3,7 +3,6 @@ docker_compose__configuration_files: - name: server.yml content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/ntfy/docker_compose/server.yaml.j2') }}" -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: - "ntfy.hamburg.ccc.de" diff --git a/inventories/chaosknoten/host_vars/onlyoffice.yaml b/inventories/chaosknoten/host_vars/onlyoffice.yaml index aa39788fa..51308d469 100644 --- a/inventories/chaosknoten/host_vars/onlyoffice.yaml +++ b/inventories/chaosknoten/host_vars/onlyoffice.yaml @@ -3,7 +3,6 @@ nginx__configurations: - name: onlyoffice.hamburg.ccc.de content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/onlyoffice/nginx/onlyoffice.hamburg.ccc.de.conf') }}" -certbot__version_spec: "" certbot__acme_account_email_address: j+letsencrypt-ccchh@jsts.xyz certbot__certificate_domains: - "onlyoffice.hamburg.ccc.de" diff --git a/inventories/chaosknoten/host_vars/pad.yaml b/inventories/chaosknoten/host_vars/pad.yaml index 662541561..ecb8a2750 100644 --- a/inventories/chaosknoten/host_vars/pad.yaml +++ b/inventories/chaosknoten/host_vars/pad.yaml @@ -1,7 +1,6 @@ docker_compose__compose_file_content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/pad/docker_compose/compose.yaml.j2') }}" docker_compose__configuration_files: [ ] -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: - "pad.hamburg.ccc.de" diff --git a/inventories/chaosknoten/host_vars/pretalx.yaml b/inventories/chaosknoten/host_vars/pretalx.yaml index 3bdad13a8..12610b634 100644 --- a/inventories/chaosknoten/host_vars/pretalx.yaml +++ b/inventories/chaosknoten/host_vars/pretalx.yaml @@ -1,7 +1,6 @@ docker_compose__compose_file_content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2') }}" docker_compose__configuration_files: [ ] -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: - "pretalx.hamburg.ccc.de" diff --git a/inventories/chaosknoten/host_vars/spaceapiccc.yaml b/inventories/chaosknoten/host_vars/spaceapiccc.yaml index 3689be7e0..0a894e8ca 100644 --- a/inventories/chaosknoten/host_vars/spaceapiccc.yaml +++ b/inventories/chaosknoten/host_vars/spaceapiccc.yaml @@ -2,7 +2,6 @@ docker_compose__compose_file_content: "{{ lookup('ansible.builtin.template', 're docker_compose__build: never docker_compose__pull: never -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: - "spaceapi.ccc.de" diff --git a/inventories/chaosknoten/host_vars/sunders.yaml b/inventories/chaosknoten/host_vars/sunders.yaml index b3d50d881..4563a461a 100644 --- a/inventories/chaosknoten/host_vars/sunders.yaml +++ b/inventories/chaosknoten/host_vars/sunders.yaml @@ -1,6 +1,5 @@ docker_compose__compose_file_content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/sunders/docker_compose/compose.yaml.j2') }}" -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: - "sunders.hamburg.ccc.de" diff --git a/inventories/chaosknoten/host_vars/tickets.yaml b/inventories/chaosknoten/host_vars/tickets.yaml index 7a36bb6da..63fa90f39 100644 --- a/inventories/chaosknoten/host_vars/tickets.yaml +++ b/inventories/chaosknoten/host_vars/tickets.yaml @@ -3,7 +3,6 @@ docker_compose__configuration_files: - name: pretix.cfg content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/tickets/docker_compose/pretix.cfg.j2') }}" -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: - "tickets.hamburg.ccc.de" diff --git a/inventories/chaosknoten/host_vars/wiki.yaml b/inventories/chaosknoten/host_vars/wiki.yaml index 3d5fbb969..716547dda 100644 --- a/inventories/chaosknoten/host_vars/wiki.yaml +++ b/inventories/chaosknoten/host_vars/wiki.yaml @@ -5,7 +5,6 @@ nginx__configurations: - name: wiki.hamburg.ccc.de content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/wiki/nginx/wiki.hamburg.ccc.de.conf') }}" -certbot__version_spec: "" certbot__acme_account_email_address: j+letsencrypt-ccchh@jsts.xyz certbot__certificate_domains: - "wiki.ccchh.net" diff --git a/inventories/chaosknoten/host_vars/zammad.yaml b/inventories/chaosknoten/host_vars/zammad.yaml index 65ea3527c..8a0e7955b 100644 --- a/inventories/chaosknoten/host_vars/zammad.yaml +++ b/inventories/chaosknoten/host_vars/zammad.yaml @@ -2,7 +2,6 @@ docker_compose__compose_file_content: "{{ lookup('ansible.builtin.file', 'resour docker_compose__env_file_content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/zammad/docker_compose/.env.j2') }}" docker_compose__configuration_files: [ ] -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: - "zammad.hamburg.ccc.de" diff --git a/inventories/external/host_vars/status.yaml b/inventories/external/host_vars/status.yaml index c2c26b309..9af1eaa70 100644 --- a/inventories/external/host_vars/status.yaml +++ b/inventories/external/host_vars/status.yaml @@ -19,7 +19,6 @@ nginx__configurations: - name: http_handler content: "{{ lookup('ansible.builtin.file', 'resources/external/status/nginx/http_handler.conf') }}" -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: - "status.hamburg.ccc.de" diff --git a/inventories/z9/host_vars/dooris.yaml b/inventories/z9/host_vars/dooris.yaml index 8ae5287f6..3bfd55da3 100644 --- a/inventories/z9/host_vars/dooris.yaml +++ b/inventories/z9/host_vars/dooris.yaml @@ -1,7 +1,6 @@ docker_compose__compose_file_content: "{{ lookup('ansible.builtin.template', 'resources/z9/dooris/docker_compose/compose.yaml.j2') }}" docker_compose__configuration_files: [ ] -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: - "dooris.ccchh.net" diff --git a/inventories/z9/host_vars/light.yaml b/inventories/z9/host_vars/light.yaml index 0c7e11d77..a5957e282 100644 --- a/inventories/z9/host_vars/light.yaml +++ b/inventories/z9/host_vars/light.yaml @@ -59,7 +59,6 @@ nginx__configurations: - name: http_handler content: "{{ lookup('ansible.builtin.file', 'resources/z9/dooris/nginx/http_handler.conf') }}" -certbot__version_spec: "" certbot__acme_account_email_address: le-admin@hamburg.ccc.de certbot__certificate_domains: - "light-werkstatt.ccchh.net" @@ -67,5 +66,3 @@ certbot__certificate_domains: - "light.z9.ccchh.net" certbot__new_cert_commands: - "systemctl reload nginx.service" - - diff --git a/roles/certbot/meta/argument_specs.yaml b/roles/certbot/meta/argument_specs.yaml index 5e2da3343..b2b3f3252 100644 --- a/roles/certbot/meta/argument_specs.yaml +++ b/roles/certbot/meta/argument_specs.yaml @@ -1,15 +1,6 @@ argument_specs: main: options: - certbot__version_spec: - description: >- - The version specification to use for installing the `certbot` package. - The provided version specification will be used like the following: - `cerbot={{ certbot__version_spec }}*`. This makes it possible to e.g. - specify until a minor version (like `1.3.`) and then have patch - versions be installed automatically (like `1.3.1` and so on). - type: str - required: true certbot__acme_account_email_address: description: The E-Mail address to give to certbot for the ACME account. type: str diff --git a/roles/certbot/tasks/main/install.yaml b/roles/certbot/tasks/main/install.yaml index 895ef8159..40ccf751e 100644 --- a/roles/certbot/tasks/main/install.yaml +++ b/roles/certbot/tasks/main/install.yaml @@ -6,14 +6,6 @@ - name: make sure the `certbot` package is installed ansible.builtin.apt: - name: certbot={{ certbot__version_spec }}* - state: present - allow_change_held_packages: true - update_cache: true - become: true - -- name: apt-mark hold `certbot` - ansible.builtin.dpkg_selections: name: certbot - selection: hold + state: present become: true diff --git a/roles/nextcloud/meta/main.yaml b/roles/nextcloud/meta/main.yaml index 34f476a01..2e71e8f86 100644 --- a/roles/nextcloud/meta/main.yaml +++ b/roles/nextcloud/meta/main.yaml @@ -2,7 +2,6 @@ dependencies: - role: certbot vars: - certbot__version_spec: "{{ nextcloud__certbot_version_spec }}" certbot__acme_account_email_address: "{{ nextcloud__certbot_acme_account_email_address }}" certbot__certificate_domains: - "{{ nextcloud__fqdn }}" From 0331c77d558b04d2cc449fac55e6b6dd09730ce3 Mon Sep 17 00:00:00 2001 From: chris Date: Sun, 1 Mar 2026 21:32:10 +0100 Subject: [PATCH 129/142] grafana: fuxnoc macht mehr internet mit ipv6 --- resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf b/resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf index 195b99dc2..5f4fbd63d 100644 --- a/resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf +++ b/resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf @@ -11,7 +11,7 @@ server { # Z9 allow 2a07:c481:1::/48; # fuxnoc - allow 2a07:c481:0:1::/64; + allow 2a07:c481::/36; deny all; server_name metrics.hamburg.ccc.de; From 3820a97584daee667556bfc8648a285cf4ab444e Mon Sep 17 00:00:00 2001 From: June Date: Mon, 2 Mar 2026 20:01:09 +0100 Subject: [PATCH 130/142] certbot(role): move arguments documentation into README Do this to match how it's done in newer roles. --- roles/certbot/README.md | 10 +++++++++- roles/certbot/meta/argument_specs.yaml | 8 -------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/roles/certbot/README.md b/roles/certbot/README.md index 4cbd465d6..ccb687bfc 100644 --- a/roles/certbot/README.md +++ b/roles/certbot/README.md @@ -8,7 +8,15 @@ Also see the following documentation for a full How-to on how to get certificate ## Required Arguments -For the required arguments look at the [`argument_specs.yaml`](./meta/argument_specs.yaml). +- `certbot__acme_account_email_address`: The E-Mail address to use for the ACME account. +- `certbot__certificate_domains`: The domains for which to obtain a certificate. + +## Optional Arguments + +- `certbot__http_01_port`: The port number the bot listens on. Should be `80` if directly exposed to the internet. + Defaults to `31820` (for the public-reverse-proxy setup). +- `certbot__new_cert_commands`: A list of commands to execute after getting a new certificate. Will be added into a bash script. + Defaults to the empty list (`[ ]`). ## `hosts` diff --git a/roles/certbot/meta/argument_specs.yaml b/roles/certbot/meta/argument_specs.yaml index b2b3f3252..c8b45ddf3 100644 --- a/roles/certbot/meta/argument_specs.yaml +++ b/roles/certbot/meta/argument_specs.yaml @@ -2,25 +2,17 @@ argument_specs: main: options: certbot__acme_account_email_address: - description: The E-Mail address to give to certbot for the ACME account. type: str required: true certbot__certificate_domains: - description: The domains for which to obtain a certificate. type: list elements: str required: true certbot__http_01_port: - description: | - The port number the bot listens on. Must be 80 if directly exposed to the internet. - Default is 31820 for the public-reverse-proxy setup. type: str required: false default: 31820 certbot__new_cert_commands: - description: >- - A list of commands to execute after getting a new certificate. - Will be added into a bash script. type: list elements: str required: false From fee18bd34925411b47f8e1be059ff2c1fbf8c7b7 Mon Sep 17 00:00:00 2001 From: June Date: Mon, 2 Mar 2026 20:07:12 +0100 Subject: [PATCH 131/142] certbot(role): allow empty list of certificate domains Also explicitly document that they are used with the HTTP-01 challenge. This is in preparation for adding a new option with DNS-01 challenge support. --- roles/certbot/README.md | 2 +- roles/certbot/defaults/main.yaml | 1 + roles/certbot/meta/argument_specs.yaml | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/roles/certbot/README.md b/roles/certbot/README.md index ccb687bfc..3ad35bf68 100644 --- a/roles/certbot/README.md +++ b/roles/certbot/README.md @@ -9,10 +9,10 @@ Also see the following documentation for a full How-to on how to get certificate ## Required Arguments - `certbot__acme_account_email_address`: The E-Mail address to use for the ACME account. -- `certbot__certificate_domains`: The domains for which to obtain a certificate. ## Optional Arguments +- `certbot__certificate_domains`: The domains for which to obtain a certificate using the HTTP-01 challenge. - `certbot__http_01_port`: The port number the bot listens on. Should be `80` if directly exposed to the internet. Defaults to `31820` (for the public-reverse-proxy setup). - `certbot__new_cert_commands`: A list of commands to execute after getting a new certificate. Will be added into a bash script. diff --git a/roles/certbot/defaults/main.yaml b/roles/certbot/defaults/main.yaml index 9b2063481..9e6551e56 100644 --- a/roles/certbot/defaults/main.yaml +++ b/roles/certbot/defaults/main.yaml @@ -1,2 +1,3 @@ +certbot__certificate_domains: [ ] certbot__http_01_port: 31820 certbot__new_cert_commands: [ ] diff --git a/roles/certbot/meta/argument_specs.yaml b/roles/certbot/meta/argument_specs.yaml index c8b45ddf3..b895b5fd8 100644 --- a/roles/certbot/meta/argument_specs.yaml +++ b/roles/certbot/meta/argument_specs.yaml @@ -7,7 +7,8 @@ argument_specs: certbot__certificate_domains: type: list elements: str - required: true + required: false + default: [ ] certbot__http_01_port: type: str required: false From 05d8c39b75e00a3df17a61b690371c44d930e880 Mon Sep 17 00:00:00 2001 From: June Date: Thu, 5 Mar 2026 15:26:51 +0100 Subject: [PATCH 132/142] wip: test renovate --- renovate.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/renovate.json b/renovate.json index 41787b7aa..023194924 100644 --- a/renovate.json +++ b/renovate.json @@ -30,7 +30,8 @@ "matchUpdateTypes": [ "minor", "patch" - ] + ], + "matchJsonata": ["isBreaking != true"] }, { "matchDatasources": ["docker"], @@ -40,7 +41,8 @@ { "matchDatasources": ["docker"], "matchPackageNames": ["docker.io/pretalx/standalone"], - "versioning": "regex:^v(?\\d+\\.\\d+)(?:\\.(?\\d+))$" + "matchUpdateTypes": ["minor"], + "isBreaking": true } ], "customManagers": [ From 4f3caaf5edb96955dc6e442daa374035e135af7c Mon Sep 17 00:00:00 2001 From: lilly Date: Thu, 5 Mar 2026 20:18:51 +0100 Subject: [PATCH 133/142] add bitwhisker to sops --- .sops.yaml | 3 + .../chaosknoten/group_vars/all.sops.yaml | 489 +++++++++--------- .../chaosknoten/host_vars/acmedns.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/ccchoir.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/cloud.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/eh22-wiki.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/grafana.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/keycloak.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/lists.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/mjolnir.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/mumble.sops.yaml | 287 +++++----- .../chaosknoten/host_vars/netbox.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/ntfy.sops.yaml | 289 ++++++----- .../host_vars/onlyoffice.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/pad.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/pretalx.sops.yaml | 289 ++++++----- .../host_vars/public-reverse-proxy.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/renovate.sops.yaml | 289 ++++++----- .../host_vars/spaceapiccc.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/sunders.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/tickets.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/wiki.sops.yaml | 289 ++++++----- .../chaosknoten/host_vars/zammad.sops.yaml | 289 ++++++----- inventories/external/group_vars/all.sops.yaml | 289 ++++++----- .../external/host_vars/status.sops.yaml | 289 ++++++----- inventories/z9/group_vars/all.sops.yaml | 279 +++++----- inventories/z9/host_vars/dooris.sops.yaml | 279 +++++----- inventories/z9/host_vars/yate.sops.yaml | 279 +++++----- 28 files changed, 4111 insertions(+), 3863 deletions(-) diff --git a/.sops.yaml b/.sops.yaml index ca386a625..c659d62bf 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -12,6 +12,7 @@ keys: - &admin_gpg_c6ristian B71138A6A8964A3C3B8899857B4F70C356765BAB - &admin_gpg_lilly D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - &admin_gpg_langoor 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - &admin_gpg_bitwhisker 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 hosts: chaosknoten: age: &host_chaosknoten_age_keys @@ -39,6 +40,7 @@ keys: external: age: &host_external_age_keys - &host_status_ansible_pull_age_key age1p546j6whqsyfkjuf674lawrnk2ex653fuvwhcwt46gkrspkq59sqzm5y87 + creation_rules: ## group vars - path_regex: inventories/chaosknoten/group_vars/all.* @@ -205,6 +207,7 @@ creation_rules: - key_groups: - pgp: *admin_gpg_keys + stores: yaml: indent: 2 diff --git a/inventories/chaosknoten/group_vars/all.sops.yaml b/inventories/chaosknoten/group_vars/all.sops.yaml index 3ceb078ad..ecd50b025 100644 --- a/inventories/chaosknoten/group_vars/all.sops.yaml +++ b/inventories/chaosknoten/group_vars/all.sops.yaml @@ -5,384 +5,393 @@ sops: - recipient: age1ss82zwqkj438re78355p886r89csqrrfmkfp8lrrf8v23nza492qza4ey3 enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBxcjFhemorVCtNNkNBWjJB - cURhcml4QmlxY3E2Yjl2OCtaN1c1K2RrMVVZCndPK2xpZnNjWjZscEs0YW1rUVNw - bkhJZXNSaXV5dGhyNXdVUEE1K25WekEKLS0tIGtramYwUmUxcm1PNnJDcWdVcFg2 - UEMyTWMzOGlIbWFlK3pweWRKMHdZSVEK11TseMwMQeecPDBnbJxYscFj0XvIVBvi - pBeHf7yk+RsHLCf3odkdyuIckV0xaCkt+eeMRJ3aAb6gWDKGuc1PtQ== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBZYTlQQVpSclBaYkJvWWgr + MnlYNjdLc0JJbmRKMXd1d1RDVFlyWVNCcEFvCldkK2NLbjJRVkxvNlNFanpEejJH + MzVUSWdGVGYvS2VtQlBPL3JLVk8rTU0KLS0tIE01c04vUDZ6eUdlbzh4WG1ET0ly + ejJnRk9URUFOK25xZElkaiszZ1YvN2sKJAlXWEE+omwd3lmHlVBJ2iGAd+yeaP73 + Wdloun8Rj7bDvRzC7CTNzittIZdgS0+rcAH5mCqEt8+yJIzSo30cRg== -----END AGE ENCRYPTED FILE----- - recipient: age1gdfhx5hy829uqkw4nwjwlpvl7zqvljguzsnjv0dpwz5q5u7dtf6s90wndt enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBFVnpOdGdiZDMxcFBRQUpV - bGhWR0ptMnFndmQ2b3UxTnphV2VPZjNWZmlBClpRQlJzblFWUGp3blZVaEEzTnR5 - bXVrazhmaG1PdHBSR015TjVmWS9wNFEKLS0tIHdLOVFJWm90MDRKSmxTTWxaWWVB - SG5wRklna2crOGxTamcrLzdQTmlrd1kKTA+QF3St4Yo46Ssua+8dbB62+csXKuDV - to201vxK1R2kVhiDKq+mZztSQlf+Tidn+x3TSJ7VjmgmRNFCxoc72A== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBKWUVPRUZ2YjhReU4zZHpD + MitPV3BSVTZ1YjVFaCtuemhrVVFBOXhsSEVZCm1TRTQ3dEhDSXRmWWtwYmVOWkln + azRRc2ViVTA2cEJXT1g3Q0FsR292akkKLS0tIFQxMXBIUzVTK3owVU5KNEJqTk9W + cFZrcWpBQmhDTWR0bHV5YnVLSnVTelEKisrIuQq6l3NAXFoK+PY7d5zG/czYLuxO + UBsj99orjWSv/yIfOvbone+EG6Pi2jQdRwYLD2sxguJJg4ALqtpuwQ== -----END AGE ENCRYPTED FILE----- - recipient: age13nm6hfz66ce4wpn89fye05mag3l3h04etvz6wj7szm3vzrdlfupqhrp3fa enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBPZ2tKSkNIek8rVk0zenBr - aXN6TWZMMjBkMWpIbGxhY3ZQQmFyb3ZiRkZVCjdZeURKcUNiejltc2NZVnozMUVG - cGN3RHVrL2V1eGdqUkxPc1cvbHFRc1UKLS0tIHNBY2dlMkhScDRRTTFJdkpZL3d5 - QUpObmVzUStHRHRGM1BtWXNteFVER3MKirZY9CQKAn/eg2eEndSFXr42xfVVr844 - ndhaCEEpgwQfycToPc6fHrYi3p8zxd2dY8C1tOTRj6zHXK1Fh8SoTg== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBmcU9xSnJnalhzQU56RE9w + V3NFaVAvZ1p4T3UzTWxhb2pWWS8wM2dhVlhVCnVUM3NaYXl0T3ovRTcvQnNOVnJV + VncxUFF5cmZVZGwyd29SMnpuQitGMzAKLS0tIExLU2p0elR2ZjFjdm9PN2hKVGlv + QzBCNTlaSEE1U1E5cUExd1ZxN1dkYU0KcmXCpLzqMXrJvT24W8vjrGUPcbnAem/A + SF2xiAnFpxN3f+sk6fX+e5ulMD42YFDU8PKzxLCWsToH9dUzKJJFlg== -----END AGE ENCRYPTED FILE----- - recipient: age1jtusr294t8mzar2qy857v6s329ret9s353y4kuulxwnlyy4dvpjsvyl67m enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB1RFUvZlNMc1Rjd1NaRXo4 - MURMaHBER3kxeUorNS9uQnRkRHZJMkozb0VRClpCS29PbHpWUmY1ZXJQLzJ6WW95 - VjBnOXdwQjlTTjdLc3d3UHZPV3cxTmcKLS0tIG5OcS91clBWWDFoQkZWSk1DSUVW - Y2xVcGNvV01Za2lZYzc1RzBONzl5ZG8KxZkxNniwxcOls/jnGcGQTe1hqirBAlR9 - c4QQrUeV+3PaESQiqxaRSGv/xkva/sMrcIA9n+TkdZugGJxV1I1Caw== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAxMi9NTnd1SEFtbkllRVdk + Q09ENTJPWmVLN3ZuR2RFWUxMTGlCbVdBQ0g0CjdWdUQycENZaUorRlQ3TzBiVjZO + NjlrSm5zYWFNTThSMEpLcnR1TGVQZ1UKLS0tIFZQUDlJSkg1VnY5VUF6ZGRodEpx + RFg4THN0OFJNSXFCNjk2MTJ5TGliNnMKXxAdH8n9PUUsabMi4r6JVZ+HLGPGu9nL + h0ytq2d/gJXOUVhEDXKWPQckCJiymHbR6msRlbQXqzJCE7utoVhRCQ== -----END AGE ENCRYPTED FILE----- - recipient: age1a27euccw8j23wec76ls8vmzp7mntfcn4v8tkyegmg8alzfhk3suqwm6vgv enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA0QkdlMGoxdm1xRjcrZ2wr - dG80MjF2VTlXQ29sZHFEQ3hqMFh6dzB3TUVBCmdDV25wNVBJVzFWTFhqbTY3YllE - MjhTeUVlVWl5bVdBSk1ldkthaUlGVU0KLS0tICtTNU9MRW1qd0pzZ3dTeC9tRHZ2 - VDNQZXcwK0s5T3c2V1NkdmF4OWtoN1kKcVHI9A/dIkS3mjCUR5e/4D883xKuFrL9 - CSpjWkuasrep7i2k/996zovt2/CEl05iC7o1zrxHSQIZBZHHz+gpgg== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBpZXFYWVVTdHdvOURkZnhr + RTVRZVpIV2srbVpTR1RvdnlJKzJ3S3NpU0NNCnc3bGpiVjFkZ29zYTN3ZlNaa2Ux + UTRsaEt2d05qcExsdWt5NTduTXpmQnMKLS0tIE1CK1NhaDhUVEh1NEQ5MnQ2a3o2 + UWlPN2RRYjNBODdxYVNZZ1pVdklkV1EKWeArjzFczLg11VwbWPTgjBm0584OH0Ww + 4uuDaPhgDOTLbaOlUW+s4S6PYUL6ox5L+FzRuYWtQiIpeLEQH/AQVw== -----END AGE ENCRYPTED FILE----- - recipient: age133wy6sxhgx3kkwxecra6xf9ey2uhnvtjpgwawwfmpvz0jpd0s5dqe385u3 enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBGNzVQK29abmFnSm5ZUU1L - aGJrd1NYcDNrOVprSUN1VDIxU2JOZTRvVW5RCmM2VEZNY2lPaUdZTHBhNkZmSitu - Z1NsaHZuQ2NlWm8rZ0pCT04xS0lkdkEKLS0tIFJoeXBraGpXWTJ6OTc3Zm1HUko2 - MThBK29BaEJUT24zSlhKS1R6cjlsTWMKIHWdRctYML9g8GO5+Au/NMaNSAVXu37T - qPNiGZph18SWuUTwZHWQIt8WRgNN1FwxOBWKFS+qwLcE/eH93By1bA== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB0U2hFM21IeVcwb0ZZZDA3 + dFQvcDV2cHRaTW5wOVNMTlluUmo1bUd1YjNJCnVkTTE0M2MyNzMvNlc2MVJBNzVh + QkN4eXlWemg1UzVqL0Y5OUpVenYzOVUKLS0tIEZlcUF4L3ZlVXRYTTZML1dBNzBj + c0J6YU1jeFIwN1M3NmRFVFRUMlFZQkEKIXseDzKDcmtJn5oHbr61/0Hb/MjHaHwa + mlMK1oDI4SSf1nklLawbo4Bi5l7GZumzftwYLUnK+Er5poJnKoagGw== -----END AGE ENCRYPTED FILE----- - recipient: age1na0nh9ndnr9cxpnlvstrxskr4fxf4spnkw48ufl7m43f98y40y7shhnvgd enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBHTXFic0txbVZIbm55OXZW - VHV0NEVlREcyeDhsMUJTdnRqRXhTOUhadUhJCkpwdURFUDVrWVdkSVhFTGJyNDVO - YnprOVNxSXRWSG42VnhBRXBlbjJ6WU0KLS0tIGpZUklqUWwrZ05tVGY5ellZUjYr - M0d1aW5ZTVVVb1QxQWtNZm5jZDRDYW8KPC5ddvXuQ4Y9psjWd62pJRLUI75hIAJR - mfOsFKa+OOze36fFwAr/dgFNcb1ZfUPQxVUpKL9sQNjVWEbLQjX52A== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBPM1pNaFNkM1kzU1RvVnFK + WmIxcmswUDVSN25McUdkdjljcmJFNlJXc2hJCjl3MytxU041SndxSUF6K2gybmJp + Z1FvWmVhaGIyUjdPOE9qRDNFMXlzSlUKLS0tIEEyKzk4QzdNWHkwMWxEQlVNMXZZ + SWx5ZzJoeVpjU2VLTFp5bXVYczBqeVEKgvRSnWceBUDn07ebGO3MlUzQwirPnGh0 + q44FjPTMg/NmEMvLga33dNK8Np0zU7hbdUhNI0Sy+zZca3ulGsadNQ== -----END AGE ENCRYPTED FILE----- - recipient: age1sqs05anv4acculyap35e6vehdxw3g6ycwnvh6hsuv8u33re984zsnqfvqv enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAvcWEwL1RnVzJBV3E0a3k1 - Y2U4TkpZdGtkT1B0ZUlNV1ZIWGVFM2NjcmlBCndyZ1hZVVk5M3RUOXNSSktzUDRh - OTNBYndWWUhsTmRSN29mWGNBRlE0SlkKLS0tIGhIWW5CaDRlWGxVU3o3QWtiQ0RM - NlZlWC9Gd2Y2SDNRdG5rMnlEY0tEeVkK58X2gMSb4IDUH63FC85oF1mkaK2LZxKr - K/kgGp93aF96QVmfTl/Tw931OLXogVIeu1+JWSLGhfrUoaZmjvFU/Q== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBBZWFVWEhSc2VNczFGQTMr + VXdJOGtnWThDK0hLVHNhZSswNVBYM2RLa0VZClN2eGJqRDZHSUF4VDNaVUpQWlAx + OE5XU1p0MWx3R29VM21aSlBOaldISWsKLS0tIEM2Z0hZMjAvNklkcWVMQTBDeUZv + WnlQZy8wcG1QOEV2b0JHL3RWaEs2b0kKnMPU8Y2UUixfa0TWAkkeMI2e6sM2fR/6 + KDCCoJpwBMhUEBPBpxjDuNRL+/rmQa7OSfslAP9ZJTabY36kTNA3fA== -----END AGE ENCRYPTED FILE----- - recipient: age18qam683rva3ee3wgue7r0ey4ws4jttz4a4dpe3q8kq8lmrp97ezq2cns8d enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBBbFBqSHY5VThBMjI5ZUpz - cEZjcXh1YmxzKzBxblFVbVQyTGhXRlJsRW13Cjh2WVlxSUN4SFdXQlJlRzhEV0Q1 - dkhOVWp3blhVZXZMdnF2dmRRTExLRnMKLS0tIGVabEVnRk5rWmJpbXRZMDFES1lK - dzViOFdGNWthVm5VY003OUd3eEI0ck0KT/sxNPN2ucushJoBoi5mBSyrBAJlB3cU - C1FZI/Ui6caicGLmbPOfhflTRUzeKGjyZEBf3AFg+KkahTh2Xq4piw== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBHMzd4QVRQTHhQQnVISzZx + OS9TSm5sWGpidkVsWitndDB1Uk12elB0bG1FCm1tRXBoRlprK0NhMDNCR1VwS1d0 + YlV0QXJBbG9qY2ZIZldaY3djRWUzdlEKLS0tIEFnRHJNcDN0bkE0WU9JUURIQ1VN + d05kZm0zWGY5VGt1S3ltYVp6TFlTeGcKCZmtyrtptxxMkA2aHIhrPnMvc9K533tP + M7x/KcS9jyT5DAdcoqy/WWHS/TW8QqmKHtFKQnmJdr5s4RNIJXa05g== -----END AGE ENCRYPTED FILE----- - recipient: age19rg2cuj9smv8nzxmr03azfqe69edhep53dep6kvh83paf08zv58sntm0fg enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA0bW03QXI2anJUMUNHL2t5 - TlhlS29xeWhReW1kVkNhOXF3SG9xanRwUkZFCjNoZDFhTW9pcE0vOHU1NXlYVFZI - ZC9xVURYNVhQV1FYSlVoMVdQaGRvT1EKLS0tIERDcXE1cEMvRnpUcGhwNVBoYXVi - cVVqR3EvUkZaV3dLUmF1cldsM3pDcmMKQLHzcOSODSxMuaK/mBTpKIi5grfvrFAs - q1dDw7AcjJ7pGJRot87vE/7vznUqypG7F9tiM1ycIIMnU/8vfwwvog== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBpVHZnQnRaNEJkSFlDOHNm + dWJjWTZYYzNya3J0S1F4L2o0SmFETEhlc3d3Ck5yNk5OaU5SZEViT0QzeVJnazhm + MXE5R1ZDT0s0N1g1RE9ackM1RUc4aVEKLS0tIENUV21XUFJQVERiMUtTaFlqOFll + QjZ3ZFpIVDFyVjJSa3RDYVBFVXZjRzQK9OrYYIs+h7F+0QCbKzdfan+SJo4HpDKC + VCtJBW4hV2SJr2kX/b3OIsqz+GM1xJ1WN/NSX/qRIYFZRgYUC4hKwQ== -----END AGE ENCRYPTED FILE----- - recipient: age16znyzvquuy8467gg27mdwdt8k6kcu3fjrvfm6gnl4nmqp8tuvqaspqgcet enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBCOVRmWFFMZkR4LzM0bStq - blZaSXM2SE03bkxoMmU5c2xmSmk4a281Y1hrClNib1REajdPOXJYT2ZucG5zQ3lB - WnJkWEVuYnBOT0RMQzM4MnJMUGtRYkkKLS0tIC9qRjcrMGFyWlRMMFFZNHhoUjYz - cE8yd1VZcVRjZU1XQytxTW9seHh3cEEKSpJp1NnaDvOlv08uPuqE2GU+0L7GLi3a - z8cvQhSDVg/26r8VHZ6Bd9coQzy+hEF2hqLKvzn8F0sS13oCqIe+Ng== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBoc3FXUEM4TnZZaEQzY0VK + T05sTVlxRk56Y3dqV0UwUzViV1JWUmNDK0E4Cjd5QUNxYVZrNlVjMWh6OUhlQVpL + dkUxWHNEUkh1VkkvMVRYVXF5Z1JldHMKLS0tIDFNcjZwRDZvSDFVUVpHRkRXdGZF + VWVMdVRobXYwZWpjbzNBdndQTU5WTkkKROyTGW3B7oZ+SwsoE4hcoFDlY3/RmP7g + GFZ9rX4h6hLZl1iFKTTbJ46G7uc7akqjSckjqmzQZv3hOC0INw9EqA== -----END AGE ENCRYPTED FILE----- - recipient: age1azkgwrcwqhc6flj7gturptpl2uvay6pd94cam4t6yuk2n4wlnsqsj38hca enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBVS2tFSEphK3RRWHprNzBT - SW9BMC9SOGovS0VkZ000MWVnaWNiU2ovWHdBCk1rTHZaUmJ0NHUzVk1lZXpQb1Uz - MllyT29YOFJPMlB5bGdINEpOZUZJcXMKLS0tIEZBcXBhdUJ1ckFycGZ4WHkrRTBQ - UUF2cm5KV0wxc2tvUFAwK2p5QkYzNVEKYfugBqFSKTaVr1thWzVL/fO9wE5VgMLP - kl4Nc59xWMCcDOpN5LjHvIhgXS3IlqXnCq24VDcvNa7DfbUGwk3e3w== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA5TlhtUG54SFlxSVRNZ2tk + NUh2bERPT2RvNDY3Z3h5dTJkaU5aSHlLNG44ClBQWlIxNFhqd2NiSFE5RmJRWHhj + dEJReStLZm5wNFlQUGMyRU9pVjBtN1kKLS0tIG91WFdZRzN2SXRabkkxZGk0UlBi + RDZCdDZscXMzWGlTL05NTzVnN2ZEUHcK+Z3HF7+r7LsKhSV1mUmHx6ncceh8xzbh + KHWDdEyicQlKpMjBcN1yyZ2KFbSMRn3HyQIBcXoUnYv/glCQnRnBfA== -----END AGE ENCRYPTED FILE----- - recipient: age17x20h3m6wgfhereusc224u95ac8aj68fzlkkj5ptvs9c5vlz3usqdu7crq enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBrZW9UUm1tNHNEUHgxb01x - RFpPb05Gc2NBbTRBbG9vUW1jblltN0NJOGhJCmxvR092SnZFb0ZkS3dtMURjclFv - UEQ1VE9QSEhhSXg5ODRMaUFsaFEzWm8KLS0tIDJRWW9BZ0RxNS9iekJZREVRVlZU - cE5kblBKOXViVWNsa2duWElxMjNRejQKyrJJpTsLVW1tbfF8b27G912pwrzpWjtI - OwvF6a4wt/Ys7sq7mH3NJaoGRXr02sD41R6vtVOeImgFyffiRfto8g== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBvcVRLNjh1WEhpNXc4NU0w + d1h6bHYzVFI1NXZCaUlpTUh6YkJ6L0dISUJjCnhOYmoreGN3bHJnMW1aQ3N4RXo0 + RTNhVWd6ak1ESExSVzFVZE95b2ZtOTgKLS0tIDBsa2s0Y1NTaytoWDhveEdQd1Ev + YzcvTkZCU1hxdzZKKzR6N3N1WlhOR1UKELTa8FpcdumoMPUoKOPgaoCNWBHkKkh7 + VfBv/Ab/5W5qCYocFV+aTjj0iufNCv3/Cq9OjcXSbZTv1oXAm9oKnQ== -----END AGE ENCRYPTED FILE----- - recipient: age1wnympe3x8ce8hk87cymmt6wvccs4aes5rhhs44hq0s529v5z4g5sfyphwx enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBGT3JoRDhPQWVFRytTdE1k - NHZ2SkdpWVpVMmxVN2NxQW1ka2x0alJrd2w0CnVkZUcyVzM0Q3dEbllneGFUNDZw - Nm1uOGQvb0M0ZUFNT2MxSDQ5YzV3dncKLS0tIFIzdEc5WktrVWxhSDJjeW5PNjFs - eExMN1dzMlBGRlRJS0hncUNiWndJT0EKEDA1psXNi9uPSV1TypiuWSl1VbwCGP/t - n02Qhn96+ad1OSd2NNINwEEm+f19REcJDpxuOGESfGD5mfm9JuJYCw== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBDMjRuUm9TQU9OVy9pWTRM + bUVnbC82T3BXbTRPdnpoNkdCc0FQb1pJNkVjCllob0dGZUpPNmtmb1VpUXkvbjJJ + N21uUGZRREVpMVVqS3F3OHNmOWhRcUEKLS0tIDJ1SFA1dVNTZFRpVTdBYjczRTVs + YmVqNjIzSEtzaElkOXIrWTAyQ211MWcK/47B6wyxAL58FkKUj7/qX9gISV3BnmP2 + Q07HVr7v3fJIJKzVByTI5FUpdVkrbbf5nqRUUi1Iylm41qUggH8b5Q== -----END AGE ENCRYPTED FILE----- - recipient: age172pk7lyc6p4ewy0f2h6pau5d5sz6z8cq66hm4u4tpzx3an496a2sljx7x5 enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBrUk1RNi9wQXBxQXFHY1pC - MCtEcGRpeHJHQUxUall3dk93c2pNQXZKMkVnClBZUVhVOEVaK2lLQzgwalQ4RXUx - ZWNnWkhyUXVPeWIzZHBWbWVnTnNFTEkKLS0tIFJySTRXZDZzYjRjSzFMMXdYbm9H - Z1RQMTBqVFJzSlRVSTByUHZSZjlhdncKgVBeVyhPQLHM+RFIdw386No7+cvLspak - wrKKti2vPegLvOvisGCXu95SO0WjYYBjjuXaCWruUlnUnV280nZnww== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA1cmV2NnFvSDJUWERqZHJY + M0hNNEJZcFlnelgxYlhHUmM2NGNtdFBYbzE0ClJiaENaVW1aR2wvb3I2aWtQM3VQ + QXNLVXY3bjZXTEF4bGZJS3RkMm5XUjQKLS0tIGtackZybkcrZ25tT1oveEgwb0Jq + V2p1NXBqM3Nac0Z2ZzRUNlVBTFRSOEUKMlubiDYlqv2SZr+yMrZAOVXbO4UiIWH+ + az3wjgvelc2nhPoqlt67XP6RdjHsAdGO2RldlnV50x5SBJrdAy/OnA== -----END AGE ENCRYPTED FILE----- - recipient: age1p7pxgq5kwcpdkhkh3qq4pvnltrdk4gwf60hdhv8ka0mdxmgnjepqyleyen enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQWFc5bjBRYUVMdk1MZzg5 - SGJUSENhQWVxdGNzTUhWRVFRbnczenI5M3kwClZNMEh1NHVINzREWUtnWEhWTDRy - Q1JWUUNNSExCR3VDajY5SFp4QmlPY2sKLS0tIDRVSFpPSSttWmw1RHd0MXg4aHZP - aHFRb2hNOHVzQU8wTVZKMGxPUjVFVmMKnN3oQtx0sCAZ/i/v0APjh77Cb52XIUb/ - 26UdtJQUfefLRaIxOyh9Dqr2fUREZB8ky7M9BOL9a0/xFGb4wp1q2w== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBCcGVLZTdvQnVYTndIZFJw + RXc2R0hzakpsbVR0enZzMzA1U3JGU0hyN2h3CnpkNTNmV0V2ZzVmV1ZxODA5SCtT + QkZNcExqc29RUFN5Qzg3Q0c1OUI2K0UKLS0tICtUVlZNVzFZNnJZVThNby8vQ3BC + RTlqR3BDVmxQME9sZ055ZVk5WHl4Q2cKJ3/Ae3XLPmMrf9GPZCTK/6Q2latQOHtR + cXdPdTFnJ6C2egv7V+9ln0MEN4Ge6AP82LyOIZ9WFEqM98+gd7ztaA== -----END AGE ENCRYPTED FILE----- - recipient: age1sv7uhpnk9d3u3je9zzvlux0kd83f627aclpamnz2h3ksg599838qjgrvqs enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBpRkl5V0FEUUgzaTQrK3Qr - enVNTkJBMWh2NFlxMm44NnIwRUtMbEVUSTFNCnYrRkVvVmxzVnYxa28weW84ZHoz - V2RuTXkrTnRTbVpvQVFMQmJDVGhDSkEKLS0tIFhZN0lNeFNMWWduamdrZzZ6WmQy - cU5NcVhMeFlzY05NWE5Uc3BERng3QVUKhu4E8mUBrePpeSqbEKMfu8PVDhFnEQC4 - uRXF2Zv4LpVnSTlHCNiL8hWPcup85UucCx+sM2ZA/GdHOC4tTNGj1Q== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBsRlB3c2x1anVEaDdoRXRs + by93SEU5TmZ1YXhUUjVKd1V1RG51WXMzeG1rClAzdU42Ui94UVJOOTJ5RWxkZFAy + QkdBaUp2bklIU3NLNTVDNGpyLzBVKzQKLS0tIGxwYVN1Y1hSUHVpU3NFVjVrdCtI + QVlDUjMyQ21NYWlQYk9qYUxpNG1kdHcKCc4gqtMg9ZiN0uN/FbnVEBESCXHCvPY5 + hzWP0/56uxjBhDp3RRH6TdeF4/oly8rxm1PcYVVqF929UyWVPFJqCg== -----END AGE ENCRYPTED FILE----- - recipient: age1dkecypmfuj0tcm2cz8vnvq5drpu2ddhgnfkzxvscs7m4e79gpseqyhr9pg enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAzcTdGYTU1TXpvOGNEOU4w - L0R3U1dmWUZjR0dHYjltT0g3Wk9ZbC9jWGhNCnB3WlR5WWtWbXZhQXRKUWMrUFpJ - Y3I2ZXJFdjBQUkpTZDBPUlN0L1VjcEkKLS0tIE8yZjhqS0hISi8wZmhhdDd1TjZm - Y0J2L0VmSnIwaTZ0cXBDUWNCTW1La28K31/CJ3SSygTjeUWjHJvYdbTL7Vb+GMbL - CfF+kwMxqeLW4mhoS03l4ztfpLox3jE9qZNOzifPcOu0A/SpNwtwIQ== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBncGwrelJRYjVEdFVTRC8w + ZlRzSklaUTVIWU13dEIyOHJnM1BnNDZ5TmtNClZVZjc0N2tVbGtnMEIwbTFsb1g1 + NW5IVk5aR201R2syWUE3OWxtOTN3Yk0KLS0tIE1KMDJVWnBRbk0wV0k0VlRlbXNY + MmpBdUNSWnFNdTVyMC82VGpqWGM5cU0K10XczLAgbo5pT9UhLIr79biVx05bYig8 + Ekphbhi4HLHSn4RGwOpdpFK0NdiAO50Zqoryscuk7e2zi9DPEoUozw== -----END AGE ENCRYPTED FILE----- - recipient: age1mdtnk78aeqnwqadjqje5pfha04wu92d3ecchyqajjmy434kwq98qksq2wa enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBid0k4d25FQk5JRTJYUnVq - bUhJRWdweWtvVDlibHZzYkpjTDZmbGgvakIwCk16Qjg5QU02RFdldWRrUmJnUnp3 - c0NVVlVoVHByRWtidkZOemJjMVZqRDgKLS0tIHlUQWdlbnV3K1laRUZDbFlySHdR - Z3VsUUFWNWt2cnVjdkJjRE5uejBPM00KbZ7SIBK+v2R5WwENsAfALaNNcZWcyjcg - AqcyweIk+9OwGsP7QN3uL2UaDF31revbGcWLyVuOPd4vpM8X7ifiAw== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA3WTBGNXpiZWMxdDZEc3hH + VkpXQTBQcFp5eVBLd3hON3lHazBCd1F0S1VRCm9mUGNZNDZqUElaY25wMXlHeURV + L0Q1K0NPcVVEa2ZZWElZbmI5b3NmcWsKLS0tIE9ReUV2dnZCQ205SGFuVXRqcStS + NUdLbDlRYXo4NW5oNU8yU1oyQzRLK1kKRIJgHNFGxVrMEwzHbeFKkyZLVzYo1YL5 + bHsgL+dInZERlXJAwJrOcB+GIlJf2tcTQqPOmzmQiD96eXmdgKeyYQ== -----END AGE ENCRYPTED FILE----- - recipient: age16pxqxdj25xz6w200sf8duc62vyk0xkhzc7y63nyhg29sm077vp8qy4sywv enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBBaVZsRENPUmpCUFRGNWJE - SE40VUdZOFV4SzgzNWkrRUwxOUw0bVNUSlFrCk5LWWpHb0pCM2FLMGpzazExanp1 - ZEFZS2hqT1NITjE1cU9HbmVTNlNqRG8KLS0tIHNKVGJidE9tanZOSytIR0VBMFJw - dElnbUNLUFZKc3MxQVA2emIwdlBrMEUKkIz7O8sCaj3PBz4hDOumS87mE8//evRE - H1Lkv4cNkZlVVdmiQSuGCVvFmDZjeEMzPLyJu4SPG5gzL18izH/ZDw== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBXOUNpUklBdU50UXNsb05m + dC9QcGpySVkxTXVWb3c4RkF5TmpQZzBKUUhBClVNWXZMR29YUVBzdnJ2bGdBUWZW + TkFsRElrYXZQWmNoTENsMHFYejlISVUKLS0tIDg0QXl5N1dPcVdad2dqbjRCNVNC + cGxGd3Q4cFh0Z2pkYW1lSnk0SlJ5dFEKgOnmce7B3puHLjtIjpoaU6nDy/cLxpqf + O5orF5Cn+PC7W4Viqr3heY8Nf62JMglzpC5h/y2YsVr89v4JOOTVlQ== -----END AGE ENCRYPTED FILE----- - recipient: age1hv7m3xypesdfm0dfzwgctde8v307g9xaunnfu2687y0lagcs5q7s3eg0kj enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBZNFB2M2sxYnZVS0t2MzQy - UGJhWFI0aW1CN08zRDl6aW5weWtCYWwwVGdNCnVHeWczRUFJQ3FnZ3cvZmV4Mjdh - dGorLzFJWmVqZVIwa2thZ2JJRHJvdlUKLS0tIG96VGprY1d2MEZXL0J5SU1MaVVH - L3RhUC9ZMEFXN2Qyby84cTZlQnZtUmcKJeJEhlkhQ5r1tbruPPETo9kgzRArTFeS - 93wucRCN1SSAM9ATeJ4On9xLHLcRMjF74/SaLLgp631pHd5hgj1eNw== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBHN2xPbWtaTmhGbm82ejdW + MXg3eXlWOFNhVC8yMEl5K0pPS3Z6eFpTZ0hzCmtWTUN5UXZkRHg4Mnc4eFprMFAx + TE1XOGNHTll0cjU0cDcrWmcxSy9sYTAKLS0tIDd5Zml3Wk5vVjJpT0ZEVWtTc05o + enFEYWJjcWFaajRWOXAwN0ZBc1dlTzgKL2aoMfNCJUNeWY6qhpnNUZbo7K6IkfZl + R0kH3Co3PthwMI16BuBGCXkRBwEA7AY8MI6gWg6pVeuM35cf9K2evA== -----END AGE ENCRYPTED FILE----- lastmodified: "2026-01-25T18:06:26Z" mac: ENC[AES256_GCM,data:plHNLOgGWwNWbakKG6X5EOxwERE3rvYO4EOAzY/sz+uM7cZBEnqU5LZwjlD8B75hgRHqpnDBF0JbHgsEwVxfJJRL1phkeMJFOapQMjZVWMz6j7eb1hOwpdktd+bpuimy4XCD1aOxOoInKpFSK33usxLfyqSxjFDM5+i6D22qBTs=,iv:/iOIfNuSIDsa/UKLP0d63tpOrYMFO3Bk1qPssY0AzuI=,tag:k+824MXD+r0lNUcuvisudw==,type:str] pgp: - - created_at: "2026-02-18T08:31:29Z" + - created_at: "2026-03-05T19:17:51Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ/+PUYqauKhPFT8MaZZhcCGuC8LRQh8VSEvtudxuSZiirow - aJRAu07m91j5KgAWocyDOjfVngAXb17wL4fBED7bFjrZRAWz0BI9j925tw4bQv5G - TCfzrzYvNsdzuelCMI1ZHz+B1zBwpfWK5VBYf1Thwze8zhRpbuCnjuRe0wXvpz24 - /HHmPqq0su6o4Vrxvpo37uuUPfCBS9Skf5bdUajKlVaovHQ5iSDYLJujQjpHTbtI - tl7+qDQShN3Uk7Gt86h6Tj6hZ7BaE6cKY+lx5XPW942739En7qgIzFkNeJUrhrLS - 0qc/bLiFOmPasbKKKH5QA7cjDEyPz9rGJ7GpAQpBKQR4Q+/UJtG/Vb87ObHE4KZt - Ib0KTUWJz2zdAGao7icgZ/vfHv7Mib8vyNGHzxniHSOLFC6BIbhgwVPVGowq1qBg - 9byzpbbCoUSMS0eP6EDHo7DOPD9DzuS+fwuI85T9yVdrl2vYIMTyFBcyK3o4UcWK - rey4eKjbjVSvRaZQWv1UN0zdrfbIT053N2LbilQJUUJORpkcF9sQIyXfvJcl5S/L - 5q/hzOE7kDeQsWJHGl+4BuYo9tOCLywgQMPzXpwAuQNWi8e+Z7LuiKkpMvhe8KJB - 90y+xOmtdZySaINhd2Ok6IjSd+LYfYDMQmgkNmgVXOLL+dcVePaCAiMwWos45lrU - aAEJAhCwIzsnuIcTpEGHFAK+374rw+YiqTP+kqImnpOZp3J1IpusNDGQ5/2F8CI5 - uWii4qe+kcj7Fy8Y8J5Gav9iZZwn6FqlJG6431+kQpb4FkyhF4BYeO3kic64XBvC - RBMnF2QS8jjJ - =Mpvw + hQIMAxK/JaB2/SdtAQ/5AV3YQcYm3Q7IDXrq5bYMdvLN1oE09XC0qyOFWmH6ZG/O + 1tfI3q8qaCV541x6pbE41PABXs0xpG+vRczs8yZkXs8D/m3uPH6eQrAy4P0YpLK9 + fujbSB6go3dKhFd8dh/NncIRyGtatRSYWs9vYs/8eSevxj1jIEksKpz3QOSBbnuV + f0ScW797+3SCV9/Esa6GaA9Ti2GInCJyQ5CQHqRoc8kapl38Uzk1947qBVlcavrG + EaV1Nu0aN4STgpbOYUJOqAOAWna3b+OJ/RJ3XS08IQZJ/6jjQcbotXjCTIiro1Af + hqFb+ovyfbbeqVLP1H3iFwuNLOQCVzTJQoY8nw6e04V/hHfD6Lwn9QEhjX/tssQ0 + vffVNeuVgGQaDajJCc8TYc2Vpq2XSw6q9OeFvT8rQFTT5OSp0GVXDMmr/uRVp498 + 6QMr/R/sPMUsDdc3Rgo2KZmHnYRrcpxfyGFNlS8yl4yATr25oKbs64AXYY0Gx80h + RDWwnEcl0F+lG5Udat0K3tJ+dJglDANdLWE0GK9DFdFEyaUdZBJiT+ixfYtHE8Hg + DpD+9m3y7TSIfjPJZQU6K4YOAP48mcwO4Hbt31Jzt/GgbORueA2GtyGos4cwRM0m + whbOQ1Xz/fVrLmgolG1rTzHL+3gYGe9cdl844k8Hq0yolm72o5AOQxAZ7qllv1TS + XgFXYDJaeXYQmSs36IPBByErcvGrrkpoaRLL/hIp7nSfY6FAwn63noYeq5W21SnV + hjb3pxhjkhq9VmWpgszjG9BJ16rjIqQhenFKn0qEohAPTeGtMmE9A8wmaapuMxI= + =Em1l -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:31:29Z" + - created_at: "2026-03-05T19:17:51Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQgApH8TXAAE4Nc43RbvjblK/oEK+plXYg2+vTf5ExPkhsBz - Pw91mDd6LeL/Y5FnlrA5VdasGynBL8J3gmdx9DbX+TjV+kvIV+n9KB7v0kkQB7VX - +CeA9vmlnCDPe1ifilkHiTp7Q9uYTT/hjFLkgimBZ5HsHuBTr5nsPmNEZBOBkayb - uwr+bdYoYTYJ3SmPmE5mqERIEIlevZxtLiRnzcGrVCPV7rnWlOYct9CBvAm9M4AG - ww3Ymvlwi2fUB72OiVraKSbjw+jAbmP6paLQcbTMjtsidK2xzj3DozMAAA5CBjf6 - Xb5N/t/eT79l01+KBM+x5wD8J2jgHmjRlY/T+53m/tJeAXjHcwvUSGfRh/e+W/GO - uK0iE33MqqwD4dimA0uNFTsKfiMUSqnqngAW1Q0DgrdbcpOht3vxHgiQtBKGkt2e - uT+rwDsM1yyI4p7tQrkIxPxIZW6nz6UgtCwVQkbgww== - =K/Yj + hQEMA1QflAioE8i3AQf/VLQFQEoj6x4YujK8e4rGXm48Ajj7HQ6nWfozToU/xv4v + Ug4j5gFQNj32GBoyCyDaz3iGNO1jIrdb/OoVsJRd7E9V4zCCIXLlWtuMwEPfRCTp + a9K0R7Hrk2LP0MIpr93CwJjf3oP/LyVEr+/hb3W+RM87Lujsd/6DYFq4BXUHNgA/ + vT66F3/BFH8rPEiRUlXpZe6+ykgjybG/T3uusxXawAvhD7u5e4fLN2wQ7epdRvk3 + 98fZOvVnMAb/2rhGsQb4rCLMRIf2ZNUVBKyEdO7eRvE5a6tQGRaPECv91M6ExnYY + 9FS+ZZidrSc0XnD87titf6jirNnAH3ZVbCdzLwSs39JeAdj1o5nONIHKgc9LWF63 + a/X60R+sYO4EYDCUowzmiV2HirxIV9HzlY7skDczH8gcFq+aRPHbxaEY4gcGVWrL + o3anatwseO+5eB/pFI1PPUjqP/xy8kSvONWExy2ixA== + =Z889 -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:31:29Z" + - created_at: "2026-03-05T19:17:51Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ//X6sphh/kEpzJqAyoq3s35yvO8euuzl0SW5QGAY2GBqrM - U5JrDKK9K+fEotj2TRnce9y7o7diaJzlQXLAsHt4uZ8l4Es6CiBDmjcEn86QXmvz - Yp8F4cxKohfLnWHSBX6Vs4meZIWALEfbgLCUr271P+SuMCpLXFSNSjLDXcRUzrRg - gYHHJtgCPDWWh/YHyLsfxfVNyt8rXpQjQ+Y08EBwztKBfmdvQFQDiIrrukgqoT52 - hhJg/S3hraRk1DeD5Y1Tpw69sQvgXYkUyzq7FQE68ZjvnLWlm1wdxiFhp3AquiCi - yQGGK+F4QxnzLT694wjWfvDLfiURgl7UAGOVu/I/KiUo0gMnND3ELrLJ/2vvNDh6 - U5WUI6HjgQD2DWwhqzdc/5IhBafc7BMeqVRrIVNhN2M05osZ22AZ7pVWmIyVSiOC - sNdfBYJBpQEd8EpE414qBE39GLt+m3Upk6rYAnTql5adukNdyCtKPCsXM8+8OaMK - sTzUEJKA7O7YD54CvmSkw31xCQwKWbIQ4Mg6l6RIlqXyJjo49SU5PKnXtM2o/Loo - 9Q8IXsaT3rH4cAJcmm/Y2bCSvgL74yHGomEM3UFMdL0l3mmDbqJLRHPBzz/ISXjq - ThrkjF6Ko0PI6i7vN0toBDjEAoZSAHtu/KnMklSIUKMLBlMx77+IzwDM8yVHRfXS - XgEyJoEfmig2KCOLZcPmwyo7TpylNWnSKc/jUOKqOO8vj1q1pOP1rERjRtMd3x0S - SK5Cf0x+sK5TXAOR8bpRQEDySv+6oGxB0F8GnRlamGDSRIMf8xKCceCLh8wVibU= - =uq/T + hQIMAz5uSgHG2iMJAQ//cZi0yzRs93r3pZ/f2XHms068sKJcRT9t8qTjjuEeJy+F + ITYn14JWTwgztfU9F+nBZim0wNuc9uZmqGuLBy6ILCSrC161HsoabLQrxfTLROG1 + F2Cqs7ilygurHfOqDljQZ8Mfl4bKzVaPzw3ROH9ATN9BJRmvXwDBSaBEIwzS4fmN + FR+dedC7dKtK6RG/xXnshhLk1gMhaSyW2dT4JD20Lu1DK6eUTjNyQQUrh8E9pYUi + T1u6L3/hscnL4QkWmj4aw6d/T/seceGtkr7q/WfzFIKAOJ+9OvBvQi7EdZMiAQi6 + 1SE0hgf7zYVUWg8H+Q3+6GGmmM/eh2AJxH4TVQVyc5Y8fHxhhorUwiyLSwZ+SanJ + SYXePO37+MEKJtKu1nKoMK2EgOTXDVuMmMM6C7o76rtIuZaV1Lcl/idzxvedYO4s + VfnMDB/1iQ8sUDtAWl31nnygZjZ1C1+0XyDhBeC4FXwnS3OTzpZtNhqW+aOCqOgv + XoBXIozJme1365Sd7LA4cFJnv5Z2LJJbgXjSaK2TwnCgFpTKyTeHaVMiQAV92Xoj + M1MDK+e/BeiTOROMAr/EbfV8HOja2+8YIm8/QaAOrYcDi0BJm34VFJf58+3gbpIW + ieiIIsoXrT3s3FasiQX8jcEJryEp8duGhMJp8GgnJfHzSk7T1krN9naJWCo+edTS + XgFOBKi30sJXW45A78KwHh73Qa8IAeGsFf57taLThtIa1pkO5Qq1keMH/TVHm2YM + Dz4FrOLDoLabAgeD2m0xWAEp0lOeRjJzmvzXrnkxAfisFXiN6PzWIHEWW+Ns9eo= + =Kv3Z -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:31:29Z" + - created_at: "2026-03-05T19:17:51Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ//R9bnzixQsimi7NBmtQHD31uAQ07BOsFup626YaGZ4FUc - XszBt9Gw4CyxqGVvy3IouLJuv3ad8BT9sD1JBDy93Z3EIEiVV+lLiCZMBVEqLntE - kWJ9NDfu4bmvIiP9aCoo5ZzJV3t/dHvueiWwV/lEsjvUA8m7J+XeMafOkcaJ0Dg+ - ngYzBqs08iqvaPqEHgVE5iDZoDYRi3qXN+W2IBNlyAJHqKWLnbYRhLoJ2B+idK44 - dO2Dnsraav5Rzg+Ai2AS34QTKxhK8uM+GfBQ9+eV41Vcavhzl/TiptqYUZpwyBIl - lk8wgHhFzDpi81D2AqONHjwk1G/+9TQXl4hQxQC6AAZEiS6UJXrf/qCngqsJ16FC - 6bCSzpKxfmOmnV8thH+5CL6EF4eXffHN3oNfO3dy86+QrOlFwjB4BC2lCM3p8q5z - Ji3WO/VCkevLoR+hq7rJbF2dqRiQ1xqcBAtvFINdsQZlmllWJFsNEKW6dxFddu6+ - SbOQjOBteySYwgaRqPUma1Eoy/+hPkZ+ONQr4f2BWJIbptDg/cIhaFftXxZkVCPP - ulseWnQDBEzWhrGGqdiXrLdeGFE2ncPMEzWMaMql/sQrsoIAMWK+g8R61Dbai5Y6 - dy0s52DzZdmaUPdoTPqnrZRxjtDDWi4t32+ITqrDY/2fhSJS/urNQB1NHjtmSQbS - XgFlebGty8/O8xzpfq6rO+qgCQGuAuWweeadwoG862vmtmbL73UVrqJWldb/n5H2 - bQtxGCpceZQnV2f7tT4D230v2ETz4NLIj3//INQgg4K6WKAUpecjHwW+dWgQXm4= - =cPv6 + hQIMAw5vwmoEJHQ1AQ//SPc7dXhI5fYU7h8EcIjTeFBZx7N3XxXiNtP97nou1+GD + MI/+Nm/Sb4Y2vXGP0N/LZPB8j1Egm96P3BQM6Y/s0F1eYUHIG4rmEQQgDFK45Z4V + x1NqfobD5h7wuY5A5ZPELU4qJdFULmouwbNGZdNrk/GC1aLCOPI8Xb4ACWBoMDmX + rjJsvHIo3G7pc9qnd4kjUO2CtOAeGtGM3vgbcKtwS53x2+EzZbtJ0/QCUS4PoBvQ + vJXcEMoJ6+kKiIZdxWyAqmm5P5NxFISQTQpogOi30b3TcFNOmPdwh6+kNqM4jadn + L2LY8JhNW7nnmHJ/Z/aB29pebgpd7dwwGMBMhh2qhT0utGE3LI2T//S2qsOOXrNt + W7eZI4QtU95ByUN4oSBhxMnOd+uPhAXOKPXNZ/ZrVGEy+H0Qvfw6Im4fqsMKEvK8 + XM2bM+iH2h2IeEbsehjWcti6u4EapVhg95bG+jLH9irrHOhWfHRo1nk3ZU2O9d/d + XCafQfUM92Ee8P5S66V+QwLHRprF4Prq/RgBgXvBE7In1TPqYnGSZbYmFKBU4YGW + yfbrySe6Ta6glH5GNpN2359yGieUSMzFtn6AVJQJiISgUR39yLwAW4LDp5mJTXXc + YnucQD67Kwo+g0IJcvn/NQe3NmcW6O4SzmAo4+9u6ZbqL871pQLqQ16Ge+4qC1HS + XgGP2h+hdd9Ujv/qyAGCJPYXyaeqQgNrUCl/wYsBwKpti882cp+ibLSefyksSNrL + YKwkTO4OU1Os3WAsLKCm2teFikIZNuGRpll/LUdJ1lebcgrDYksi4BCbfmJos5Y= + =xzzU -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:31:29Z" + - created_at: "2026-03-05T19:17:51Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAohNT02X2wZNQxLcca5SraqeMStMaWaOgEzmmRpI6JVkw - t0A+ESTVyqbf1khbl0lOnIWzwePVwuVYEcYDgAy3jRVVVycy3c+Zm73dRFtBxGgh - 0l4BfHMMFEseBgp32V3sRBM4gAdW40jokaZXPTXOFxtNziA2M17RW/k6178lfAX1 - 8ioIW98qHUEYsHE4q4VjqNcmqOqtWeCw8GxkqChjf6cQj4nKhp45Jt3lSlovLNkl - =Nxf8 + hF4DerEtaFuTeewSAQdAqWKRSe4mXOoISfxgFTCrz8z/Hnf8Tr4QhK24q1wgXT4w + 4KRxQZXkkMT1t4CrSDqfb0EAMmVoy4wZ56t8gIjhKFeVWkpnsTPvbLw5s0X8yuur + 0l4Bm2KGkal0jkeufePCLRjIEIceNacsoYjr0MAEnbjaW7Fz5Pgx57EnCcXeTc6T + XRlZeVnldD8MVkDd+DRQ5xbpdRVuy8C6dF6Ilq4gaCjtS1cawvVDGtLE5MswJ05j + =EhTC -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:31:29Z" + - created_at: "2026-03-05T19:17:51Z" enc: |- -----BEGIN PGP MESSAGE----- - hQILAxjNhCKPP69fAQ/3dJq8Y6uaZmZsQgzwdyxFnZqB/uClepzdyq1QuNrG+kE4 - qxR12z/aaN3hWYjv0zrF9eHLKud3dtG6Mt6/qEw7meAvPwanLWqd3KAnYnOBuu11 - sil/bNUWagMt51u2fz3/dx84UCUkAfWcRd0noPGHekv1ZULVdR+z6HWWN+0Cn0+Y - HB7qCXPDIFwF2hVY5jMnuNABLoh6DbymZWpJAUy5nS06rN1F/NI53xjdFcV1HX33 - DTsRx6BhD/OcbO+ew8fvFjBRtubJsvKT17qUcTf8e2AXWc71iYiZ+r+RUgzBLKQF - K11X9FMW0do6h/Gldd6ny7VNty6w5+jywaDpa9iat2iQ3RKrVWsw58E88uiMfv7R - CFYkKCez0CS95isvk3M2QIeFAyZJrRcAgiAlO3UCnTVP4On7hQIA0K2/KIXBOcMm - 523p9u1W06jo6uvy656yVCPyZ5hXDnnjneAWQxOaxpoOacxgFVMr08+Ouq8NmnuC - aAMGIN+JvkR+Xf+PFXrEK9Al8DjwqPhI8HDIsOlER0q7WdYwe1zJPRscTl3MajAm - feKHZtW+yDxyTvn82Hfx1FHtPs+I8HzgnodSVooN/uB4CyyrwXPDWO/PhGiEgTZJ - yLrY0HqgaZjlyztP6M5tEsPt2GW9gx88/fRFuF/8Sfh/xQEyt3BZh6tmChtSONJe - ASgWW1szUeg10GtrQy+t3Hexyh1xE2HPB3101A6tR4BEcQNk6w/bGn3Eg2aDezA1 - imHHmmrmLBbfxFNvKu0lCtppPumfyI3TwRboOJk2phE13v3H/B7DgXQZmffN2Q== - =mUK1 + hQIMAxjNhCKPP69fARAAgpGMlPyVL1EfmrjANbdjzi6eWrQEmxY3KgHfCYQrfEMz + aR3btFrlMURn8HUx1CpB4DytT8pWDNeEWCyIsb95HGy/JzvZzeCFXjTJyrhLckv8 + hpjbyy9h13fivIp1u9w0/+OE0ATuEQPOFBwRp/h45tudSxzy4NkuIR9tNZuxavZt + Dx2MqFyXKs+BRE5Lz76ZYg89F+jdM/c+rA0jIsJ7mbW3o99zWAqERn/mE1s4FNAF + 7Z1rGkOUnRHOUEDQsf4yN7bAJ3XBUDmA4xEIKBCXGP6+jbdzCMsDmcMPWfE66cRu + vpi5DLOGJp99BdBBFk0YDcLdH1eU7UZvxhquG1ZP/jSRr/GKc8+20tXgeG78SeyH + bSQ2qgdkt0UXwx3k7YRQ+JkhzpZ6gJ2l/hHAP+TctEWOL6DTayp+9einEWJhUBgY + Pcg6c6ZwBN5m1YsfdKoRzuW1BaMDzCROG7zwtAAyJpnzSGyHLGW+Sj+7ReHMzj0B + GWy6xgiLIL8fO5FCEEM4oRYbP7urwDjK5EvqtydVXJjNb19sDuzlMzRaiesjYx+5 + xFoeM2a1gMO88oa6Wapmeed78OuCxisTRDjAo4OXvR0pX/53FtyfOBXh22l1+DmN + EMQTp6iNBGWoUxfmxPg3PfDRh+EzxOxt8+KWoIp0QrgRr8Dqnsi1/2G5hJHq8avS + XgGVpqBtVre0KFZThJyj107r0u6YubMkcWIkSvhO+lStJ903yr5s9RdPkk2S49fn + ms79HFuqQQAsT/foOxfdt27c61Vyk/muQEOW17b/xEeGDRVJ0hLwf8jMo/6fe5k= + =nqL5 -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:31:29Z" + - created_at: "2026-03-05T19:17:51Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ/+PjJIooojyEiS1YjLOqf0nyxu1IJKjjX4TByjwMr0JGSc - TQcafu0guz4C0NqZErmbEi+5plSIfNVEJTwH+CWQNmblD39fhO7rdyOVf8DCbjbL - 2jTx5hK4bd8TZFOqYA6KXu148sHMtltSt9S/6Po57ucBkVkUK7OVPCoc2JYp+E+D - BBBxEhMbnARZBjyNvyvEioFFEK4uddo8/XNlZW3gk2pC+ZQqHfvSfIHDulMOqPH5 - E8EnT2HjoImzK12uyPqeocpxtgGmDtv0xSimvOkaRBqiHm0Gz5uFHwGd3CV7/3TM - 9fNgIZ9hu02Im7GPxZUr7QSYQMTNzZjyxmh3bXQwvOWPmhg0CJiy5Dd05kMlz/uB - wAjyjW91FCq4GABA79BV+Gcg9pp1MrHc1Yqbrqa4oIiyuSm+SqGu2Zao6A2Hc9Y2 - 9R/NVagExgc91a6e4aC56KLc8P/3+fBi2XIXupkRvB8OcvFBWL138jjQ+r0jojA8 - r//2QwBQRUbo1j6AmYw2KDxGXKvxpr1bWEC/aKHtJX5YoWzptPMZGDB1zc1jobk9 - oyJSuJIyZ82mZ23NXD4SUwLfVZseTwsrd8igoMBCsjnbq8/RoWoJ5xV1MUnEPEGy - w0QwWxEE77oCPTsMSM8quxduwGL8ILnHwSg51xld8dbwasDZm03A67QlB7OJuNvS - XgHLOmP7pm/p9jyiq8bS1ILQu63erFzQC/Qs4HHA0kTGcpReJyWpKpe53vw4zRXH - gQg8FBkCSwaNq8T4AYO2W5gWN3HArmR9pPr9sJZ1SUTZuZvlgImo+GYWkb67120= - =xwHJ + hQIMA1Hthzn+T1OoAQ/9HNZYGm0BEAACffBHZLfVNgNhj1k9PhPjKPhk6jq0/TF4 + 1Q0sF+NL4n0oivIx7BRsIYiVuBbblelO7pV+i2iem+X1J1LO2dQsYqt1d0Iui2YI + SZ7bcuw1y7ZZuaWbrxDdOj2ExImMRyQUTSfN/kZMmdPnl8pgfFh3DO8lbATAt7Aw + AHTXLtyqJ25891K/P7mR2yP7sHKCZUqXAY5VAYAqBN/b4f2CxmyJSsnZlf8/l3rO + m9wbuqs0Ofp77eoJYqhiSlfXecQ/mnoJ17n9O4uf49xPMJf0UTvzLzl0GKkZGjTZ + htNfiQ9azeLPmPeCCqp2030Nf7rd+Nc5fLSkmgs7xI5Aw/1FyiVlV79aNhdv6MBD + AGJOEvd716KWJPsQUwchT3AdLypbFdDndvrw+Gf/Nzz6R3bZn3DQpC+tGKxteN/X + K2vItobCGTXgPuRNFv/p/J3I+dkmXQ7uYtJLD8ik02QV0E/sOHzJrO8xKIUbFv5x + vmRoh8K5s1ccYS25ZWo047vOuMVjDYLnruMJvGVVjsQpBhGr2xgPJOR/59QGA5lx + tQcRSeRyHq8wL+I7R83wykK7927rprnvZ1vzc2qDPW9S4hkJuKiIb05+6RS7eqJ8 + 5D/4SkFw4OiMpYthwukYAeBe3wZ9SKMAiPyjyRIGPZIriWGI9PX0UAtUSIzOB4HS + XgHr+m7jT5PRi01X2MWyV1OYzLFtvm+GiR/udGR1lDqGJyMQQiojjXNntGi5TG9e + 8Q2T21zximAuQ6Bmly8JjP2Ma5fAVw0CmsAP83W0K6syiedutCK2xkTUes6tzEU= + =w2YK -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:31:29Z" + - created_at: "2026-03-05T19:17:51Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqARAAmYbGFxAvY8ter5cpbnGnWlUgcY23bmbMWiQMAJJ/F+qi - NZ0tJe49aetMa1PwQxb1EnRvPhBq5ltDO4+xmgoFlpWGS40vTYiCKXlow83iU4q7 - BvjwDDgE7WIVqyWDOrfXiifiisPC9x81Z3XlbW5LTmgjGZcnriTwS/ocKcB23lXz - OFw1G3rmp8ewr5KYEP7+MZDxCbxMpAldq071lzLfxbLvnkmPTa+vE72yE3R38FbB - H4drCc8lNsw1Fks1qWr1vaj5erevzBO2xMru8WqOp9we+cle2bmsTEG0o6TCisWL - UFMBblAUTSgyPtLlQq2k3NF5b8tzvI1z/bh1OgX6GGigdODL59IGQV4QBUmeriHH - WSAm1TsBRoYf0IMaJ9al1oJkV8JTwY+MMHf3YQC0WJ3N4zoZJ9OxrQGTmn73q5o4 - Ju2fi0ABOGaTQPTN9LL98Jb22TS/ex3v8f54mSxwZ4g6vG6ejxAONmwSGED85+uM - HvpyphFar/aT2gE7EVx8V3+Zg+dhZ2GsJ5hqHkuesztb4Q22kamYqwZrNeHZrPGB - yq/ebx7L9q4KuTtyHi13OyX6YJlIBiNkpnnQTmvhpIrHCCiTD8EHcPEhYPW7ePKo - 3zox3LBSUca9Ne2qfipOoRi0tTTgx5Y1ktGyWzqbvzz9sNTdqD+ymf1IrHHix7HS - XgGvhBz3WJ6XwbH3q6Uiq0lSipl6H+f5Uk3JiOv2UXU0ceiZDDqZwXVS5c1VtJZY - Rd9xQ0tBHVgVnc0bnb5xWYcaWkZkVtdNlgJggFN+HSCdFpNSIM8u7lIe7HDv4gU= - =IvWR + hQIMA46L6MuPqfJqARAAm7YTMjwTEeF4PikDcXGX6I/vfNNKLs1PxVN4xLbv0Ihh + vX4JOEqR5gDckqSbcY1A1dosPtXuAQJCcy5S1DAnpWombI47vYvQp5s2Vkz0PMov + 6S6sxppCYJr3c+akkwyE8fakVp/wG1RCMcAicSeX6vrDwMSJhNLSa8QY+sImcJhz + f23zDkzGCGMCPow9MzINbGHv6bUWyB8FlqXCeSvIbthNEdJj41IsHSMDI/rLtCH9 + kXIWnsPC6NcXbaT1p9BISbfdT7OFvjOraMuO4fBioSZVCZ2CLGIVKB1+EbzuhnLX + LyN2yBnFbmCo5l649VQpeO2dEmXIvKBL6uwrle0qk0ZzTgEOgF97X0YOdG2MCtxo + /fpNdnRrbPO0L530zLNZG4stREY3Y86CJzscJN+m4sttQrcGuqZqg4cgESl+fuxq + XkBhPGI0jCnOlffnIi+BvLo7zx/R6gR1cf+yEOOFfUbIejfgpwjurBxOI1R6m6Dg + LtFrTnEJ+fmQDjElE9AMeeoDjcLmNOKSx8qWSY2or+oP2YHzDXjzR2shqyYbY7Nq + fHGFw6bbzCLSQI/JgQLJfZs0kR1O1dNhgTKPdaZCdRTRSw+giCLUiUCBwYggZYkb + Kz7J7ZJs9SimJhEWmfA4XCjK2TIAg0H0EEwK1dZ/tXGADRe42Fn1L5A4MBCNMVzS + XgGKoHe5lw9FasHOXxKYYBwn3dzM0LnOelyk+uAN2u3A4jQMpBOVeUsZsrnNZHiS + Qouycj7Z2E5SFmTUP+q0OM0/4cSrso5YtQFe76j91pyqtxUOW4bgOnMjgHp+1E8= + =HCLE -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:31:29Z" + - created_at: "2026-03-05T19:17:51Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAYXm0H0+je3Ro9HnQTO2q8nB4DhzUxyE3X/cHmGnDUx0w - FAoqjvnQemh5dW6DeqhMy3xe8stpJ9F5vPu4hNWvCfM5umYvD4UaqlwcT14fJbpV - 0l4BXAsyqgL06SPF4fsBSMXsjt+5LnyaqZITFbfNUoGK6GigJ5w6aZUVqxKdcLoA - CZgn5ZCrfdXKtDPDwv8WpjpzicoaXKZDzzv8AZmHIYtZEFFEOPy3tAmgivJhmKi/ - =GjZe + hF4DQrf1tCqiJxoSAQdAZ8GC2AtUHUdDTRMqzId7B6/iw15ocFVnf7pxMw1ehUYw + yFfpvRSJ9ldSrOSdI/oKCevblM6kVj9czt15tKlW0Wh2d1iMLCErt6Dn7Jyw/dow + 0l4B45LqT1Cy5fCQpINitwqc0YXzyL46BeB32u4Iu6P3eNHhkKtona6ryfl5u9We + k7w0tQSab3+rO71oLUOB0v8ZS+rs58BWYQMwD1ejalk42nVq3NqbvxEhDpTZlvaQ + =BE+8 -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:31:29Z" + - created_at: "2026-03-05T19:17:51Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdABI3zgwzoHKeCb9YeH6dD15uZ0Z0/gJf/6N3OaJiLVB4w - tsluLkTo0Ez72SqVsUASiKczUEwgQKJ4jyCrafkSuqMKRkVgnZTAI+VRhvjniTuL - 0lgBLxZUBkWVmx8Ht1aa1PXczGkoj6JFM1en6BOIBVWC6n0aX5jQ/bl0PypAKCxf - yaHGONUmOEQJYD5DyLNrFPKndL3/qKZeu8K4Afybta7W2aKOj6z7CC5/ - =YGqj + hF4DzAGzViGx4qcSAQdAH2RIfUwLIFXMWolneyQQ74MOolRMXfPjifyj8+4JBh8w + SHeh1wr9yo8JkQyKIf4X5lpE9V2ZLuUU8rz6s+37/0cDqP05U5G94MDnkAttI6ZY + 0lgBZsHwOzEZv3h0XVWQpIaMykHa2z//VOKsCXPnyFomBlbQC8NsHvHuyzan1ISv + GNRK5i1TJW6P3+FkSbL8Sxt+TxyMR66mFsjrqJ5nEX9x1B74VS7J1Z6X + =Yz+R -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:31:29Z" + - created_at: "2026-03-05T19:17:51Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ//dELE4hqKkNENtgQE7lQtFeYBBJiWi+zUL+EnTyV4fHUL - oMTJQYQP9JsI5xXaJQq2GDQSaAnVq+gam1n1E4E8vkbClCBU0VCfJMsk59i5szYx - bh/ndzfZig6PpMZ0h1u3Rg3NDlWUiBtsJZvwkFFL2mf80Jm0BNfEowmCr99CuSP3 - jnR9FdZI1Db2QZQVfK4UDZTsE8aG/guPpJs2LX7PgjAJqyRvYa/BJM/+jMKCyHio - n70cdkiF2wihOHC7rL41kNv30Blljope4T30VYaSPZCB9m9j5U+al6H0jOcs9jnG - taaZSag7U74Vx9o763b18wqPW3YqfxWj93PpiRYxOmqKJvgOjWySolY1avD7da2i - 0PYkSGwRIH0jsW8UsO81cG4sim6Em6qgwoMxMu4vL/NBJIUGMuedUk2kPGG/DXlu - bYs4p7uSYEBrYKxV8QZ4yuhBDl8NZacN3HUZEg5v4/TNLzpwHFVsR8R1ZUEUzbG+ - Q5D1xCUn/Ek02ZFAUkgdMEFkfBsByEwixTWs5lIsT2+nEWNhFScqZRiZ1iNHEsVw - ZHWrvb9TeS2cu6Cds/J+2AzXAL86vEhC6a64NgLbFbULezkElRsuhKt5SZM4LKTb - f3LvbXEORP3M9y9SlqraE8h+O+F6FuDTxctuh50emwvDYE0whKGDpMkPFsn76yPU - aAEJAhBpT7MSEl0jKPHwkkUoR37x11Bx8v1eLLq+sMZbp2kJ6mPAfajLQlljklXD - EGocyLzGdVcbO6PJd+LGQKbPjfN0cUbMWBuXgbJzm9DWYPIE+TNxrWUlM8+fSj47 - Coyogs3OmU7A - =s5ml + hQIMA2pVdGTIrZI+AQ/+KucSbdKlfAvLmorZWcbWkFzOw8KNcUmMcxN+gtv0poSs + BD6cl+qymNnyDDiL2nzBiZFXpgMmkLmHAWKTZ4WE2OBpogO6A4Yfwv2vy1WXlm2O + MmSvff9ul8CBFVvr6kemnfqahIfKqac2zZiLo3BIKitZKGa87dLW1b5UU0v+k9sz + Ze2gdOLhQibnzaD1/OawW8O2QK/R8YJgNw7mbm3MWdHwZz/ZXo4Q8f2UbtrzLF2X + 7Hk+fllOh+ocn4OvpFMKSaqZJwBlXGtn/vM1sbQcamj6UNPg3/rpgUa2owsrL5Ep + 6tScHFSRVaWJDwtytWIgcEqkPiN2OB83MTfdDtkxkq7nih16d+yd3G/uCy5VfLVs + UtBi7IqDjNH0hWZZkbPSSXO2i97pq8HD8swTsU1qDTWGHcivDVdhufBtqiObjxDC + dEvjjYzKxe4hFkPyY3fppPpj9vrKpcqTuxucrjT/zNXh6L0+N0+C3dMO1bncD1Sf + 8T1Olst1qLhYKcig+82gccdfJoOXhbS6eQI+p8sxs6rotTj7FKh+LllDC0P4ytZM + ImpVaV01Psicni4dDSZUOy6zxRr2It+IPh7jNf0MjRnoR7cLZaP3r5/la7/ZFNbC + ZcT9B3X2RmR9WchFnr/GY4qWDR2WiqmaPjZS71FVX4fVDnrftk6Upq6cURmWyFnS + XgE4cwCi/5qMlhb5SzH8QVwseL8e9r17zFnaiVkb2Tihg3GdymAag6iWqn3gAKnV + 7ib/SzB+Fup3gff4u+ZH+LkpWEHKBbRcSvWwzc9089Rb4Zde8VJkGvRhfpie7F4= + =+liV -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:17:51Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAzunWJnqHZjkNNtpPaUx4ihT9Jh2HT6wfPwElBj3AMTww + GxGR0nha3++prJjpcN75s1A82/Qxtrp3gbHAHgRFqch6YQTQ7ebsQX2+seuXDnSd + 0l4BFJN4FQ+pZiv4AkBtrwnD30+wvJlgZ9QfIam5+sTN4YlvTjD8TpFg0gnC1KtG + RQM++yI7KBGOgRej89gnRekds0oNXyBKuzKxqOydiCgfLDKICvL81K89ow79jXcF + =VqKk + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/acmedns.sops.yaml b/inventories/chaosknoten/host_vars/acmedns.sops.yaml index f1e18f56c..8e8a40c45 100644 --- a/inventories/chaosknoten/host_vars/acmedns.sops.yaml +++ b/inventories/chaosknoten/host_vars/acmedns.sops.yaml @@ -6,204 +6,213 @@ sops: - recipient: age16pxqxdj25xz6w200sf8duc62vyk0xkhzc7y63nyhg29sm077vp8qy4sywv enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB2WUtoVlV5WHBNcE82aWhK - bmJhVTV3UkpkMWFNZEpNTkc4L3BlS0lTalZZCnhvdHRoTDJJRk9JbjRVUitrWlRv - eUx0bENNMlFjMmpGcXZvS0k1YmUwcVUKLS0tIDFQdFpkL3lnQktmOUxrSTVzcUd6 - a3F0akp3VnI2czFGMXQ2OHFXMXhlVlUK3heQaBIXAbB771wF51s+mYkdyw/Z8HiM - xJAOcVaqcnkFuBu8h6hlOAL97Q7lf13228aRwNoj4cyzn6N5qh3aOA== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBVdWVwLzNPT3Y3cVhOdGhG + cFI5VW9ZYThYeGZPL2lrKzRneFlpcnRSZVVVCk03UnozZDkySXhNSUN5QWJQaHZM + MXBkaGRRWXliQ1lVbmdlblRnT2VHK28KLS0tIHJaMnQxZlpKVjRDdi9mVzhReDBK + b3FkT0xYcjNDYmtUN0ZtSkQxbHprK2sK9dghe+Lh6yePoRCrtjsKcEeawGZbFDx/ + aMZBpLhntqE2WBDByvkTpJY4wp0ScOGNCgMiZjOHZu05ae6EVZ7RIQ== -----END AGE ENCRYPTED FILE----- lastmodified: "2026-01-25T16:16:15Z" mac: ENC[AES256_GCM,data:dBBAJIXeVUXXPXB8Eq4gH5F/0jTpvb79hdu4KD9gV5RL36Tr3iU92SKAZdMcw3/+8zq5L32YWWpYR5HFVPXaSdgls3wtWdrz/1j/C/zRxup+Y8DSOdiebCtz1lJJvglQMZNznRvo7N58lTdF/XqJA4tY51xZZi/krsJXDxtlTgA=,iv:yhwXbXu1MKl4sSYaCKPVUK9aedmIMnt/rzXTcGqmqpk=,tag:hZX6YZrzkrr1mPe6FOs7Xw==,type:str] pgp: - - created_at: "2026-02-18T08:35:12Z" + - created_at: "2026-03-05T19:18:11Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtARAAlHZkW2GRrZkyUnHVzDIDfj1fyUez8dZA3BofQRHeJCXS - j8VeM5+2IkTUzlL9+HJstXeJW71ZdLegOdnpPqYNFr+OVhCKMhZBSRu3tpOInQzB - 801l0zyOGnhlyEw7xiQTs2+V5+SpUBWnnfhAAQn64C0vApvhlUvd++zQGTV3eAfw - /EcTzQmR7ms3mK5ff/SEarocXXO5ZMcVDwjm12BLueAv5Atf0I7omt2nDZ94EWr9 - VAbiCpT1lU2MZ8a7zFAy9GNJ5H4/AOUc3L0xONdEiQRwwNCeva9UPqzZXPI4lJiT - Bn58B/T+t1POoBrh9UN3EMz4UVgVfZ6LoX7dR2ygqZjbarw8dUeeAL9FePccQ3pf - sufK4IVQHCAvTKbsM6JhoYxPCQRxyndOK4Wq3p+WvxiWl5WA8vCO48LBph7YPsgM - j5nqins4LEWG1Bulknf+1v6E99RATl8dcv7YWWsm5mIEfl3sQskCf1XFvyeNFlj4 - /n+7XQ4DGG0jrfTKtqZOYNSUUYLxPeTpHGR/sC5Lk9gYU/QZ7szWwvKnuN12ij3W - pWV+bF21GuAH+SngeA3gmsxVtVa59aY1STjNQ3FL7JiU133yslbzTe70EntfituG - +aVfzBRefjs6BF039bQ0N6/EEMP1KlNtui3TfqPxGkqrTgk0sizJMBrTuoQCgm3U - aAEJAhCls7q9b/fo3Mpy0jopsHHiuoKTxN4OJgIZyeSR0YAbf4XXno0Cxif7Rfi8 - q+KsiZbWXLRa3Bm9Gst7a7HMegAR41oxoDjUGoeEV6PE8FHCfdA9sLZ4cZSFjMHM - GuWLc0NEK1pb - =cu/l + hQIMAxK/JaB2/SdtAQ//Sov5pYJ7yO0NbbyhJR3XifaFyQtrPjlRnwCCdtye6oaR + uqA0/HX9vSnMEmD95nbjfajV4wYZcAMCbIEW1PhE9WfuyvSwE1rSRTPxSQVFAuVq + u+wPXHJRnCizby6uffgUnr/ABn55MPMB6VnwMdztso/gJpI+JqXizVVFSVLOxS36 + nps+ghDVTTuuNFZ/YyJJqhvq1wvpV7YnTwn54j/UVE7sydfG4KW9Rws0+es+n00n + YOGckk9UlSdqfvnFzBvIHqpMol7StElGbj4bNJ6MmtDWkI2v1zD+hxxZ+bmBcqgI + vCEv42X2gMF00oO096AT7/32BaCDBPayzkpfY4w5CYCgqcvTeo7PIy7dJQDJXNO2 + M8DbvYBNom+fWUPfMIdkWUzZAv6+612ncZ7S+mBCH57O60ygazvZCZX/8W9cBO3f + oqeTvUwZVEQJqiiy15Hvd65Bs3f3VyGEURwRl5cdL6sJQYjhPNRy+Qp24b1YN68n + nhucsnHl/dx4xVHRjvQYFwKnL3dmbF12C03+ACqo5aDZqwuy2ji5IHMFCW4MlP5K + LRCwbiRaeFUoVqzeVSLYJGx6WJY/Ti2OZyR6IyQgDw07RlDtIgJLB/QhH+TGuqxj + 9Lo6wIqCEn/tzjv7mrIockQ1MdCSnr7srO7WDG+YRgHTFSEMaClh2RiyGcF7a7zS + XgEAay4JZQ7IeoIe0gIc8lQgrJsTl3sl+vxpMsVuNo+TJDwQ6cybJ3nDyHLKfDmb + lCQQ1reDSPDVuldMhICdgZ3gKW69q6AZKeQZr6Tvh4k1PMeOvsPAKHzZdQXKj1g= + =/V9d -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:35:12Z" + - created_at: "2026-03-05T19:18:11Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf+PErzSL61mV62zSDQPRKcyLV6o9kEd8jC8CF15+VVy1pO - VYPqsjZfHJQVyZ5vny/KbOeknjoo+gnpj4QPSQxxUkX1+TQ7D5jxBIQLlLMc3Eu6 - 2JlqU+9b1bB2wz2RPn9TpdzBmzqm8xd00iC5uG86IRVlyCIoDxdQFFQzzLHZ7CZf - CsDowkitLHrYRnlna4xUy32+KnQ589cHXC6v606uv9eMUZ1S7TBcMJiVHwL6c62p - 0eXafpQqHe7spNQoE2KWWLp4yHixs2ETodP36kfpjBmQcB6ST9LsKmRkiGoVa+/C - UV50X5c4HcVzDCLKsmoJT+qmmznsdpWlMFAHuJGH+9JeASB5eVoH6Qyq4DUktX8b - TiMuY6LD+VbTuTtpiAeyaCpjUc52dhu9XP1jkQKytpifc9xKWyu4ovOW1FIukSLU - xQmEeQc4h9NYa7AYFhGj7PfSYBr20Ab1PyOTyvb0ZQ== - =2QuL + hQEMA1QflAioE8i3AQgAr5zTIh+RBFytje2DbziKmS3Oz+Vhcq98qeB1BH2r6EC3 + Qs3ccjxiWBoPZVurp/UAV4qZmC6cvQzStW2MiKof6JsUzlWmGwAlSWVHQSoW9uON + jGb8YomW+xqhxCJ96wnX7LXul66pmAAQpTF91Qvd3Qm9nB2im/Nm0Vt0mZdG51Zt + oFY3Fyz2v/3n/uDmxWlHvudOSk0zcznbUgMX3w/hvZeVv5KUx0Xjd0L8c2NhpSJ7 + fM9QSX8DAu2gFIcoJ06OkbYzQatsBM+zRpuf80m0KbHL6k4zKIXWT3KRWJqwIgUK + bmzqWAPCleeP24+UZjbzg/MhgOWSv27b/DXAkQSMQNJeAfdmrIGGMzioIxYTMFGU + ieoX9NRJOZO8VQojwU5NOtH7z50Ua+4FZtCtQGa0ICaArGRTZPCoKjmNca6VV3Kb + jVfI7Wt6kcKvtiGiXdR3g1AkXUKZkflvIMCBtiiiBQ== + =Jh5q -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:35:12Z" + - created_at: "2026-03-05T19:18:11Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ//fgmiXqpGHBlVxH0DNmqZuNI9J3HDmuxlQBcGkyrzGMa/ - TwMbLmEqWrk/EG2er3IxUQCmVeoIXyRzcNYmNbcVtYhTcNjH0sX9naMy3tOJYeFh - 1PD56qBmyzQ8cgBJxzmQ9Wln2Sj6zEZieAUdQvnKh5QjvDnr8HIx9dTKwPhluT5T - auQ+s2aEYSabJ1RQW0hVJuxyp4GDoe3H/JDhriWNWr1WiwC/1QG0VKjRNeO9Y+xA - caMw89qTb9XMa3fL7MnMpOPL+m7JYZovwoFFXXTyeLyShC9T+5GXJafcC6g2lcOa - W0DRIR+e2BPf8F+J5JJpE4FDXsIg56o6tJ+hUuc4phKUTfhJvqdyKAwszWZ+DYwP - d7m1KKrqmTvvTCmGYBep5FW98aAOixpdGP0tgAFCkBc/UxaT4HV4iS2kVPp8Y2vW - yIXPq7ZLgRLA/jgdW0XF0vLKkftwGoH75Aamad/Vj7g9qW3n8eHtELSUw7V8lvz3 - foe5iEfQdDK7BFtqhgCeAUFPJQ1h596ApNMeIqtvcSQwZUTSbnU+bX/lLkzbLk+r - RjRFZsRI0niTkj3lxP2Zfzx+45aUFIYwD7Wb13jVxX+QQ5XbbT3n6zKENGRXBuw4 - 6O4M7hiuxuDMr2nzZHK06N5GX9sJC8ZYOL+HakfzDpl+thszNq1I+9pe2b2OJjHS - XgE2eIFFYYJqeOmoEeK7yhVpUF5pS+aLNfejZavXHbh+YJhF1tvzWujtY0mg6Tv4 - 2DTXiTIpzuC0g/0tvAiqDCGR4M8ZsRbFIkTIBfLU9FSorZONLr3EiUR29eLNYwk= - =WQ7O + hQIMAz5uSgHG2iMJAQ/+KHwHTvuBLweOfGnpOST9aAxDuEF7sSXwmDIxF2ETjLB4 + jayN9nlyN38h9AIl8uMOfe6z7jPc8EgEC8ggLkksXDJRuerhWZ+aGxI5zrgGrwFd + o0IBoKmdystL/qMb/94ZcQmrq5iB6TwzcmryXsKpP2ULzvHv8GsU2PnWJY6TGoty + Y7KgREsWlTFTMzZv9e7zUyb6cXaqMmuvRePocl6TKDETWvIfrsS4k3PZ/TGJMS8G + 6XZIfjGxpQe2nOlN4hMRTiJY97YX2sObyMGTFy0WSVshAYuky3CgJhXZY4Hke6We + 2F9DibiYOpIWNvNZHMo7PqyGV4q+KMAeGB0INYBs2h1Lk/A0BLNBlh7QxubxboRR + 7R4xB7ymAfA7vo2aEBO0Sljk5ourFYZFhWOCyXAwZRxtJjUJYwdRK0uG6XX85cml + JPMsoahMEu6F91GUXLy+OpAgMPZ9psT69KzNOspmzWoN4+lXO9nTuSMgV+YKtJyG + 6cMHAOPVUWgYNHJEUpGfI3rTqgegg/yDsvmCrwePt/kkGkvRDEbO6LYJLd3vbIcy + 7tq87YKj0cZ8mawB4c+Jw+u9EOViFrb48usrTHNN3FhSVr0t+srvCqIz7ozxU3mi + +mWJ4c0fBwSNgsRFDbNzFDsk7gepW2JPJtYRW0AOMSDFSUqVKa7yYNPAHLXsihDS + XgEqWykEpABHimMcxM2K/aw6nvseiY1mkTtjKAucBZWGG1ObYcFg51OH7Odgrfvk + Z5PTsZ80+yTMRTvLP+j2RQ1xGwywHX6c1dMd3ybuV8iLDJg7dyEsq1GGGXiSWUQ= + =bm4S -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:35:12Z" + - created_at: "2026-03-05T19:18:11Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ/+Nu/msPzhTCdd4tNhmCoYof3Fmhqetq22/bApmx+7xzeC - AUp0+ySO9NQOsnzGhjkmnMT4JfoLa5lzQQ6uKl+uU9HVAc53mEJEj/Sjk8M6U73b - GjdHn7dGqqNNjizGiETaE+abOSGNpymEPRQHFAZB8kYfT5Gc7DgVz2NzHoWbqcQu - xlnnWmfX8r52fQyZYlL9KA/wC7RZW1PKoX0WTdZ81K6HLcRPGmYiGEOB2VfE5fx9 - twF3uZZyqHgkAoaB67BAKcPyfFXIiRb5rg6o7WAfXYG/BGr0dAIZfzcsbeCvWe5J - kkuCgL1fWDAeTbBjimtWeWMCCHBQ953J08zriMLlNEp3xmRdTPg+dBC0EGoB//0U - uvz4XtgQzkKuM/tu9bEB9onB4JQOUuQISfM9/ikac7OWuPZGlSYL4EaPHgx0yF2V - XZAbgHiq5cv9Qcv+UVb4dL6j7DvoMF1912cqX6Av7lEd1wlxyYWn0vto2r8zQ5wk - 638REAdbHu4pmIscar60brEp6WwAqHinbv48yOJpodMUfExWXH0iii76geuTjswv - HUpK4Hb6sURmOvtdK3HDpWuDnFvo0vFtzW1DhQlLInEedfkp/wVX/YGwoAUzh6px - bZ9KNpMeXQt9wgKzPIchHiZXnw1U1Tj5XO+I8veb4ap/yI0M0wQsopjqjkW0KQbS - XgHwnPXBr/cSIrHNpv0X2v5hYmYa4yvCm3opWoV+cvPtsd8o12EqIo996P2sePAz - tNp4P4iK8LJZMZjxafNPfJ/EmSA/6hyOD0Soy4Zo+ngphhdeBOM03vphJO+iFk4= - =i1k0 + hQIMAw5vwmoEJHQ1ARAAu1/Ss+giFqYgCtp0w8rQ80l7X3gmrMp4ULRr771OYa0o + KA7lzMVLZM5FxKx5bvi5CGj0q7t8b/GiFrWix6OiY7UdbUsQzSgMNrAO6BglZfWX + 5qJxhh/cVX0kxMAgeF6xvPhCXEzmgmCs6CFnCA/GKo3EBmYQBYBP1TRoX9nfxFHw + SbYgIJ6XYaHfs6Oxz2994pocHSe4QLrNIq8Htb7BtN4RaKuWSrTz5uYHu0W5/+rs + /i1TJazsYImF6c7yVOUxOlILl0i2sM3BTl/K8xwuL6uJnwLNjhIir9WcZMylXUH3 + hDhsaIf+gDm/kpJ/lF9BIyOVemyLFk4u4xH25uGpYalYWZGPRSmpdCmpVS4X+DuF + bZapguattOAGsUCfjEc2XbYj+Ra9lvAmzhuOzDyyknI2bSyvXTJHECQ0jV7mqq2W + 3gEDquYSaOw5L9HhmN9DaHvKPMlhxW+1ylao0KefKRSa6i12SC842zn4bPz8rTeg + wWtIyubuo36uqJpzEceoI8ooQIj1SVHyhfHOR1ciG9KAkV8l7ufrfGPfKRQ7GZeZ + FXBs8sTOqcTN44tDNYjuGfdmERKM+ZPi/xfkQOqIcXJDP54a61rBRB1Y+iY/9A8T + 2eSjA2+gHz9hTYl4yJAmfWe25qiX8mFImo1sKbxd/HdMom4hyJgpDM37nvGCHH3S + XgESyaNBuHlupA+4+tRBIefkc8McC+I6r/LSfZH+J9fBQhzRTA3G2MIw2s5bNoiy + 6IGvZOui2iv0VmJp2OV9xnCXUu3xQSddf+2uGqfwwbanUIpe5L8BNKNP4zl9xbo= + =7FGH -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:35:12Z" + - created_at: "2026-03-05T19:18:11Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAjU0EL6IEe7rIRLdRpKXlXnj0KZJKV9jqRqpJZyqljxIw - EPwmBESdw1I4thzOI2KdLJnfgfFnqcgsJ2UdYwqzrW0GUwRJZh0BGXGXZz2OsNCu - 0l4Bxf3mIPK2qub5+rGV1svSIcx4UAIgVQWe/5cEQRyqKaDqIcmqBEy2Ec5QghUR - AjJHYE/6jbgPvGK0JOtEfKtrJuTSD626KGkMdRE+pIF5WdMReTTcULzBblETHZIt - =oS3D + hF4DerEtaFuTeewSAQdA5XdFOtqbGVcupcCuSj5NM+DcVT4OeHoMLzGYxws6AgUw + zWDXFsOqmXIzzPd5bQlGD5uTsqsTskkO8c50UgrECwblC4K4TALErv0lP1TQBfHs + 0l4B2hD0AO+9qIdkoiZ6aDzBLAfriU7+ipg+vwovwdMR5GFUMc0aDtX74b2TM3wC + YiX7myKv3UOJwWF7mbKfHTYDnNnWsz2L6jmDGZHLkBK0gQOFih5Sxlo7YTu2rPfo + =yq6Y -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:35:12Z" + - created_at: "2026-03-05T19:18:11Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fARAAp15wG9Rr5d1ZcSTZFWa26GTG28R13F325NtuDkpMl3gO - 3NfmJ3CgT9Otv5nhVWcaSPGMY7ul1DRz2ai1yP9mbrTgShwh/jAvB4I09o+iCNSn - W8GqRCRYhK8TWyD6+7QzRzPxu8UZaPp47hhHWo49SxMeQWM28fnmK5H0vjlyANCZ - HB2HnZLqrnu3hT6CGCn1whO64Osp4YgiRVrqsClu1aeM4IlHdvkiY9c2LMnDQVBe - s5yC3tsxvKMMSdxnv7HHGfbsGKzMoc7PULqrxs2F5IzvXIqGAOQ6aOJJiImi0a20 - XXMKDM41Mql1ZQSW8PAGg5Zm3vuyHs33xmyubPg96RHCHh29Jv8+HzXLXOPCXixE - U08cAS2u/tHIimkR89NlPQ3g4vo8b0KtoyPtEkmucsdL4PRMZigfphP3qJBRp72p - nZt6orDoaW8CDF8w+MucsWk6HF2jBtqi0RSoPMdYK0bMDmliD0lMCwlJOXzTzGw8 - tBHefZGwBUekm08a63/Htg5K3tU90j0uNlk9EYexaGzK7wOfhZ34VsDJzFEGz/sy - NRIrb2Nawjm6z9bczP681YEQi8RXQFvGMnkKpTPON7wOnYZW3Akc1oA3R6QD63pa - tWDZ/hW+ZoDwMrmfhmRumruqUT49X33TYiASP7gBjXCAQtw80y9nWgh+6ESFfyLS - XgFBsfFReKQk7PTF3WL2DOsNQBbUGQwEUwlV2YU8dK/Rl5YQjdm0o97GFn39ma/M - EPnyG+9sbYdJNHI31803BU9yYW5wmSXdb4wIQiAZ86wJOwk4DlG7HS9ODH0bC5U= - =kaqS + hQIMAxjNhCKPP69fAQ/+KRCDsUtTEmMarIk/GrNvNc9T5OcvNNLQoAFXz1YnUT0a + WyRJP7EkMl616Netvcc4/8tJI3mE1IWKASPgYnvsKNho7mHgusK8IBp7RCcle4eO + g2KIS4gtGx/8HZVA9sqbUEz0HnR4AcDrvH/tvmlT87oj4y0KuzRkK/Snbdlh5vH7 + Ttc8aocX1bKfVDCM1fZgver9QL7Q79LVJU6WqERTJmECAp9qo0GOI+83ZUAh5Q9f + 9Jg5JIYLwS5Tkw4l3S6zpNlqqkRwkoHQnHIqYWyKgWiBZSDXRy0rm+eLg25eaLSU + getqMUPPh4JT/7YszRujy3delNtnqLWzDQivz7qzsgQ0EJrGC7jfAApEjrp7+ZYY + CrmnFL7dlDQhkpaJIDytdkjzjOkVQIy97BDaftTaf86cpem0tzmNhvhIm8UC0KPM + prB7NdFcC9tHpo4d67i7NtVYOp75Iqrbb1I7FTZZq2ZaPgxNIE5DEHDoPVE/a2/W + owfcqKU20Hobq7O2I7Sl4Ltd2xTFaM9eo9mjkepCuD0ycxJnBoiCiIpAwfO1tW3L + wC5xUhCCheBmdWgzliY3IbAzLXcLwesH362m7zQXRhh5Wm1w6QuAPpuVUcqLtHoP + 3ZTHLbEUnNNE99tsgkxL0UFkD/bPVort675r4x98t/39N5qKB7S8rASRfaYDv7LS + XgGrnS0LWChdISOe943vo7KHVU76wDnGu3hIsgYPnYkzpSq8t1nmmibsIxPTx/KH + XlZ24Cdb7BTZ9ACaA3acoH7Ig6g86HiqNvA2qXAuQUoX0dgfpeRNQ07ePTMS8YM= + =YHQb -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:35:12Z" + - created_at: "2026-03-05T19:18:11Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ/+Mc3/D1Kj0pXswVnIyYXP6N1hcZvDPM6XRdvpbC2ce7+2 - YVEwO7rkHDAKrc7cfSv8ZuMYLj4Ga+t5Ffmv7DMS5MLY3g8oQ3ZAf0iP1noJunyK - XNhrjROXgPa/xDJG5eVcGRblLVTRoIPf3g5CGpUsqnJYVrCDABsA7Sj605Lm5hzs - YJ4ysPzLBozwptkExTQrt/kYRBtnNH7nxw0qQkFuc5HSKCnN44IJHzQkvJOI/03q - wbvVuGjFc8ehn0r0mz76Z2p3UDufiIxJnc/WvzHXT5B01NUP3qOsw09rBYdQ7PPj - F6mHptDugHXFGIQd/Rne4X5p8HA29ldnr6rgDwWiOXqTYmRiSm9AQQKf9Rnk6AdP - xzVc1TSmWi64OXxDpZxDMNRkVIb2NShLcXnewGEd93epAxEu/w+m1B5aNn9BZOvR - 5/D7rb+43wS0/7NVSkJ7hjQtNYpinnZDsm+s1oM8fMRU6/jZXQQcwmuWfjlQv1MV - oLlFoo79MeMs9W7G8wqOzSRYdkiG/nN9oVIZAnBPBb3bnPzDdG2KDMt/B+M1q4ar - zb5So+j6ycCVhY2z2nficcOyDoeyvvu8Yeqe3wPLtj+4x0XZFUpPMbSja0aCMeLs - pEbJ1hQ6FGzLjz9GgUg0hTImNG5t3MQByhDfLk/EOoa7HWMEuIrr0PRCifi5BDfS - XgFQepGurU50iQz9M1xna3dFK/Gy0xA6Ke2l8dy3ImLPAJdSrQEe+en00pMo60lh - h2l0SY9wzJYAoiJC7WLlXlJZIY3oXuRz17WWkSVLl/ARbzix7uf5ray7eLdowo8= - =vAOw + hQIMA1Hthzn+T1OoARAAiFY1zT8kEroA7xfHfCoWWA1gQNG+U+8rr7KA7k1dyJNj + mwMG8W0xv5BoLeNRcKR+0HbO73xp5HA/yR/sYZfCvkbjTrMp+Rjb58zjBZWcnZ56 + F55gI1qdNn+y59F0GuQFRr64Q3OCrde7Oe2aIFscc8YeO6VYPMja29+sMSJ5pZeJ + vDFMZP92T9LiLfc3eH+eUaVA5NXnxGwgXGOb9SyT/5LNDzxJP5yywn0KmftNktVv + JJb03wIYedkMK/IHBPt21MrwfcLbF28A4PvwSCXPG9UYyptCRG0hJOMq1JCFDcqq + 3BH1mhOT2CwVAyEED2ZqLo4rCLFcs7urb29osxVDF1p2tRIfj5cs20lj7y4XRLji + JxDwp+OpeCWKIv/YxNOh2rBZxRtbp0AUothvkWNJiaS+sbRWwHUvIgPvUluPs729 + v88rOkmlscPFmwTJRUrd9UMEK8fauAyEz2G5PNCc5knU86OCvkgzx2AMSPIXEbMY + KgDWuSsOULtcVyGF00C5sQSjBCemrw+2D99eRRCBn0xmVlrRPAPbtDamc2oRryaH + QC7bUnqKDOPvJM/2uAVIPNC+aHgXx1u2dd8Ckw16xoAU+zijKlejA/b2Wm0BVQjh + nxZdesEv8xAiP4HSlA2tbeSir0lPy1jnvvOHPBsmOGDTWXTANFTiYz/mYPSfHs7S + XgHj8aiuHjx4nU6K3QuG2wQTI8YQPFvs8urS39pLYthB0Mv2mbaNbwkvto9g7o3Y + XVUkxNQbByEJSSTlVWRXntylrPdstKpYCkUbpiiv7K50hvk6UEuULh9k/65Jq0s= + =j7Ni -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:35:12Z" + - created_at: "2026-03-05T19:18:11Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ//R1HSKmZwYag1jR6auGXQzEjh9OpflRtn+3tdhvumfufr - g5/kBN0JZyWj9LDQRcKxuFMYNt/4cnKCHpSiaySQeWvVUViFCXgJ8fnmpDiKWv1f - AoJY6Ks/pft32IGhTCvN+rCY19WXnbukr/LE1Lhh9MdSeofE3Hm7aDrg+1bTmDru - GchUEcm1yMCqb9BsQFITAdpkfTLTjORAzJbAAdsodVhZIn5Ye2RoMDHEy9sYbSGx - dNy4H/6/LKVqC4lvsjxIVBkKBjNCcHrwxItji+WGhCjsAqJBVqC/JyhDRcB7QQ1Q - yFwzjKxSLljnogoRsRxTdOkjDjdJPnHlYFFwpQh+GZd7Ad6z+V5OxI8nn9yVlfK+ - XOSoVWirLBjXBh9n6RrJQZOA9pVFkbaImRkOIqKNUF93pzhnq0QmSspphw4vhs4r - 1XVhnaOFg5kYiLsLait5C5o/66sQORGl9Xee/Xw+lYNUwKjHKBwzu8lDLMu8CHvG - x0hVShR2Vime2je7mBb9olYpMgc8Ldmwhb7JRf1l16F5SYVu7h+KX1hlMdpFXi3B - TviF4M2S1UNH2Sexabk7vsFh2OrhR6csN1D/Si2J+rzcmDeyNEe8uEUOK/tfVjcs - DrAJ+pirmA/25nVa+Pidp4q4q5meVYzsGoynD5619dqKxZRrhtAaBOdE/2bchi/S - XgG8GSPJTfudoLuV5F0JWG9KqagbwTnILmhhPFMz/ijxa+zhMXpuTNQq2ZgzTdp6 - ajNg9EJDM9SIkOBe2yapOMI3DkGsLy0/IyJGflcvqXmsUdZiMzL3dKWuzyygvSY= - =79vi + hQIMA46L6MuPqfJqARAAqqjQvVhkup3nqC5S+qcGV2i4GpAH8wH2HXru7tCL7pQz + tRZh3fgqAPGhQTKSavF1LSBNE4HlY704vn1pUIeHqK5uQabz/N+DuV6P7OR6Ui/E + g3VR/gGn1I4s/vxjvsbThLQAjeB1V7iXjCY0MB02t9T8Z/zMrwjAziV1bQz/mo4o + MxSMp73IGN1QJ5Z8sc0gPE3tFbXRslMSCvXbHLJr3ATQ3ixiPE/E4/F13Jo8cLsg + lsGc0+1JS+efB2PQm50LO73Evsn9Q0uUnpEyUQknvZIG96aDKgWKmrr0vOW2UKFc + Lq1kNUOb8zRZb/j+3sw9Oo5Q/KKxB+XFfa3R/8YedWIwf3Xm4RE9eLVuUKu2vviw + gRBVuNnY9Aa9yXj4d29yOwseHRyKLHTrGjca3ABxyhtRoTgjpmPaTYIZsmLtvOeN + ExVlICx5rzZjWEEEwkPooj5QJNEv7JbxkkHi0ncpErJPbsmPesz2f2p983SQM7kU + UEjrl7W0TTCGa78ZH5v5IP09ARj8BWza/zQyWKeTx64n93umvBqAh1w/o9gar1eI + F5A6iMYDb5yTImPZvTkehALhsDzAh1vmozMDs+19GyS+fVQdjh4YOaA2IQAIbfm5 + gBnTb3rfwK0/Tm9YQH9iu64ta21w2yIre+DOJM078HAZhmWZQMHqRMJ99vIDfojS + XgFLgrmtgBPRDp0x6HX3B1zQrF6itLjRUfY0ZiCYxDSyONj/4FWVTQ1ru4qG0Dz6 + GoO9x27R5vVNTgJQVIowBeVerSqxtCz87YA+WyNPkAXsx79ohEDXCnldcY96IRA= + =LFwY -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:35:12Z" + - created_at: "2026-03-05T19:18:11Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAhHNeueJk3qNQHRFshEnqEna2vyqhndrveOoUHHd/akww - c4vo6YljecS/3vJntjR+UFh2C6nTvXI5ENz+sHBU8KOETBK1fw1puuyJ9qsmDVhI - 0l4Bfg/ZJBVTfrdU+diTlwzzVmtXi7ZdMVxeWg9UYvfjb4SD7v+Nmsy35r1zW6OH - Zs/faLUO0M1w8jyLyvtrSMFwKbihcpiCr+Cc0rcXZR2IQIXujDOZUD9fY82KdgP1 - =LeYB + hF4DQrf1tCqiJxoSAQdAItKBmBuFYef5rCYbtmp9jCmYFHguqX12s6WbFVm5Zigw + JuYLxs3jcUvJDixG65KrJ1FfEfXz0dH7Y1fiiTUD00rLr3ih9ac0K4sRMDIBf/Vf + 0l4BKRaWWHspDUFWbQAhy0r+yZf0dInhmvPbPjBj66Uc80D9wVK1QiIaVa+luoNd + uWtQ+u9joijOxyl+YWFCS5LJVSaOjuci4cJKHvRbgvzV0/OgZHl9JCusTBGBdiaq + =PYJK -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:35:12Z" + - created_at: "2026-03-05T19:18:11Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdABNSgGMaerRjhvkybsMCPya+kmCXIBsfl7aDy6yuFDlww - 4B6iE7BVKGN6vb6OVX5rzKcB7iOTi2jMcxvYBEF0vn7usLYEjqVTwI3eDEDrsxZi - 0lgBUi4CvadTYge3b9atYN2U5aWJMO7rkevccFILNjoytSdwooJox6pk4gYNpZq2 - VigzmqA2ghCmS0RjiL0HuTMR6amV0U6x8BCSTQjlrxjRtAE3ncILHnde - =eU58 + hF4DzAGzViGx4qcSAQdA0LljTFEdERmc0luFo+2irwed5ezut4UH11pbqFzJVXAw + nHhINWNgCJ4SHexEJEYkS9XFhlVCfJfx08JXq9U2f7qG/cbsI5xybU/QC7sxCjm+ + 0lgB06RXSqs1qg7RDSx9V7rNB4dxqO8oHIXUmt90Wfam4He4dhjMUZiI/rYddowl + kUPpD48e6xpHqI2f18IYQnz99FixGbKifuGh50QasopAblL2XajefVdX + =yHqj -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:35:12Z" + - created_at: "2026-03-05T19:18:11Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+ARAAofOPOIAf3C6fvh0sozMZAFBSB/FV6caEOCNB1FxdTlPx - M4XteWtijvq4hvTIRmnn/VRwA/G6crZbcajCDnUzIIr9sr8sRBLS6oEW0m9FyFrC - BvFp/RhTrf4swN3ZKGxbjmAV5QqRWuogp/TBq17QWDEfqIfJ0kpz07hui6HCkgUg - mX/FoCyD5GKuxSh3VSFQ8UMVi1PCJzS4qyMQrgYEJ+NYIoMjjDqZwvxGZM53l8dx - 3BQhVFOfxeYQW0Yx6wUwyoueR87NGQmSykkCZ69SJY8TgsKv3KLRhpgdphzgcdxy - UKMn9h11PLQRj+KMuk/mgx5BrgBuITJ42xw2iOOf+B/g9XZ7Ggro9+++HmLIAGaa - dwdDA5nVW3MfMd/ehV+WzyQ5DYDc/HpRyQiIlesxGdxPOQZt594q7KfdpT16ewLN - UK/NQXDf11M4LDZOvfMk730IDeLdAfU5OpBl8LQ3lPuwJWJ67An01l+3g9Jbp3Kk - +b1EmcrR9MzbKl2pA88z0zNj/u/1zaTO55pESdyeASiQYFhcAwo3IdJGgBD2WPVc - tn5L9EFpILn1VFlaI5PnZUDip4QexwIDbweXjeMUqh9ak2/aksrViqgsuoIlqFrD - 96GSR7iwEX3bTCgmdwTCWGN7f7/McQP2N7iNY9mFkxHnQ/RHu8PbnImE0GOTdbbU - aAEJAhDySHaBQaVP2rwy/mhMQcadzhCwLSpkhYm/dlSDuqHT0TqJZor1EnoD8Jb7 - PIxGQJxtGOs27Q2x8Jl/CXPEHFUYXF77wphlHCTZz7H7JpLmZK/ZZNL2DX+FM/dm - BGh+kuqJDUtK - =v60a + hQIMA2pVdGTIrZI+ARAAuYpsJn4bqFxK+B7Kqk3j4KoHox5eNM5c4Szxx1ZGmin0 + J/a4PP06WXrFb3HKlbqu7ngnkA3euBuwcVqSbPu3BW6TsVodLqyuPl6YBLXbpcY9 + fOdQ9rOEh6y7xP7RnFtYFLVQACKqfH7p+oh+HdGY5I5boDxt0tUnLUjyMHZTsfE2 + oECHfhSR6XQuFiWuqaI7DeQF9aTZ4Yb0aEQkxFjlCPTArGWS4UaqJre175ompQcp + Mwq/ZQIOYGqjRfRsxwN4Obu/ERGnWPvsyI/+pt5U23bXyOA5s+PPdYZnHpe4+ta/ + CFfzVe7GN/RZuSG1itzTFRQqueLu1xoy3T0BjRwMpsu0HlWLnJz34XW8P7rWEgTR + GAT/gBG1hQOdFnS0k6RzPpcoh+6ihIjVhjDTweVIdjl3V0ipwKAxlZ0DGop8JmBW + uF0O21/FvzrTb/tnBpIHuJAyObw8xJe4xAtBPwjVBsb0psfmstTVieWlqjvl5FVp + mfGCXq6qNrAHrcwoIfO6h3liYQqzYuKvvVxIKPXbLgH2XogH6w+F5CfpoZaxGV1i + d8eEwfXMOrNYXGsEmp9J2Rn/VmY9Wt7+UMa4ss1mSpZ2llUnu72pt3N8yc9Uzh1b + 9cQwK69kksY3yjQxMUGF6aRMOHR4F6Tg7sB4x4mrKSHTC1CySCGwg8mycvuBT4vS + XgFfN7BWwdzeFV6zy7LlZK9KW3c/Vp5R2EV3YCMCvAYEeIBRqDx/ymyNh+fCLDAM + iSuqhLv221UBu/WDTUPyGmneSN67x0h0xViSZpJfNtKaj4p4uXT5HLo3PVGq71E= + =NxqG -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:11Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAG7c+FMTl25XpfPnkrNBGq6dDzl0/T9zX1Xf1hWovsXEw + 8B7T5hN5UYBKZooAV38KcTNktnDhoECMd1cxqVlNtmdC/bVFvdGKgk+ze3FBSsOK + 0l4BgMIVIA15c4ImlCJsA6qgrv2glINPdUMX1biFwjqntBeSo5f2ETlzIybT9cgp + dbcN5saOKO3Wn3gnwXhrsjg/3qT7AcCstKazeXdGNoqwgNK45T5PfBy9kMVoyLbC + =nPKq + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/ccchoir.sops.yaml b/inventories/chaosknoten/host_vars/ccchoir.sops.yaml index fe3c47fd9..9f83b373e 100644 --- a/inventories/chaosknoten/host_vars/ccchoir.sops.yaml +++ b/inventories/chaosknoten/host_vars/ccchoir.sops.yaml @@ -6,204 +6,213 @@ sops: - recipient: age19rg2cuj9smv8nzxmr03azfqe69edhep53dep6kvh83paf08zv58sntm0fg enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBLQ2NQZU1Eek1jRDJ3aFQr - TnpZcnp1cmc0T0RxWTAwYnIwb1VlZ0pBd0h3CmZhdE0wbVhaNk1KSHNNa0hBY08w - VFcvTC9NeEprd2IybXFBbFlINUk5d00KLS0tIExRZE9QdW1TcE9iTHp1SjdwZjhO - S2VtWFdyL3Raek8zRWtQR3ZDKzF1QjgKg35RQyk9A714A7DMMGMocXdMBhoQTajA - vpXefCpbRK7Je97jtRp2m/d71eoAApC2Hp3gppC6TZC722oV+GqioA== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA2OURZWEY0dlZTSUNzU05y + bjVVSkhocTRRZVZnOThZMWt3ZzhxbHpiL2hVCktFTVc5WEZ4WWJQTWRUMUJheFpV + THkxN3ZiZExGSXg5WVI1RUc1dzRxSDgKLS0tIHh6UldaVmdoc29nQ0NsVHFlVk5r + Y091dW1JbjN1OU5WQ2RmNE1mR014aUEKWn/Zmb4hbpg1RQZiUMlCQ7VqpjzTkTzC + xvUe65m7DZzhlHTaDja3ROs0NELLLW3JVedPl+QKqIJ0fIgTuPV9YA== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-20T18:55:05Z" mac: ENC[AES256_GCM,data:2psRwsVlJLLhxNJq5ilGaQ+q/07eQKQbxzq2xzM+HevwwvhMAeXsHnn8kkkP+YOaWrkv7QLQNnjtpoV+34bF+8OsIFlAp8sZRNGyKdJ9NVAY53EhWlabsLP9rXN2IC9EPTpaWBI5F++LEFNHhc7mpfnC0D9fJZd5AiiNO0ARVJE=,iv:G4eTrwBfrlw8FTrEDm3pSHXIoG+8qrfXxAe4H/UIb7E=,tag:BilFyvyQspxEeqT7FDbw6w==,type:str] pgp: - - created_at: "2026-02-18T08:34:41Z" + - created_at: "2026-03-05T19:18:35Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtARAAorTtAGpwCQqCjRr26BWQCI0SpPFLfhdkQBUnV0UHY6Je - RABoiJKRQMGVCk0ZH6wHd3lBKWasPyM+n0z7ctg3yRugv/089kCNFhy4BVMQsmwB - nd+fYCm6wWpC8Tp2yqCbXux5ClXuy4VdXvrOHOGQ3nKFfinTJ29G/ijkfMN1XdUI - /zYC2SL8Mkft6TsUC1JPI8TMXL8dkC7FCQclpnunLw9MjAwMtkFCNmNK0H+fu45f - Pcuo1xVniNn+jz/TChm5sgTwWxB2z2YTOogoI3u3yAPKfVOijDGs4f0bwYIZNE5N - mjhTv22NTHgeP1+Jz8p+FC6Dt0vQcQ/PXakUzlW3DAHp4aZRe60zJzkFZsT0mpj+ - 1sZMj/z3l6Tt0YsAHK6LEBbxB6LJQQo4Iy1MZDZmdRg/uY5kHCk9x8MUBAWucpMl - XFpYlA46pi2c/KiH5S4WRLbaB+zdbGpxEW71WnslVZU9hjf++ktqsl16/xzb2cPm - OFe7MvOqbIjdK6OZ+9kUeTNAc5i6PY1sstI/sUjxl7EGtk1yA+BPOtHDjcmibyBO - 9b12cKzZhno936IJJQ+FDYz4AenD9YD1dZ6JEq3ZqcmWB9J2oWdhF71VJU8D6Z4d - +dx4BNAEHgBc7TpFJF4mfqQfNPIEu+HCOyHIqXFNxZVADZnWJrI0o/fwl2b4mQPU - aAEJAhBJ4dtH3/3EhUpP1SLvNzlX6HZ4XtxWzxFjXwPPaXMI2icgoFUfd/6xmjC+ - djQHSR+ZvsGfifDa4yEXqEbi3OrC5meojZZUdmJRSw+59mQ+i6puZEdIn7CCoNti - EovwLy+BQmI1 - =bLLk + hQIMAxK/JaB2/SdtARAAkTwEOCHY25TeYVz8yWzU2V5c1lrzszu4vNKXbMK1nUYA + GNNVK5yI28BBQy4rspSwk7LjnZgiq9S9ImYUI/w8E+XyMuE5HMKrqYTrWw6yMVQp + qvB+2Vscm1zOiSWyoeKZ84HGnY2lP10yAvefaaeS/IS0/kMRMmTB97+10Utkbroe + KHUifbsoT0ahHINg8V5i926Hj1RDmyXPQOKu3KVcJpVIVB2k1vLS4acCAQmGySqb + KmmhXbmLKSKNzHX5h+PQ4QkgU0pnk+danGpB4Vs12q62nViLY9NZJGoFhCrqkzEs + i7JwgC62/RdBWdKDyCzptn+HBsBUno01S5jqpLy52QWhP6qSxO9r/YuFkgr6t0Aw + w5Zz/ojEf1wWygYR1qiO33gCI81OB/hk6HG8FnaWgvgkIsBUgjHu+VJDQh6sywix + G2Pqm25afuTUlUObeUCPoAuPHPi8eLi5UiU/Djilqiqek/owYq7lLW6nCPPzN7FY + JpdLt2c+IMqP2lyXsAk4PL15gSCU0vRLgH8zo+mEpLp6Bir9Vw/eNHB1qjFBuhlC + CmDs4Olk9WC2utqwzF6k1xUWAU1gEs2k+p4POpQtDjS0LCG4d6qsoJpK4LvCpFTM + ssSspCLDv4djVaLyC73paHD2zryBtykj5NpvEK2FQpTswfCYs9GX/0WVlZs7vRTS + XgFrzhdraCRjPA0VZCa0+qywrtbct7ADvD0uJx1nIzPX42B8it/CgfuBniuznVPS + Yx1H0DIuMI7wYRbxdnoEpTZCVvV4tyDnJwsd364k07Eyvz/J3msbPUFi1ycB67U= + =nBNx -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:34:41Z" + - created_at: "2026-03-05T19:18:35Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf/QNocQiZYBBQply1fjBhhlLhuSF42JerzxrchjlzwMyJt - VaK1lf3ENzR9XYDhu9+DsxXF8DVMzC9LAYtbOJ0oFXRl8187J5w3d7Bxtwycyi8I - mxTfw0K42kxxfIy5u5k2MqeXboMqtIYYxfMnPj60eNWLogD0sGvDr8swsJ7eO2Fe - JnpLjgrRarGtaHMIfoXIzac2Nn2UhZNgzoF+HGtXxMl39T/OZqPuBPIw4n0j7GyW - QXD7HT1KQM7owQVZYm4hQqVCOyGSG9qsq7Xu/EoLhCQxnYTt0FT9kJqqpSrUttHe - rkV3ysI8HFuJ7bo7qcM/G1TtQcznV3XaytoP95iJpdJeAXkxaqGvrYR8I9S4W52i - t6p0Yyu9F7i8M2IZ5hIP9RdfbhVq32zMjqiDadnFgy44taO/vQ/AxnLLaF8rIgZ3 - v3WpA7bnaSYT3bzgvuuRbEIYx/fDBOlhcywmwsQMDQ== - =CWC2 + hQEMA1QflAioE8i3AQgAkXTIjv4BCFwCDDEVnNX5DcQ2dBFjIh40cJh51LnoMmDp + v54H4wIX4mD3qXeXLb7//ESpH23Spkg1Tcukjgmx34qCPr6ey7f9x16ZXE89s0zu + hcO/N0AxbRBkEuJvZ6/ZThc1jjSgJW1s2o3uYs/YJQuOt3V25yaYvbJFvCOIwZr2 + wW3SrkhLUly2xsSevEF7x6hFoJNSUDP5UAX8mZkYiVzIXGwi9mcXQQvpiiCy6QUw + kTwByALjcwlxAJo9vz/1S/2onXpVF5FrPvGde6LHjFo8W810P6Oj8cv0vvWz4x4S + vRuvFes2CKoeTbbVQP93exuvTyr4dNFpql2+jt478dJeAelrSK0MKlQNR6llTDA0 + moKiT+OPHxRF82MaubRfmrV5/sQiBf+hk/2SHoH73oQ9dRWQ6wwkgjOufVTgvhx7 + v8XmQlm/oxg/cc5E3fFtRpYsVpvxYMG3RWXHPGTdXA== + =98MQ -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:34:41Z" + - created_at: "2026-03-05T19:18:35Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ//ZjM6bH6ojaSyipvQ48RcOf/6EgPKMqdHcAKf0+uEb0mQ - P77cChlS32u0NS7+vOB1CdbYrLldBy6rJm/xHzghYNo5d4eYJQeLZwdVAQ5DAFAs - kcixSLhSdk4UcU1gx3/7m/n2pjt0awc4XO9NwMNKeilsjXiHwlPokZwNDZBEyKDD - hxthNCTHPa8g3mtlR6ZEY7ozoW2wB3tpgiDbsB+JV00JdUNGKS2mK9Eq5CXjEu+D - Z7S88O0Sl+DolDxvMZekoOiUXWjkT02Yf3jHqH36amV5fUyAE2m2l1sMTrCTKhK0 - iEukK0SciMWMOFOXdJsYDY6R7+fua2b80hUSzxsY9dWHusU4go/pBmv3bgwz5+iz - J3LJeOazCrzfgzrE/v2aF9Zcnu9Dr/EzWdjhYaMWwExtvbxGoItS78gkXSq/Cynk - Ff26iJ7qadbla+GR7NeaJ84G7+uRzho4eGs+Ddc9P3SllWX1ZR9MgO7r48Jcsymq - iiaiw+kxv7PQfRbYUX7W9BJo1Db7BRxrBWhT/vwA0ytQYYRNBbY3YRB5wtZO60gP - EK0g4fj0QuNzAVL1uiCMuQr20mLnLlAC+QsrFwWoFqokcfmObiyKoam4D7oTbjgv - MbY7oQzACWPIJqYzipPrxBV2dxdOKtNrSVpEoaTT7so9/9plDcLJG4CJzuoHnZHS - XgFNczqgc3pO5BU3wN5nEQlujDPJr17xanC6NvS/U4R6hVF0gc6aAuQoTm/wUIsZ - zvMAB9VdmN2Nvo+24uZpKMzDUB9cMTMrRoZUP1SvnWKGepbgXiQ3qwqRHoVGaBU= - =WA3v + hQIMAz5uSgHG2iMJAQ//XCRU4MLFm0uxA4NBzL+Z2Gk4arzDQccg7OdozRefTqiv + OqZNqpNnqPuurv//Hcld+ssw3Pt7mqU5KokGuwKgl+qRUAtdmnXTxL2Q1F2etjKt + 6xuJnrPYkdnjPLNrk5EjwrDuGy9TfxmPk0+aWfbKhYOzd9Ux8ifshY7GjYtXFrIF + IUADXIzKTSX0PWMjML+6kXj3Tp403wb+4RdiyRQo6CKNcqq0VjtHmd+eDlkNRPFz + F2HiFNMcoHlK7wrOblK19e0FXT3HTjvZQlq8YjxajGEGsnWjbJTcp0yJDY6ReRCJ + HQfUohVFdWu3ifF9QP7mesOcy2FZjdyZ9JJk0HXbfx8J/qBvlHQGaJlpuGIGJYij + 6Tnb5GAikupav9oIK68QyIKbGSNcZZ8hmu+UvtBOwIEq/s/oezcwUVXDkB1BUXga + h8teRqHj8IN/O/4C0vbtD/Dr0EaE2szuUe/uTSWGvOT1BuB+Ex03aJx6Gp74b6Jc + BlYoCm/0tvpHquSd17vwJkN0bNG7sLQs0g0oTCywbwP/iErT4OUaTQWQWXprdGIq + z3qE9KKoTEsGuZ4uCCY54uhjcEQ33m7Dig42UUD3iVY6m3hSXgSLsHqZijeqAi+2 + JVY5fX9eI5bJJBe0nuCjAru7Sh8idLGXcCmikgHRMMz7Vl54YcnWDysCGHeujVrS + XgGDjwS4nt4yX9dFn1LKIlNhYrzN1t1LGhf1U52Ct2vhui1Q7li8HARujuVBqgSG + zp78h47cLtnkAOPG7IwEEhcyxdkLVte9J4IaUJbWfh3xptTMN3wYTq+Bi+mUxMc= + =9dVj -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:34:41Z" + - created_at: "2026-03-05T19:18:35Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1ARAAqJS7nTJsSRxNtDzyJ7vLeOvHOwTKxj9iELiNaByLTeIx - UrsIgnBhNW03mU2mFVMvWeLfXaI/XuijPdD4V3GjwYx7NvqwlI36yDM67NyQvpsc - iKG+PM3pMEnJDwWxRipbF8zV++mkPZJoTUqZzN4eAIGY0ItfKcIX+8CFPUatireY - dXtJWEpIKDyqs1DV6xHL4WTxgpDhpxuwpdnndKebljuQ+fTt7G3NSnLJtXFzJIFb - PC/fFODXsKrP+WFz/XUSdEPR2vt9+ymt2NV+kxy89bKQqupibZcpi5t54LKKfygf - x/3oZCmPNTjf3Y+dt5lb50/oG8X48a5P6woIN+sHP26rIJuKIkXOEIZ59IRl7obP - bT39gFp0Qc61Mzx1F5dHj9MvjStpwkcQDYGbeu0pePAXcIWnyy19kaETMzN4VGCo - B+f1Y2N+gvEbWOfs20EU+Nf6olsLSwoyN2Tf1lT0RaxH/N0St9gd8Oe4/SQkMtT3 - DKRqRdBikbV0wyZy+cHwllyWS3Ub7mdEFSy6eDC73xOncUV+h/ohmB2mDg/dSaCm - gY4nmNruOjCxvMholPggthAIn2Upe9Z3dl0pwPMTZtqPN4qnDR8QzO5e6M8e6J/C - EwGEh8eboRHIj4ODb21a7R4KWz6evONKr6X2k8GJHKRGVw6bSxwFJyIHFuVCikbS - XgHUZAy4ce2nWr95hTnm92q+Xgq7726VQsA/YPoTt9oyL/teAnuwWW7RXBPyugsR - /ikLmTUhP8yPBK5Y5W23rydJLx8Z/WPW+KU/lPpDuY0B2y/3YHI1JaCS2kvkpBU= - =KtEo + hQIMAw5vwmoEJHQ1AQ/9GvaCy7ZvGKkjAAQNrEKbalONQuQSt5LjKTT0Ey6Q9Iyu + din1hO+oH59wL8gh5bxRCd3t3QGazwNeR7uj0lnbbX+tUeI8Q/4dip0rHHln/7Di + vm+fHQu5y9NidBKNzFBSydbVpnWsPAgT3iT5zxri9H7MmDncc4U3HZYpdPxQoPze + wovPyOVbLPKL9C2PcA5PdbGS0wIczgv2mtH+aODvM8LUmJ9HYoAkMvw88xfQxX4v + 4/UsmMrSynlbORSgCjbEkgI/FUvV83Eos+KWAQeRuXHQ6OT6ywkG8s45WxsO4rqQ + mcJ1oEhAHAkjojDre4i91wa4b46l42gg2MhDgvRDlV8NxwuyJIGN3QIcK3ejkTiB + GuMJHCVEqDh2XDcTkxbMEJQ+9H0jrESEy9CwTxAD4+pFTA+G70Xp3rjugXGRLZSI + DES0Q9OCKz0cNHm4YqofxuAEBqYelnTbraIy5mr/J2GSC0rDsRylq/XF5ibuX66W + +2YfK0UxAcyIaSHeuO7NvX623lYkalzBfjLDS+d054WB7i+XYDsslwSOYH+wJDBY + j/BdsqkMhHknNP+fwaspdxY0uBUPeNaCOjSJLyS7WaAWtDW2eRBGfMX5sslbbMYD + XwoVOdWl309nVCqfoqBw1JhDjZHIRlzujWDB0Vtz0xC6chAaTkdVa6tx1S/yIZnS + XgGHwKHjIu2aBYeYwz0oQzj1GsbKUbFjlyvqYb0+9CeNYG+UOYM11JoAnQaIzGVC + 0gUFNqj47lJ7vHKoehI/Ku6wXforGgGbcD2d/U7Ptn1JBmnV0mogTZRbSnxbAwg= + =dFyf -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:34:41Z" + - created_at: "2026-03-05T19:18:35Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAoUOwHkIcIj/j3W61QFukZHIbjlF7axOA0pMw02epsnsw - MmbFPp7jsvH6yg+BKYvi7ZHNPoUsjaQEpVZ2x5Pt9XFlaOeYxXBDwD86bN8YL2iC - 0l4ByxFgDSjleU3dfV9+wtSAaNcdyVge3GKEhZad/7gP7FFr1mxY9ul7yLCgScAt - B+E5imPs0flyxr2vh298Z9ZBe4HUKwWkSOmCzI/+OR7Vp2p+Ixn+5H0Pa7yVOT9+ - =fKkm + hF4DerEtaFuTeewSAQdAp/RvxQIqSBiFfsJEf/Ou1HYo+7cKDgvDQD9RN+UahjYw + GLDvy9uHJSvsPe5Y+womBh9D/lnMvy/jh+PJ9m70d8D1wx7H4UtFtQgEE3x4KWML + 0l4BAu4+nB5QDE0FqsWfPpgtY8bbQ2LQDuGsYDgLCnx/Vyw7f7HSb+aUVMBMwQmO + v1Lnm2f9yH9DP9FoKX4TEo9xYdxNdu7QwVrou0alqH6GTmSAyOYOwOwEGZq0z/hB + =As2T -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:34:41Z" + - created_at: "2026-03-05T19:18:35Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ/9Ff/HUiYbUMLzYbsnP94Zyjs16D8DKrlDzCy29oBoM2Cf - 5K3i1yiLKeFxSQk9yAoWAUeFUcziePq3a6IJl6ddgmhaXRtryfqulh0rMzY4lNXK - zqVKG5/hrIDmFvV6j34ZTcYB0xQcQ4AZyQPbjjUIWR37P4pdtDq5noEJn8ZgW44C - 9PHzst3rbcMsAHzeQgvjZs/hi8vncNRNZgfvrXG0/799v2bm8HnPyOK0yWdva3Uw - AhCzHBNxuLeI9G0Cp/tWsB6nv9NZj1qFcHmNH7VJpculwIASi/DQmpXlbtROKkLe - beQ6d2jkiNgWoKJhBNOkqzAlPw3NwVHVX59c9PHoTR5KYMZSfR5s9aA6N5C6OLz7 - JWNS/OMWAMS7i1dH69+7SNLplmv68ZXYDmd5CWtNWvr4kmP1v3ymFNlMrPm08C8A - mCMhH+KCbb3cAUChLoKcPW7gh5B2qzhL+4Ys+qnjwQI9mJknocwAHg14vQ8S2MoC - cXTqucS9ApYvDuG6qtpP5uUt6icST22T4oSx0xNp6THu8Af/cfESKzCUlS1X/nXe - t9xo2tpbtAGmwWTNah9l22AEI7dcsQHJOoyYOIctrZJ6tAxVjFHoNt1dniT0pLGh - Bx4lvLLnfp+3/rugpRR6GwwdSNia2bfpTSwzoWT6WmG1Aoe3q9JeSG1KATpsjLnS - XgGnymJ2j7SaOsF9Y64xdO1cwRGiWzH/Xrwk8aeaI3JGXAsSLiPgmbowZ8OBEN7H - AjY4/l3QIBm131GVMeL2CdPt4cV1D9w82D2ZKggi5zFIbQB1ZR2Jn2XMCtjsMBo= - =euFu + hQIMAxjNhCKPP69fAQ//esFCAxgrPy2Fvv9vNf+ScPR1ZJfTKYFQl0QRp8+SnqVL + pagFGlu13Q84YEZhXT9gh3lE/eX23/HsurwPNCN2/QRuTemUlm5GhiGd+hajG0jT + x5H8NUj3iufhfJB2eDNkERULtGClaGkrM+DqiIiWLCYdRY5TP0En5MlPPbFlYAi3 + M6JUzLAYXn60JchQEfyb7wt14z2thjQjkh5YvLzJ21RyHVmzgd5Zm1w6rHmLQdGE + oHGX4Z29gwmc07NBZc1P4Iqxur5UTEMyTXwgmD6CBO0l7zza3b5mNGTLll4iXSmq + Kxk20bJlrUNp6UmT2ygDbsRT+7Q/CDjTEm0WsCDxSPO1dRJ1JcmS1kGQE7m48P4n + xxYTubqZunl7X0Iegmi2zlDBZ9VCwcj8S/bnTsd81cT6Vr3Yt8kuMCun4/Mg7yFP + kIfN86PrbpCn3HBe3S6+5PO6fT0W2YOZlWb8i5RaazFZINlCHv5+V4VJUlYw5Lmt + 0teG18c/jk3mIyjSHhI1SGAwFc9jddMh4rYDMJTroJqhlx0HM8PIjdXHSgL0YI8Z + eLM+/taD+gp7ewQyBUzDk1pF2TWwzOEi101+RUjDtDWcr0CQc8ocoY6kFS9/vKc4 + 3mTuAGhE3Xz/CdozhRLwS+l19Wm/SoKZdmznUuqD/NFt/R+0QkhCCtk0bLlnvezS + XgGAJ7AIwIL/L4gdDfv+3LxnDe3FFjtSGoW9DSxHcL61rZuBTXQ4j2sz5CDnTIhE + hTc/Pt942Os5rxuM5Uodj8vPhPBW0f1EC4CT/aIN9zfEf8K8+LuhHa02/E7NksQ= + =eJ9L -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:34:41Z" + - created_at: "2026-03-05T19:18:35Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ/9HNlbqj1Q8MADbdDgm5V9zLXPd5KxtnXT/11SnnW4qshU - Q0WgZNWpLD0dVRSektuqgl9XgBc/GTbfe/S/LCQ2n3MUKtmceuu6frB6W3FnGgjw - 9zCJ+2s7+8s/pb7ChlLujnt6M1ym0kAo02TwiVHhXEexqM/IdcaIwVf44IorluI3 - 6oF0cxJYS6qVkVNxzVcihCkPnMfsGW6J+5hknsa75atCIalRL2Iqk5ou0E9ecsoq - sk/ta/rXx0pTnwFh9vS5xX5oPHavd+sTEnAOrDxFY338AqhHgi5lWg1Iv3A9gF1d - lps8UX85HaQOLSF/VJNZ7kjH8Ti4Nh4HYvPs2I2r2QyhoOCtIF6O9Rj6HPjAY4WW - Hj9jIp6k+5jTpq4qpYLoqd3KPoy/An7Vx5mEAi0GW/Eq7JrABmzoCVrVP/0WDPNj - rWfd/pIUYqBoM4h65jlinwY24OrYkbx6pmp7Fx5ngbmMt5RenJKL+Y/oDYKqsIEg - OCybCFdluKSlmApTKPDNhoo962VDXnHUVRrZ1VhY60Bbid3VqqnRafugThAn91AW - EMy/dpyHgI77HgzsXjocJk0tkObyWY8YiruKkBrs7aWWL2dcT5PfNioAQCxZxMQT - ljTsrksXxREhcDLrPcvkplJXlJD2m0mBuZ471xar/MkKjwjreE1jVr0riL+wH/rS - XgGzA0PRosOBpwxjVsO7eZuYo4VEf9rKaFrwvzo1ekisUg+5Is8cbM/HDyBxbgCP - aEpU6ZpEzBI//6Dddd7V052v8OpCc5ABgTpzjGriMCw5NfuGQ7RIlF55wygm0+0= - =pu+q + hQIMA1Hthzn+T1OoAQ//Rc3yN9QwwXg4+UpreD7A382upJYSpz59aEqbtTNiRmFw + xK8mlF98xRb/fUOItBz3yaPgqVPbukssAvPHvAq3CgwUMf9l6atw7DEf9j9SmGoX + 9Be45Re8PXZtmR5bO+f2l760Fop4++auulwm0nDzZddD7CgRuUA0upF1H2z8T+w1 + ui2f4M74qZr3E22OBrCoRXja7cBQ/ti3nW3q8p5Q9RcbsKhTsLcAloGXMb55R/lr + jQRHg6fCOm2YYjzJe+edqFCbzpde7S4frFmH1vJDsUKPsxx7KloJRjh3r3WLCmZR + E/NmGj4GwFMrkE3Aqqw5P02IPhRl4I6CvDnEagSOcTgXT69Tz5y73ObSJLg3Vd6p + PVwhZ1zae2KX5OOVNMwVmEyWKWr0zUmbqs/jEoyT7NYGR+Sgt9hVGd/1f2MU72kd + q9fRdCMLT+9wjn0weyNByjByGiGcTkCcng3ICQ53WRPE4pz8An0pGdrtwJqS26mL + SwXIsP6WU71MTy+syVnmwuSqO9koFNYfXGAeJPaEQMFEnrvZPujPntCuk4Kv9v04 + WM/BpSJ7GRXL9dM5qfUfjURFbgYV/0W6DILy0N3Xf69uBYwfoL4nhDFytgsvnsBU + +0NbrkSOLjQ7d/2oTdLBY/FMqffDCAG+VWBvXYFUDifiO9jp3YwjNvV4JRU2K2jS + XgGB1CqBQTpCMB8cXuDHF/04ZBU/lUx7YENMMXHgKyNnnhM3++GFfiLjR7k0Ogbp + hdi8ztMm8HOR+HYl9x0PYeHhF/BP0dRbtYGnTj1VJGdpSzJNORsn6tZPPn61o38= + =FsWa -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:34:41Z" + - created_at: "2026-03-05T19:18:35Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ//XJhmglXMGmLz0fxUiWcU/blKEJ03C0Y9J6a1dRhBQ5VP - 5AIxMGvNPfCeiFp7A2Vt7yxblHakXOJzeL6eMFDATjpqCGB+VOdCIHapirOw/KmM - JI2wkjzhjDA+leOn4HsIljKdZCXgjlIHr7HGnzrLHzAcTaAIcz52xdQkrSfLFghJ - c4qQEBw3M3KERYzK87q+Rz0oZIYYoGZDeoMalPU6m2i37U0qZgdTV2IFIXLfwmfT - WrzQ/p6rHVlOjfJXkjdsY56SAgmzf5nwOq0GlMcuCVPEse/8EKXb9eXtZz/VajeL - BkDfr4OSoB+yldNpzuHE8iUESqdCea9SP2VhHp9WchD74bT5GjaYMLjYQ4IInHRi - AHRGwHIs++w/RfE+dszXzt8kVk7cKxOE/M+9G6VZr/yLQj1b9JRuT/Et5BN9GGR1 - 1rN3k9ZMNwO7Pij0ujuJgu0TN/qgX8Y1U1f43IrfF2t7LrCoY7/AZPSd7Lr0QUC+ - XppmPMCFMyuUBj4Bx+36KGUdrCoQhnh1q6VVjtoPnAtEQMtzRfYzceJk9msvrSTC - a3Bm8QuyoiIxUVN7J90zNBLwkwThtiL+VA8Vt4dVzSL1vDHBsZWfNJePzTSwKczY - 7ncM1WCfgkvB0wpMxSmxyinmHZj6XVQB18YplaDDxEwozWcXQi1cS0u6rex7BSbS - XgFELTuXBQ1JtA6gqwIKZi+lDRXCTTiAj4NNPhD2/pij3GdDYxQAHOGwnQc/aTAe - 4fIv31aU/6NLW08YjsKWGeE1FHsN83WGVNRGNVOjoBLsI0f9VvbZNVNrRpFQK9c= - =klXf + hQIMA46L6MuPqfJqAQ//ShlokeYvj4DVtEexsGuOsdLkxXVBgjfqrQR95NcoRov/ + J610rVOvATG6XED8FABHoF7Jlyz1QR8oHFI3DWWx5Xq3Lw/bkMjLNwv9DgL3beg3 + hQ+i2MhPa+Ke9dTweeIsAQEHMEtqp9XG/IsTx2EiUelAjH/BRrha7wN+JmB+LBaK + fD94wHH4Q2grBMv3BwoCvyxXuizv+NUissrhbxCSyc9MD5fR4dKe5/fANavpFDiY + ysGwp4znA7clFckC8x2yk46qELHQ/oG257vvplGLrHe1KdTVptilliqP43FQPZgW + ZxMXjXv23N8chpUoEpuDv28mUNbYEUDT6thwTZC26Zwg9myHF+Tw5+B/C/CwyKwo + 2Ll8pshw3U9J/i3rASFKu4pVnWXIYR5YPK/A2OTWEJPJgiSjIXOXDtHP3Soq7iTh + +3FMsrG5TXckfBw9sCu4S3diLNiv8KW4w5sC35w5gn3D458rBnOejyvdWPYAuPkn + wxCmh4iyLjeL3XA9ArKmsWBAB8Pvp4ScKen9/YHRr2Sg3W/oQkf/SwACEly/Up6n + y6Vlf5CMQG1qqsTsRU4pS3VxP2irh6feB87CAo9UpAW7OomvhMDBY+ZBpAGoABfk + hD+M4HKBvSd7H4krwKzafo4yvkewCy6Mtb90hF+XBqt2JRy9ZIO16ZluQqCteYbS + XgE+uF0OlaofBvu97RxU/6cTxmr5WlP4+iETIYsIXwtty8ZOWWh+zIXa5cHKfRhr + 1R+YqO2aiMRFsm8pOnPVM29LgWSIhU7Zr/rSBq8N5RDje23v6MGPnuIHjNc3AqA= + =+9I8 -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:34:41Z" + - created_at: "2026-03-05T19:18:35Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAAv5f4j7lHDhpmgXNihEC/B/SnELqRafm7r1GcH6N/kEw - YzfLDIELJpDdU5NZvKig2j6gmMXPl3LWSpJcQejmkv8si40EHuyE2QBkKAQUb/yw - 0l4B+RTmw7mli6E8xkfhqmR/FSetvCnWdJ+1tnSjW/rklO4AbjqBC6NiPDoRYkpd - nIjePWte8zqOkgOAVKydB4FJf8+e/6vJFZK7JvPowHYj6DEParhrTiT8FcM/deZ7 - =ltvh + hF4DQrf1tCqiJxoSAQdAZytlUr0Vu/VVEzHyA7iSI6aaH+FCOetkqmGH+JIga3Ew + GnWIr6o9I02Y37O5tB0iCBW7CG3OrlL/VsDlT2M+yR/slRGkUPJSlOj76rqTce6f + 0l4BTZdO0e/Lv362OqVkqgL1wZbTW/7lKcf+9D7LC3dsTcHrLM+I5Qfba5JJheFf + QdkHBkQzfT4FFZ8U6T2xbebLdIH0kW1f5/VaiEN+4NzXuvHsjR0364MhvTrsdNOG + =8nGZ -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:34:41Z" + - created_at: "2026-03-05T19:18:35Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAo9eO6JAmNu8c+nekTYoF39LrpRIfhaC46STKdQPobnAw - fm0oYIvjT0Lx2nLrtNAEhKQGJkKhBqkVxGJC74YfEoUrjGOUR2bKCBcwd+X6sP3V - 0lgBf7W5/9972Xtsby+d+5sLxmlrj112F2R8k/DpKD0k9XbGZYh7KIPGsI3rFNfH - /+iFX3k6LyqLxYBjp7V541M2OFnwJVGQ3AT6FRW/NVxcIZU+9ygT/ch3 - =XUW1 + hF4DzAGzViGx4qcSAQdAFlFekILHeml0r4i7oX9QphAViVARX2+opOW57fh72Xcw + HASmykw9cNl2uyVEcx7LejYq9I5Z4Nt1yf4FYE2eq9iUvsPZ9OGjrheZMhv3yPwx + 0lgBUSJ7ITOST+800jpsOY/X6gvvcz+w24ux7ENp+1dSQoXCCeBax675csFSX4aY + fCis25ThqnH3cY/gBoAmTxYvqj1UWkarVStufPqYm220C1Dg0Uj0B3/q + =Uw+n -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:34:41Z" + - created_at: "2026-03-05T19:18:35Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+ARAAukoG38Erd7RKjpQjHvIbYaK3U28DsGoRDxnp2rzlzx5F - ZcxgWw1qD/pR1d7bgiG1vQc1JNVAc7ECKmGxhfLjmLlLpxrZP6JaBerxXwf0dtDp - /h4/Cary2BIGcEjjPD1lCD7Hd+IapyczjFI16uZrykkKgjkX7NYxLl7pPDqZJybz - 2r9u/prY+YR1jENXpB1Wt5184QQ318qr1dafimceipkDtrEu9nZjrcZAsozoWUkk - GiBYLMShsxiqsX6G9OIY9zI7AiYdh1xiUxpUZFiAj86lu7Uv+alODNbgaOGYYtu1 - p58LghAaBbbvR14ePI+b2JUTIXDB3LDa+0WeXonmLHNXC8AuAyDzEI86XVrxmVkE - E7FRDMHIJfTm0m0ZjWlzFU2ijHQicmvsSk7eogzIRMb6s/el11XQFb3dOl9iKp1W - WNb/kKNqw6gOXYkMQviDBMpvtqZHKiXkBM79NzcVIsOvltv7N678D7hDVU0m5evV - rpin0EPe0m50TNxrZF6u7zsVpJUa/B9WgLcpRjYdMjVcfPLeiIvmBCw7Fgvp1NEF - bDKEP1FXtWbNN00HyH/Qe01LhypC8ZfRFWxFP0BWukh7B9eYu9bF31Ps1BbY0jdS - yDGOA+J4NoNswI8M94hhaLEQcBvuJUmcXLglX7UOKhMR4P294ByY96Swmu9m2rTU - aAEJAhDb81URvayrAYtNvWGyRmsVqG38z0ZQt951Qn35VePzkL+F/Pghqxo2SoEW - XHObLhPBITmru9x+cfFBlT/oXlhfyaIcSG/ZIV3L4b+cP8ARkZJf5sKCDljwiaoY - m6GajSP233EF - =riyp + hQIMA2pVdGTIrZI+ARAAjlxXsj/hHiH8s+nbsBnqpJaUoa1scuh0msSsV33PDksI + 1SKmNdYObAQHsDi+MbX9JJPTne0a4u7dmiaU4ZO3LyMBc3FA77QhKMqGeesWRrPY + TuzyVOC8tPt1BErx7uCwzcmYQLj4sDLyqeOnK1iDEGlEclpRHLeG+lz5PjWp8XaQ + Fx/XEgfLaBN5/RcJQhcWvJh/yj3THb6y9ZPpCwFZg5vDc2Ad4ap2c+IfkdeXHmBY + /H77hmy5wKmgD80vosM1oSRvGhqvLm8mDJBnopHwj6cvcnqUh9+NzM5fdoUA8Jor + VwpM4pK6MgzVdxj/zVNv5zNYLQTCGMO8klCIiBWdeIeUFOF1W8vNluAq6bUAOzNM + /9FIQqB3B+/7xvghL4CzicF9crQ8cHc0FfrjaHCY5+lvbfj7CrqbMSnVpDuQfObf + hpigSiP6RI22rseYuvTK/hL7JmdlFqgGrFT6uSq59vAAhad5WdQ8ZhXQveK9qRwo + V4rjrdrhTuQ25eEIX7U3UBNzWllVLSJbvIf4u6Q1fP6ccXSM8nuIAx8qsogq0W3/ + NcOcA6jdGvBiDLzu8w32nis2X7rwLQaa9HhJcyjgYiVm4+Df+NzGborVVUI91WJ8 + jL2u+KPOFWdjVql5ckr2LGLjRPHAlsjZc6eiWWd44SZa36alf5EFMqhxRFzJKEfS + XgEfJQF+MOAiGCRaJ202Q+74aUmVnRg9AKtDjz15JUzg68QFEtGMq317O7NiPHyW + 7aBoalj2AoyCmSS8MC1Xdi9EHRNqQbmiTDRRY3x8ZCx55d3zzkoLy6WNvsLxOWY= + =D4KQ -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:35Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdALjIIQpeIAstI6SJmZVy3/sJBVtVHCySfgHgR45lr/gMw + 1gHT8n1VMzynknRCwT1epIApzCiZdEug/F6g3Sm/KF42HwgEm2phndK8Hl8B2bqF + 0l4BK6rMvSYmpSqrbSy0AXzD6esFLEoux7k5VRy8CHqlm156989DWuQmwPJhf8xZ + ZyzfmF4cfkwqU1i+og4MOfE9wiQIAb1/lJoVsGrENSfIlEhnaBLpFGOOok8ak0Ak + =CHlk + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/cloud.sops.yaml b/inventories/chaosknoten/host_vars/cloud.sops.yaml index cb9278bbd..7d0e33648 100644 --- a/inventories/chaosknoten/host_vars/cloud.sops.yaml +++ b/inventories/chaosknoten/host_vars/cloud.sops.yaml @@ -7,204 +7,213 @@ sops: - recipient: age1gdfhx5hy829uqkw4nwjwlpvl7zqvljguzsnjv0dpwz5q5u7dtf6s90wndt enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQaE9tRWxWTzlMOEpjVjUr - VDhBbEp5WFFKNWIweGExdmc5VGo2UDB1R1ZNCjFQVDJlOXJYY283eXNTYVVkWGRP - RmxBb1NoT0tKQXpySlQ3ZDg2WEpVQW8KLS0tIGhqSVZxakVFNG9ld2xiNEI4V05h - cmsxL0oxSXo5MnJ6Z3ZlaUpvVmVNd0EKqJvFE+mPnew6oaA3LzdVIJhFWOBv7OL4 - vRX8fbDqG3cSiIAEx4SO6DnK7UG+pploS0D5Ok5icDXUnZ7HZn9+ug== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBBWHEvdWRHQVYvRFFuWG5J + VXA3YWlDbXYzbG14R0tmOTNmaGprWlByUzBvCmZvb2pUNWppQzFjZ1BZRTM2QVJX + NlJ6bDJhSjdZREZCa1ptZVJBaFhHY2sKLS0tIEQxN28wOGV5eG5XZlB0V0pGNmtW + TXFOMEZhT1k5SUlJclhEMENXV05wNVEKZ4Ezqvf+k9AtcbB6UMA9ARbdY83iyohb + 1uP5YnBXFsn+aVLXVuaOA+NeB8Tai3ZQgBH2WDdaJmGrg7WXOw48kg== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-14T23:34:26Z" mac: ENC[AES256_GCM,data:wPkDg2j5sKQqpgXGzJmXLiNbko18FUWKbNoVIWoyj+rtBUiWkBVRBKwvYgt94PIRPoDKumJlsuer+BpQKjCDjVc60lxFFcd2saiiGQg1B/9VrHh0iPD28uNayo9fDxBIYmcx7EZl/CoOAIQ+eRFJ8opQe7SsQLFnxt7WAKbYWt4=,iv:1LhnLySBQa7dNPR3VIelxLRLHip/rtiMOzlX87kJ/1Q=,tag:BpowDN/ZSaeUOldf+FWaNg==,type:str] pgp: - - created_at: "2026-02-18T08:33:15Z" + - created_at: "2026-03-05T19:18:26Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ/+KW1dRXAO11hg29z1dFUXdlLvxWmG8wb83FVTak8cJU3R - 1kwTAEPkCAd6zF0+pd7GsoDtidK+Bt3EU0Qtf3RilqIsNlB8EhUEYE68U0mSVcHy - Qa+qHj5bThXcLssjRa7yHvahNUqkqXnke8of9VQmShvST61+kl7XS6wDTulhBFpK - ylTXVtUxsO1T/nZkIFvhta7uYdlGgjVsgOKhTujtjeh7q9KpRmjjT4GdioRI/SxY - dLnXZhjqLO75Q5xHAjOJITl14JQu8XAcs+RFLWlCbF/gsVEPKQSXwz9SKhprM+6m - V2rtZUvJjbRPhMOlezjTazMRxzi+zxLB06ZVAQgCe+8idIKFZu/5Fmc+OE++cCBY - R8o6PMsZ9pMp8vzk0FmVIY5CJahejxZm9e4kcq64M73UgNdAKlwqdlASQhP4SIG9 - Cs+nmyspO8elpmB21q/cQe1SdySgEha3omYKrEL4BDIgnKxiED+LUaQrFjcL+9uM - iDbbalUhF5VHGwlYiOdASjCD0Qy4qHxX+MImfUdkcd79edj7GqnRPi7yk04KyGBg - GhmoFSZDOz0nPhmKKSlBDJqsr5BGq8f8tuBnhsQ4gT+CiyGRTmWr60wyTCw1ftwi - YwrRX/hFIyakfhhJCoHm1EhGMHjtMF8FAB43HeH9zGsjuWn8CEUrh0QQmkO9MZDU - aAEJAhA9hdSF70Nk6csSXwxpgLetx+JvGcv5Ef0cWpgtzgro+w/zVVQ/YNkMyMBg - V+1+sE/rhGbtRGq0UhqZgXt4Re17JdO4sWjw2tuy5SxNXsByI2WeJrbz6TvuBJ2v - d7bKCe85Ebp0 - =tdv0 + hQIMAxK/JaB2/SdtARAAotiKfDE0H3z6j8R+CssZAnUzAmlImWVPifomtAW6noQ+ + AEr0VwNpzrY1rho2xoJDHdY7XI8jEU3iSrnw6Bl71EyufehL/FsZrd74FQq1eR6z + hxNq/MIQHuoG/XfDnlVNVTaqEgtGFL9a7bsJx1ngpd+oZBtYVcTWxC5J+xd7QBdq + jcVO31saXdWH0G5SRKJpQ5LHyX6BLwbJ8jEglyxGqen7pIQbazpBCeyVplDG2O06 + yf3O+32GCurAAKQLw8mtd/1cVNErcilHaWMH4TMVNKQnQszgsCfQgPttuOOsIfHN + Hdw5VQrKywk0wGWx9T8MTEcg9kfZPf5nzaicvzCzGKa4bYE+UrxNKj8qjM2RhxUD + hoCDwRel0ehaUIGc9q1B0I3tdvoFw5rMW4icAhIzRVT42H66ZIBG10zqkwAGB+di + tDK8UGVNJdavJDDUTPe+OmQsAS1Of7rWYNP27XxPNyQ/egTQ+ZmdDxFxwday9pXS + 9MuC4HCSeQKodNS0qr4w4EOlyZ6JkNgsFC8OLfhcHGGhd0hQWO9mU3zklVuZhI3n + DynHNpV1fPh8SKBaTgKs4h5CtBeGgt4y8xQ69lD2MZ1cilfzre6q2vlNP4eZQN5X + aZ84GpVmKgwG0Em4b9ntkaDUkW6uv5uPung5B7PU7nJa4VFB3C5i45+LO/WCOtvS + XgHWjHuMqkOmtDpFu/URiVFW91erFiutkEsaO5IPGdvM1S/uDoFO98tOgs3NZPvK + Qu/Re8vtkILODg/eG5YWhh3uxHlItyyd/4GjqW3jla59gaaCnjiM0adBmhQjcVY= + =U2RF -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:33:15Z" + - created_at: "2026-03-05T19:18:26Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf/b1opkF2tK28qLCnJyTmHC7oiTN0XQD7pRZ8IRnQVqc56 - NjRTLKFh9BuxorU11d2qkn5Sy+xOMG9H9tMRB/ipxzMAVo+JvzkuknG98Imtzv9A - vMDWBIGO+rfDBk1k+tavtiwChuZa0RXau2jszs1dFrX6enPSQg4aJLAKR99LxGou - eWj08nN+ik3EJhFmiNJZVhz9tEOJU/zKj8fnkeu4btlf6gPR64b5FSYfEAgPXNll - h74P3BTGbRI0lMUVsY+6ss96a80QCLkT+B7U3VdrPHMjLkSRGliSLNjjHBRdwwUT - Ty45QzUzQLii/pRHYQLGM4paeQW+rIIMZ2tWs0cMD9JeAf5XfOgpzH7r2gLFctZr - kEz6oFFUnwTLkwewucCnu+j0uezzMa7ApSWsoK9gLP3XmqLozS/CLDtPL/gR+NyG - z3tUJUahiACMXYbBCTm5huPvrtmYsnkUCEG2hiY4nw== - =Zajk + hQEMA1QflAioE8i3AQf/QFMA3U+gfOno1U5LBSpvde5BO7yuoLMKx/uTYwBK2w1q + L4jaDGsld75faU9WXun1PZ7BEWQ6G60HYtiLSTUPugXKR+eXW7/5DrGHzAENPoLE + RR8LNO/Du3FaVXRub2Ai9QORbrbPjRo3vkz5bE7F0iQOD69228bgszmev4KPdMqs + H5jKhzDK/P7yISHI2FLZ+97e9n1SHUUnHL+EgdHSGPByft1TJsqsDNCPRrwqsqe2 + F4D8clawPbAX+QUFyzXnaM37i9vCTZ1h3JuXW+FFNrENMNQmBLoLoLCkRx8G10wx + 07F1GgG9J8R+SdeEDjzu0M7OBEcCJKE/xjIV4cDDh9JeAXBgXHouxDHnoyEC7JSo + rSk/VKfyLjC+8ZixOcH2gvkUHqDwzfvOYbFhHrlP/OZA/LflAhyZ9nmy725TLxKX + aLvvP+ZIl2M7ZQjzvPVqVzJeZIyZrGLabTyPZXOCPA== + =VUtI -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:33:15Z" + - created_at: "2026-03-05T19:18:26Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJARAA7B4g4yOoYDE2BEqON3YBlZjOJOtcLY+yb5TBgQ7YeV9S - qbtFT7BmzNNWOe4zVSp9QOj56zrhzrOtHTYQ+Nlw5YcKRMv8wfYwbRHWAwxIGoYt - B3JxPJUYmGOc1GpaceTK6knaG5ePi+gAERZ/YDDraUQAQevF+mAE0OXBjrY9CvmU - x/94JqrzecSsrHACa+UdwmXKgnQHUNDN/8IlWvGJFWkFHyB54HzMtd1MGFE3qKuX - YQAif7HbPCoYr+ZU9pMw12L/RPt20sjn2nyrytHVaQNrxUv+GZV+6qF4FXX/Dnxh - CdIkFIzLUC6VR2Er2r5BlgiC07jVHC+k7mQ/70Cdzvgrmfp41hU+mjqDxT3mftvZ - kuBOZHRkh265YD5zMnHDWLsqTHhEGJgMGHX55xqQM0okdr6uZRLY2ddst/bohgF3 - fuELSqJQ0LVBhERqcQbuqLbixzf0EG+FuYQhmT4t6L13KHvqBvBw5+UKQJBqI6oo - i9sR4cxddB3CDzAOSgowuBT9ve6muNSRUZWpyD5hLteq8OS1hxeucbMGE5Ynl07t - ZVfbV5WnW4re2YRx3/4AmqqkeLmlC+96BcTznJ0R82KYweKdrOoB1b3sbPgKW6Ha - rPc2krKhfMHYVgqip0Bo/jeVF5aIcBavHh2ofi64TiVAVJZFC6SGNMQTL4Lmk4LS - XgHDi0o4HYDCK33DphQ6HNmoUqd4fk1XCsE3TMcJMOCO3Bt8J5yuUgvRwRhCu+8J - rbvGUqnLv+dG9SwrSu79bqxgPhr1po+AaQoqjrbBujyCbtGpUaBmSRU2j3Tes2g= - =lHxa + hQIMAz5uSgHG2iMJAQ/+PuWXwaOJ78PWBkA+5hUm2vzDuq1PxagVa+Ix/p4GVItN + M0mQ9+EFY3n5C9kKPAbue/3WUYMNy5yEd9aJRfWtF0eZ/rhFyrDPQQyVDEuZ/kYe + 7+j4jcMTvVudgsOROPoAgl6hOaandF+lQDKdc47q9ybnEej3nXJUKt6ziKxu9ZDK + x0S/5f1Gml6rFIPJxJEuZKLOE/jtqPpHdGgeVKiFhBhvYheyaOb3j+Q+G/LamrJd + TMNONibQw8bbfaI4lCwhXC6oELeZeUS/cXM/Mky/ztY8+/XNv8MuGCxo6b2MJTbr + 2I4CizG0IVlLev0T6zbAwflkmWDN8mg9rC990vKc7+nWILEZt+e2j+fLB6pFIk6E + uDChjQuRIjR2Y3cT5dGIy9MWYySSVQE3+6fSg9PG/HDrwvJEVmg8+dSWPwvI399G + WjAJ7+of/eEIwy1AHJSzfOItazOLp3xfgycQ34aCZ3k0Gdxa4hezdl+HL+mo7/fh + eMqGHjNoM6Xv8ZxIHmvsL0oC+V/9/ZJf0mM7ICryRixLJpVlv4+5Zl3wY5wtaU2X + wyvHSjMRIxF+V+qtPGExNIQZOT/G8qknAH7j+va0OCrx6XoKeXojsk7D+1CYb9iu + NW+wNuHM82bbKvS/ole6k8reYH6SIKKKZkMAJ4PgLtHVNoJdd2YkrEyBJdmUVdjS + XgGosGn5esx94CCmCgWHGSWYUKsAvKnCM6/z3bUcYGtZEHbUebNBIs0W/XNvdX8P + k6WuSTKHdtmdqjUKgCOpFnbnz82K6iliquBxDBQ13K1RGxWQ3ish4q5pJTqkB64= + =tOES -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:33:15Z" + - created_at: "2026-03-05T19:18:26Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1ARAAirC1ZM3cpPqtjF7IO5mZ1ykBEG0MoRrNTAnKjOpZnW+O - MfkOJm4GRjOzvXSUjhhcgjGM9VD+FjgjySebh/+twaMc2LVctb0d+DIr/qZN6FTa - lYRlU2bNxVDtgFCWLtDkXndpENbyOEeRcYwEu+bSEQ7K9sJ2nhfKMAvtRrw7MZOF - TeoyqvYnYQaub5MkEa6gEM4QiYIvUjSIb7V2cgFlz+nx/qRVLX65pCUibQz3HIl5 - x8PvSh8LYNiCG8b68outiFcI0Wp2/R+h+kLL76lvV9yHFuawelqTkuBHAlYuAlKm - GKt1m2+EKyc7Msk6CiZhRgfQ6AEYMNlzDmRmzyffVwX5nbuM9+lP3y9dPFHftWjE - +D+lcOtVm4mmSzSgM9kYNUyp1bEXtq83YGZ7goX8TML3j80DrE7Yr0UYFSxvXFXl - QE3Ta6t3Y7iULO8bBDJr+/cOKpx6LHS1tshqSYfN7Bu60AJ4E4fRDelR6uSKDhX8 - sagPRW2mH4lFTcofcKAJSwUjMYM4ySLSGjzsmEOvZRc1TsLORtR+II5RIkk8ssgv - 4HCDdFexgqJw1qxz3w1xkME2nBtPm04NyxUjd0xTIaaSUyvvvE+HhowW+GUIt7cp - XdTin1QUPOk8/DmmBZMMikmnnDmiDtdwQGWTzIOnyKjDIbUuO4fP5wGsrFSkBNbS - XgHwIVHfir+o/m5IDQ35NQqBSpeY0OTgLzWe4h+PzDL9kUlvwD5k1pwp8ox8gfgx - fwLOy/gLXPf7+N5q+QEVp9nH4VXIEN8AmtFCers16P7WxroSSkKmse5cSMTr+bE= - =Rqaq + hQIMAw5vwmoEJHQ1AQ//TqlQ3obmlV2kUASeQmAFJgTm8VJy8g3dtAbzP6vJ1YJO + f9YjTjrHWH/fctqTK9bC1/wGRi7IEJAxljOUmnazSDWVIUZW1kZpBPFNO45d/TbO + x39avInQhDLALgLJN6eQn3L+dZblKcQT/U+YKNpcp4dS7vWd8CuBjgmRzgXDwyxn + heeqRre9t2fgO/1WlHt4xTdjBwjoz4wdd+W9kg+FKyVOZaLyt0URY9Td4prwrURj + hbtMAKQRjQH0nfz4rgBPlkmiQpp2W4nq/Lyut5OzdtTc8I24MwYgxzgQUiqYTspj + 2WyzRenfqb3bdQ5u9QfH+wCvcdCq4s0Umeke55LPtgUxwQFDCKWLYA98dgve56U7 + gZeGop84rzk3cfOQ1vTQbmHTSDOqONbsN8VjZ4+pkVS0i+ViKnBUgANoE8fvVb3O + owvRE/lDhdJ/qyFXYoko5elTWVT6emRqnhBh9EI2wrC5/6l3KhAuk2ud1G3bW22i + TKQgARy4tSzUe4qWYdmsQncvhUA1V9badLvI0eOhAhxnC9yrEqhd3HuqkmiYh3lP + 7zrnUkM7txA/j4XnItwR/hhpm9s8bI94BeYUjx57px4ZLS7BpkzO3Z2PDoGilCqB + AeZY4m4huHFkOv67OLW5P64Wf4/je0XD/Vju7JU3Rqxp/sNyQJlWxdM+TGhdjSHS + XgFnLiJ1MeRz+16EIid56j9E2f/+MEPNeJGjkglpbgiVP2kbTvUdwqXxECwSthjm + 9boZkjH+LTGj1fdX3JzDyBYeFfzKIBTaKOJ9EBHxKJesxxJbeM/Sn6ipOStXu7I= + =Ngzp -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:33:15Z" + - created_at: "2026-03-05T19:18:26Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAuSi8eAl9WPDvDN4Zyp5MWarm2KaahlA41PXCNN8cUH4w - t4Vv5GnfTLH64+UNtNm7ot8HsghtDs7ifZeqk0dnuodCSxHUuyBqUR2gvnx4JLms - 0l4BG/tWokDi1GfYdo4J4aJVgHj7Wtqg4aYvfYv4TSSORxMYGVqOZDp0tW5+Xm2n - Piq8q6Ye0ZxPckgeFY1A3Yd6t+sgG9lnzbLg1cJDrHyDw3Dbp8ahRLvS5trLnYcD - =u0C2 + hF4DerEtaFuTeewSAQdAtrU7esP3fx1hYVD6jVUIl/NGZ9+6tEmd8DVeF/8SFmgw + xw+FDlSI4UfdRUp63Z7bQzIY2jseElhDRk9o/gAUxYcqoEi43yudgex/8/HkyT/5 + 0l4BLZMEF6pD2ZiEoiFbA7BQqElW8fuWp/cT7l1932Eq3ygCOYU6ay6aJFjCRy4l + Q9vFAI/fiw19acdCnBJHWJdo+k4QrN+n/aiaRzH7AcZMLMHdsA/uk5s1pyflZP4X + =bCB/ -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:33:15Z" + - created_at: "2026-03-05T19:18:26Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ/+OCzF3PpRHHVFHqI0cDiB9SV55UqqV5InmsSM4xXEpZqF - dknTjwc5fnqjZ6SqeQdRFyNrBv+iYMgdprTnz6pTEjEeilWZbE9zAJJZI7c9bbrF - 5WgRCa+qUL6g2uR/tHVYAnHi3htbFohSkgeWWfPQXOkulEimPA1c+XzaYFLL3SMa - cPQVkJIzrTbLk/iKa4To8YqJx8C0MUNYDJnf1MjlPgRTLq9pqjPAKIFbGyItlArA - CBgb3FzQrP6ecW0AgjDA3vW5h4XDcM+XYGs1+fzcOhTUgfLRyHFD2Byxa+L6gifV - vTs3HAd1jh7J1ATcsxqJocLFX3UH8rQh3YnOcw8qigIO2fMCSHz+2gaKZq9a1Tfh - INqv2NAc5fd0Qnr5bsHWdjLu3QSwTMLyOZlIW76YvE+dlYBtR4O7H0Pe/L5j5Cu6 - JMk0riN1T4MdgKjpcVrHg8Dnu1iFsa6LCmBpLlkRR8wT238sRM01aI3MCvvFHeNF - vgui3Sa4slfMD/nDMhrZQc0ruu9c12F98835dCMr/e1UDCHmtAFExc/k6HdkkTTj - D6TlN2F0xhb9f48BHfKphtiF3cwQETCJ3PBanK6wtVlFMQkcjQO+KObRu6HY+mm5 - KbNHwLBtE+LAZ4qxY4fbHAx0QJy7LgikVjCPwy+c7CyfxPCeHtk3LhfLINbaorfS - XgFxblxFsWChGmEhwV3J6jYr67Zkmeg7FkvGyso5W6pxxf6d4OSWZit6IyQis3zs - 0XDEgoWcJLH94DByjsBFhBGpr6vGOESv1zd7gH/z7SeeLRdWIenfKUoE5W5ahR0= - =JwIC + hQIMAxjNhCKPP69fARAAlK9Ix8gq/gQSOzhaEjI4ApN9KcO4MTHnAgwA4ZF4hYWS + vbZ9Inyn3DBRfTmUKOqUCgbhKs/M4jk9VXNyvSiyhX1dmWrYqWnk+QYrgLuf70OQ + pR0mPSwu2YkMRuWSXLIAXfxHiwpsXh60bj8p6k5ZacveGEF1zB3ChhegG56ZkUKU + i1jRtjETUb9dPy9VHu6lna7ayx0g8woCrqEJk/UYq6KPNb9ZZ6qMzg5PCvjxpdqn + 5uPB6F2TFscKTnpVPf9DeUGlcUrRL5WmNLmyI/wZ+tTJ7LzevQZMD2ea5U+cVyMi + MQHrta6lS5Ax+7jeocfXv0jY3PG2RkA7KIVv8Ttg9/Jh6hv74wmK0Wsau6DglfeX + MhuhceTv3TZYq+7utHKcimrFtx+6oflTcO4WJ60nXut9+3LtZKlsiX2r9dl5zKTz + +BQSIHP3+OuqMWcvKtBEw+XM+GGNT3aTOxKEuHBcjDTzC8WRmvo1Fhiim3VroNaP + KSnBdLruTZKTZ6lg0vPT1jghR9LRc4MBg8i5vOjZXQK3wkrL0noSABXXHGxA63N3 + hwLuKG4MTrWReyeACZueAiRvraDvmKSdpd0qQ/VKlyyXLgM6eDA5Gm0VQA/fUsef + UrIxe+O5NKGl8z63Pj+GmyibgqvdEISO/y/edgdKGjO4yja72NC6bDDbaRV5kGnS + XgG0yEE77tA45cYgKerxJHUJBmetwq9jEQlsfsLd3+JjXebSwvVIXfcF3op0kZGo + uV4aWV+f8+sCJCi1VAik68/Gg3Xt2GyVC5PuyG9ZLNnRYpgFeJ4VfG+bjvJaLMw= + =asyG -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:33:15Z" + - created_at: "2026-03-05T19:18:26Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ/+OXvk50ouDo2WjFoa5JaVI2S33T/cAHooG4yZHivGEOCN - mOQejc++xtJBVS/esoq7PJ3f3cA5Zj7KXaMSmK+xyeKxPo9PxtOAkRLyPDIXLBOI - jlVbIy7qA4EKA7xTJoLhkRwNH8mn1CIPeoxvBWRB3wtwhZlIKS9IPN+kZmC1zfx3 - 7sAg+X0yaWSehRoeMuTqWqrdR1SydZaPAkQsmuioQ0VKgIStzu1ft982Enx5sYuE - hmDYMCqLtyfmjjhYhq6ohCJbuh8IbcLNzMhIzfXoDemQNjvjMxaDI7bRhmFDoTwp - llLAxM4jJ5/NaeBNjTNhpBeZBDNFDpOdpzbwP7D2ywcZ2meHbkiQE5JoTt0CiWzi - zUJAA8+78ftW0RHmw8YM0E3MEv1wNGXtilvRH+8qJDfaBxhKBeoS0eiVKgU2rspS - hQxQLa++7MMOfvqpU3wJENmRFYDXF3K9fb9eFXH0nMEowbE6eRfY9jzaEIDlNJCq - mlPwXH9GYf8BjH5THKLR5h64NoejaTFmIwK3NxYMAp56TmgVS17XxxRzcxI4NdcJ - yNm8o2XujKavJNPOokpWL2KfegapsVrliH/ywZKiOJ7yZUNNR7fiVRTVj/vBMfhy - Bx5T/SlsNAchuWiT04bIbybk4tDvIsVHIpDx/Sg0NPHC29kzJhoZMKoRPBnUmDLS - XgHRaErnmvXs7I0Sz2Zv/HazSSlNPBIOeuM39w7aRWgVPCMZdFq1+tYu35iSTCmp - SipzRkLdRJeO3h4zDIrzsAw6/5UG6P0dIe41ytGesPhx4+nMI43G8AWdOM+zKNU= - =adPC + hQIMA1Hthzn+T1OoAQ//T2Rv+ihBSus8riGm1NTTV8Jlv3gUYSDgY2Mj2tPgORji + qV87/7Ut6mvZDUTsFws5GJw+Mbb7m4XtvQ1LHnAIt+WZa7cSvJQd6oxaCqt2jsy2 + EqbEKVZUqXtQhnGTVEsVgv3Qm89kPZfdjVyA/KfUz84VFyy3orWQ1ULwxaFLPwO9 + B/e61afsI6XZ9KeEKUyHLgnkN8IDjLonwUnDCJdRJBAHyDHw+o0ATjh12ZTRA5EG + 8bOrD8AhpgO1wM5uyxR2zqPWJtF6r8BZTdZ7vgkf0qrzkbSijZ8N11DadhdL7eRc + bMMWVSbfVrlUuTgdPV+8jXJEtLIkdKcNmQAEVc5GvuaIyhyW20Od0Ys2SqAKX1Sv + EK6d6Z64kG9/kVeGqzxJJ7eHqi/tLYXpYDuuR7XfojLkIYURpsWVwtwD5+IiGSDt + d2YyCMc6YbI6/Go/O0tfrFtHFyVHMqbtjsDoV7G7xaCY5hh7tendrllAAmHEuF4J + dkLQ6vy0ObPib4PjbD8jA6m8rU/6jvIVOvlIpoaYBn4nYa/QoR/gJ94bJtPKvsqn + LQ2ENVsXpVi78pDeIsALrZtC+FRnp3B81dTWoxPR1YXNS/PA51R8ueBJqZ0ntpoe + 5E5Cvia0sSMAtCp8OZhypr+Tj2nZdReu/rZ0MyJiiwbPXoJsO33lDr+M4vloccPS + XgH7o2/WxsMcm8rBrNe2Y2ybQ/CCq9wX+s7ybsC+RAVZTpCxQqxyXnAEcw/USCHN + Y4l9yUB8zpkzKZqdhYvzuff6chUt/Qmy2wGS8dt/KeM/xoBcppM/4VwzA6mErDg= + =jFxq -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:33:15Z" + - created_at: "2026-03-05T19:18:26Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqARAAtVjhNBW3YblVpbKIa2Wjh8NqW66xBCJtj9JZb9AvgktC - ZG+dHW5yFC/iGKiV8H7Tsjsm0G0EQXQyhLZlLzN/49RNNSjciNmj1p4bFE06P1n7 - IcXZUhGNANb5Opso2JxVMdG3Ul6S65u03bf1dUV86tbld72mqZYKlMgksJ3gNx/y - C9naLOYcOcS9JMVOGM6TYgKsrleO9h9TOcSHN3+ZD0BkNmW3ePP7APnpOKRTNLUT - GWWrQ6QfYd4Keg2cO9QE2stFvS84BUqdNwipM0WyF5pGNN0loR9lcooNH0udgY40 - oUCwucTLsjabbC472LzdIf3KQwWBlbg7ZS3B2pvx13pFO7PGu8d3CV3j1TbvbOcw - em743/Jzo32RbFan8f/Ej2nf6WV7fZNpGjRcWfOvT5FofnWP+PrOUuRfYBk1tshi - w3wL7XLjaIlMK9sYIOT66JOUSrNJUm4bsHhKIeQPfNVCkx2I3tImWZS9QcLD3WB+ - a63zgwSO558HuFEWX6F5nQMtkeBGhBiSZpkYAmAUommCwUdEPFVE6B/5EUkTJCep - oiyG5W1/o3TbIl+sSgWAX3DPJDrEV0An50xcNLsysQ8tswfKClTYOmWwu9NbfFN6 - l7Mu5etMeQIPI7AbqXsOn8oZoQC0HanmpHX+ybsrWAgzry0GyLvGVdgp8c7yPrPS - XgFokt1cicXFqp7wj/jUAdODFaZ29rok5+J2XwpSBP1rTLJYRDZbyzLS2azv1A28 - W4dgTgM+QkFnopOQBZU5lxdxpcGo/k9r0846ddpsxn4WEbfLopKPk/WUPkcjUCI= - =EIQX + hQIMA46L6MuPqfJqARAAo6BTqMmtHqUb8l7WTqDcJQq2Y/iyPphIRe7eOjX4Zqq0 + jdE1EzwZzaEVG+dR+gcQ75fia1/C23qMe7rqipNTmg6vlAAgP7Np6i/maF3Hnq9W + Lnl/7+bwUT4apex1jbFDDyIr1j/ppNgGTjHmVbMTz0nyTVavzl7waJqoOIj+r4Tw + uUs3mPb11a8c/Are6pKzz2jvsS/2yks/fA9YQ7hHuJo0Ur8mvmkRtFsMUcqaKBr+ + RV+1nboLDp0oIXemmktO6UEAhgwRwDeTTZu9f5rWLoFTP5x0dtaT1T2o7wsYb10Y + E+wQ4xwY3Fyke3XQ3KU3MdoxsvHPHhEO9FgbZg774yxxrU519SM2NLY0UGtvwClL + mOLYX/6O/tM7XEFX1+QIN4Lm51DOx+ju5ST3Pr7y8rgR5xFVVGOvd2UIza7XeHP/ + dZsajszlpCCrTg7xmoZGJ5U/bG2gRZoDbMV3zSbqVJ+k0dghbyhdShrKXWpfBOsf + a41RkynE5lfQKKDVBAObusz9nz0p2yPTDbtnWuMet2rW/HX1uPIoUHXFytv+Ie/d + nbHEvy3zP1tjWsXz6G3pmXseBZ0C6NeicFsAtK8RPADOgMNhqkYB5RM3+JD5PK1+ + NB7OxgiaUfxb1WP3NihOl8InwHdCnunpeuH1ZdCECdPO/H3iXIjKRsP1PUql6dPS + XgHWP9X6IqpEpWaX71DEdCNlVm2BKBBvneRAtQbU7r/ar1/OZr8G2VHPrqoldtZ+ + yL4KR0Sf4mE57+XWhnpIEb4RckTqGRgOmZJfW1LcdFnd5Nlqp4XV/8YQ510SmA8= + =P5R1 -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:33:15Z" + - created_at: "2026-03-05T19:18:26Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAUKVDuLHvNulYgkZBUXyhpYa3+SHiLyR0qJmx2yzVjFYw - d3F/uSq5BrMC0YdF+4CVDNDXPrmRcgNP+0ymDnnmMsm734oqdIMMuQeE3HAp1UYE - 0l4BPUGy0CefPYJ3sYgSotkataHqUJQO+ANlw8Y2/uiRR8KRxBYQU3T5oo6t6NGO - vV82Uc9wQibjVthSJq/jQc6ee9V11f1vy1tWZuYi34gTaCSD+HttHFcv0O/BaJHq - =WWVD + hF4DQrf1tCqiJxoSAQdAq22alWP11PS39nKrekS1Ni1QyHhEdzsO18og43akJhIw + FJW+E1WYHm0jDVEduakZiiqUpzFqLKI+6GrDaEVbTgilsp1udE8vt57pgJNHZ1OV + 0l4BtpU2loOA3QOMdyyNarJRhKTTMp4qk5q3LCbzxdOshddIuLK4LiG/M0xS/MDn + qZYn4lxWv8aHZQ3/jNlZnrfmAZGJ6oQDA/SvKYTo/UBvpvrwKu3OpqfteurucavO + =kV0/ -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:33:15Z" + - created_at: "2026-03-05T19:18:26Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdADnl1zXe1frNMr8cpQBiKOS6rGQ7rwVSbTxDxlcvEnRAw - Jk0wUs6E+xfDBDcN8Y0qsLjWq6oM2MyyiXL3zjTeg0KkPhER2OB6cTPEvVCMAtxF - 0lgBEWfYurMWKQT22+GF+2dqmrKuSnjlkWhZxRLsYwQe7YOSGRAEnJ1RwHmiQPt/ - XdMN7ruSkf2inkKocBpGrjLsayL5eQU9hHVkD3NHX39gnm+kqlBqW+Nm - =o5RT + hF4DzAGzViGx4qcSAQdAl3Ht8MWHrOfk1ujU+P/r7vzwwXXwLJP3BoKgbvPRJjAw + p9qurVCXrNuk2eR1wgcotXn4AacjamLPEQ+ODfsuTIK+ZnQJAwjgYx9xWFS+RXYl + 0lgBk3NZp9O5XC4CKcDgM3CxfF0rr7Aq9ht6gQoC8vuVjPW7TLIpOsUiob8K9qZ0 + 2ELmkM0T9UJFSd2TcbMSNWalwQ+IJOX1wiXO6Xe/1WBsz7UzN84jop5W + =1ts5 -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:33:15Z" + - created_at: "2026-03-05T19:18:26Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ//cmBQYDDWInnMI99RaU5ZLQdvVkJ+PVPw+tQgxFhOOKb0 - xJWcgwy+peIsbF7ahgYLRrjGk3yV0XzJ2vVIO28WxACdIiY+H1xY0kyGXnLIqd6q - eMTBw4/mvOpknXsRfKRI07QdgxuXAGB+heu53nZ1YiXCEdviRlYyRrOjVaK3tCWn - 1ihJPWeYuzj/PYLimgdgmi5CAgukgOeCkUsrWE1OW/UTKj6IMTWCeq55Sg3I6Dai - frQesP5WM/LSdJteZpF5nNSazcUppVJTR/LhSx8BU/7Ln7n2XGuYBEeXVsZJK6yj - hO5bbbO5MHoYUwqU7P5TW2CANYXFMwLJPhfvA9SPcXZ1MpoZsa7TqN8K1QfAnFGb - RwmQmktDrStUXXs5s4n7QA9B4k4JJTJxbCoa4KmdfJFgtokdVz22YOrsRrOgKr6r - wvDlKNvxhq4SEOk7oB/NMfBn09pAxgxn2mAJ/2YG2qBKy9agApql0xalhzXPJYTn - ACbS70iAMAt0Z4Fp55Z/6G8IUkuZ5yl9kWlnMJpZHZMNjFcoyzl2to+Vq6MY2tqk - gIm27DEmAvPO7MVK1rP/HHriTqKdrxnY7dA97ni74RDpCYCW3NRAnKrLHe2wxgXV - 8R9DLx+3tYhh20TsF16OZeUNX3yMRDxe9RV7GGnU8jtnLsqo3wYHtGxH6i2zn5/U - aAEJAhBniiJbmwg28ZEOSc8p32EVZBG2fKDrDWYyTddHW9BUs4GqPeLurhrU6Gem - u6FlXL19RmFvWhoSPzyTUUVPafiE3JhyosiUdAcJ0RXPu44B0LSD3pgFiFNrM0Fk - dURhTJbiX4IR - =BKTz + hQIMA2pVdGTIrZI+AQ/6Agv1OI+3wQYoKu3rIyQKqZEgibuBRdlpvQZ5lCr93nEX + t35yh1QiIqkvOCBkv78XRfyy0SMSrBLNOm+ECJPfKrdCRZlhbNdkRmzjCmwQkT+K + BBdRvM4qM4w+yqjKIuxskVoJLbqPe1FMKCLD1+cNvTCD3rtko3yC3ynPn9CGJr50 + Pr9HNDOmEplkJBtyu5k62W70ffDrWTb42g5ssLRkLtZX+d2/wp1/PEany3nR4T3q + BVqrKh/tgjZd7q3422BOLlIRugzXpQ7i0vHouK1IYQDaqcXLsXRCwOkAtZo6ax7T + NyTgxI97f12ki3MKH2zmNP10f5wM2MTRCkUQgZkuUxAn17by8BxILmR1VqVVRrC/ + HBVO16wlx5fzSYALsOZJc9lB+L7Bf5lYIU3QABXTyCWnkPULMZtCcri7wJnLz2jX + gl843tHTf3ky6+yS1Bxx46EQyRBrqFQO1C3iFDO0SoE9SoIl+esjGirFrjK2fCvK + tW9gMC/mhEYUsuzVks4h2piN2IdETJWvs2Vfpx6ZSeeEXfej6txsINGXpkA+6Tzu + 3PZ1m2JW+9w0g7kNLpCv7zAeRtm8wJ/e3qimWb8yOFEd+fiG78UoN/i/r+pNaC10 + YVW1qXs/k5amT2tAKzU/dsj9iSpKz1DB2eeDgpUM129vrav8SV/BpW0/+xnwx4vS + XgHUz4lGasW+0QoASrGKk9s/IqpS/ucCSmJ7Q5ip0nz7StoMMNwj0jMb/fnmNROh + 2NsXItZLIthc1yngAiy9W9r3X16dk9iYEAd/8d55JPrmhPB0jZrK/WqPZujyDp0= + =xeXJ -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:26Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAQxCd3TVQKtuQNupKEpJirwQg537Z3PkkH0oNh2pmSngw + 5RInYxjZth9QMD8/rmN6efBfSh+jcB3jNMqRZcdsJREnN7yQW0CMRiXQYahy2S4P + 0l4BFsir3ssBfmD33xNbmZA1/FmYPJCCyUeCCvWGD0AvnFZhJFkQNW7KpypyxpB6 + 48+OgsegkXfVploGsme4sxY/IQHda6Os2McGQzHfFlIQCWw0Ygogc1v36FHugAGQ + =OKdm + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.10.2 diff --git a/inventories/chaosknoten/host_vars/eh22-wiki.sops.yaml b/inventories/chaosknoten/host_vars/eh22-wiki.sops.yaml index abc0105bc..0f0709093 100644 --- a/inventories/chaosknoten/host_vars/eh22-wiki.sops.yaml +++ b/inventories/chaosknoten/host_vars/eh22-wiki.sops.yaml @@ -4,204 +4,213 @@ sops: - recipient: age13nm6hfz66ce4wpn89fye05mag3l3h04etvz6wj7szm3vzrdlfupqhrp3fa enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBKb1BKNjI5OVRGcmZjUmJi - T3FWQlc0b1M5TEZ0WFNaWUhOb1NoQzdwWkRFCi82bURJRE9vU2RtMCtRaHNyR2tq - UEk5ZkFkOEh6WTcxTytRcHlORkJTNnMKLS0tIFp5cEtxYXVZTlR1UVdkVzh1b3NU - M09odk5DZzNyQ1o3Q0pCbzZRanIxVG8KG+FpBNJmzCp7jLYaqYFAhe5Tuh5Wu82k - DgxqHtA6rgi1wtM9OcFBmZ0UYVzBBbwKa8oagIODj1lkEHyazV6E5w== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBlcTdEbGE5Qk56YnYza2RR + OVVRbjhUTksyOENEcDFlRzVkWmpxRFgyV3drCjlpY1BsUDl3QnJ5NW8vZlZMOTlU + OHJLemlnaXVYS0ZpZEw3bURsVU9HencKLS0tIFhEK1hTOFdCUDlPbFE3dkI3c2Z1 + U2FweWI5RDBiT0xRSjN0NmNOcUNHc1UKoK2FliIUAZnJx4hB4Cbmjz9cZ4aWjZWY + UzGixIOsC1L/3rRtdcXCrDhiPzDR0x2r1sM+XLbUC8jRrZcB5OBwnw== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-14T23:36:57Z" mac: ENC[AES256_GCM,data:0UWzDg9rKldTtvBUTMu4sE7WpEJcCOSrdJtGg44H+3NMnkYdjFpwkUWCX7yB8gxkh0fNGpO6ofj85VJsOPpr43QLjsIQt8TvPRHAGsZh7UfEQLRTOkx9hF0qIOY7ZFnFL1LYMsU1kLb1/OUFcGnjMTCWrZzYhg1XZN2by3/paK4=,iv:cXaBdX81ZunvEKuahrblhJZS97pab0nd4uyD2u2/E+A=,tag:hc4W4PUBQA7yvs80aw8GsA==,type:str] pgp: - - created_at: "2026-02-18T08:35:04Z" + - created_at: "2026-03-05T19:18:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtARAAoucPhu+qMVtHoO2o7X+LQRGbGK8iG3TiX1A2CNCNqUNs - 6IM2F7/6UeUfbFJ3x1tyqkQT+9jLEKNUyk0ODgY8pWe+oCIR+HXYq0SxTEVptnDl - wDk0TJVh1nP/1vI1+RJvEb/N3AHMcauGaK+DXY4MsSqeCL0N/cAmLFTKHy4aiu0o - tFRtNV0A8B1GoOwaSYBFXAeX9ZG+qJl6C6iqgNvMTpZNVRefeqtwfyz44NceFzNW - GobSellPQfwwWLTzNlIjHzvUEqbcX0cAP0MrIsOGVW5qXs44ve34uB5+Fscw/md6 - TJ3h1DvfRcVUPX14+hfMWP560nZFTMtfw0nxa20ElpqTS4+EJNWfNNWwZkKIXkN+ - w9OZFu4ewSJpY0A25EPePhSJ/78k08y6BPko2yFVrnMqQRRQJAr9ooIseSUq5QlX - ZRDfkNvfFDQ324FKb4BPTgINWLt32aI2nWDgctL9Ne1il4HGtP+BF9or9RQQv03J - B5tRBN3knAhSMstaM1L0NrZRYs6z67LcKYq2ZlZvQR+jh7Tsy1UIhCaskTF7iq/l - 0pK5U4/yhHRleAI5STGRAXpUcEp8m6aCzbUXMkOIu56mgIrR4Rjua6Q95ZV5jd3i - H3C9o6vcsmX0XauFumh+QU+NB5JSH3zGXiNeG4VKLNtf5hW7t0o3WL85rdE+oH3U - aAEJAhC1g1eWidzpOfM2B71Kra/rxvHY3lA19UY0fWgKZgCS/pP9zRyWSlcyQk80 - 7wbCTSfumQF2Clv+8DzXlxNrsNdQDAvfBpZi3CLIQqLyiqMDCmmeKakqZnYS7I8A - KZnQOmBWpt6O - =hH8a + hQIMAxK/JaB2/SdtARAAgBg9ta0kPGgt1DGi54tv7vf9mCDx2Jrm9kt/ArLt1d8G + tDNaxkECQf3sMh6UsBtkYnz/1DbTDoFxMwitcU+PMqSxg70ncbOUbSLeNRRbwhdV + 5M+Ahh0q/Q9FYHfcurx5P6MflRc+g1afIAKp1caZsWOKRFIeUqnHhXkX6mAEsQXk + qcSfsw/wVy5BRj9XxtG30R4oKzelFbC5auvpZrLiC6hbj4nsNlSJbne+B1z1835x + D3sWFRioJLpJk34stdmSM4RbTUKfseeZiVgOBXUnVkCmWV+1bGYzWjfqnkWCiaPx + +QpM1aWOQystBvPZGczzSny5UNdwQnJ2fGcJoNeyNmHW5/YY3Wgv04a1GNCHMXaa + z9LMrI/HVa/+aM0av2F8JrnDIzPGCV9C5tx9/+LvkE0bHs1x24jC+KS8BRAtrotj + t56m2ae0lg352Sgco9BF2seSDQ0YBQOyhhdnK4lMw4w0eb+wQpfU+7YYwz6EoM+J + rE1gmxTqZh5WAqbIOav5Vr5wDFIuJk6E6JauoqjwvDbX6g8a47+fctm2pBwbpKZZ + zPcEJ+goqIiFHZWaXAG62AMpF87ze1vFa7LkuxLDXI/LrrbldNBCXQG6DZP85RG/ + uhDs3xb3o9/lpfWGP+371HlMAFCpOdpWr1EID26CLCVuTIVk6LQBQzEJqSCdl/fS + XgEUBATfjhGcG7sP1hK3YdV85/jsDLfF2ut4Rn34kjGICeccCcCO89GDpq1l2uom + QJbRWG62dU+xcLpDU74vGdUi7tgy3wn3zd37ZznapFqhDJDFxm9jpqj2jVRSKa8= + =4wo3 -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:35:04Z" + - created_at: "2026-03-05T19:18:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf9HCHuNDFG/IM7dJ2hI49jluk/5d10AHc7GcvuluLkoNkf - e6nFK57bbCuJNGLV6wPbnjhJUQI5ZAJd4AkG6OkuHO4pLZjaPvK+/A2JnLtQV38J - D1CNBFSE32fy1BGjqn+YSV6CMLxMk/gNjhVqYxeuk/ApCwd1GX/CS62Z6+iRBxAD - fVi+j7SnwA4xm/5XPaeQwSMaWIhiTIzoLNtcESm0AEBxHm9fwv3tsnIjFxPIyinf - IaBKTePlf0Z797oKdUO/E0TgoLPQRMdG774isY5Fcg1ceN7CCwiBPB9F3tUp10uK - OzfDiWxWNNl0K+0pHkEwzXki4k7wjWjrD9bn1qdPpNJeAfamJs99f8dSQjY+DyGC - C32W+jUE4fVCnOf/BUc8LQ1+yDNgXIiGBK+cZM6z+4QO1ooNzV02/Ig+Zohjnjju - QllO/lEmWiQwXOY4LlD1mmkD/rl5HJkDSZonlAV9hA== - =o5d7 + hQEMA1QflAioE8i3AQf/dUaI3AUfrsLJdtFkl/gYcvDNou8S8zmJO30t70QfaXnz + /LUGGEzgbiAX8FhNrDfj1jyFCGOjGWsww1gm3eCTjr/dmM5lvfNCaTsLEN508UWu + H2S4TkN/YBpdMblfcnKz1Svco6aNRaJvfH5So92JMQXtve9JfYgOm4YX+QfQFcyr + smwAJuvMpAfxPArgZMsG770Jwpdy09bCIVM9iHcUq3D2OSj6ca5y2S68jOoZnzWD + jsIoHxmqdDvIAV77vRotwgGBMaay8ro2pPMqOFACfFR7XcJug+NGceyB7jGVWNC9 + 1VFRg0FqFzHFQuqOUpJdG+ps6SEz3DssZzqhddOPPNJeATLGCQETfSVVtGZiy97V + /OFfk9NY3lC3MGRbZVyTHQOMhtytos0yMdoM14lZoamJ7usYWLbl5i0UPtRhVnSk + PcjOW1gZC/Jj7TdkkTy8euKxYMCkQ2EjgR9JPaCZ7g== + =/2/8 -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:35:04Z" + - created_at: "2026-03-05T19:18:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ//RY71Yix03yvY+kX8rJo+soOg8savPBs+kMNNsRve1tee - SCFNPvz8I3ZN+JXRjxdCXdOoRixgaDTTjUweqINKtz5SsjZofri08lXQKKWRaNJM - kyhEVXHxQFxOrycY12pbDiTlCsbnnUIRAxs28y3be6zgRBj1xEmMGSDQ9/2FOpL8 - GyRnI+qweZojt+boCPnsLkwwNpV7NtDCZ5RQjsG+t19Iaq6HYhlTrvL4vPX606yK - PxWflQv3yqT3qzS+ak5IeTbwNBPMq5f5m38k/zy2HNPaSwQFAs91DfCcKNTQEafp - 2+cXylZGfn3y2mPk2kciE/+6Bz5aJhixnaA9wz4UcNa4j2R1A9Mx2XvwEfQtgbnz - ZZMbnYGWoNRdoAklZ6vtAdUUBACrdxyhPqdOE6CMf++2RA98+YD8WvsJvxAdcbJe - iTEetC80wjKJIdFvyZY79ux+dpdkfx8/Z/IealuIHfccxuJbwpF4GfJcCjKq/Axt - Vgdvs/L6dWyq3QK8JrcOtJ2+SgtZ64xY5bxQ6dg4W3WfOFcGzDdSKyE+VCE5k7K7 - eKZhl3MDMhcGO8E/yiaTQBa681YIbVLeOzFamreIoSNwOBC33no5Ar4JAvZHcbF3 - 1HUOURfVNZ4Faj8WW7chyJnmNrlztqcj93SNguhlfd1Rl7vI455/Uynu3cO9OxvS - XgFfTmCQWR59m6KgU1WnBoPwiUouhPHlcdKsOce4QNX5vQfg2cD9/Rp7dpPYg50L - E1bM6z17ynTEpPX20z5OzfEmBRVXehz2VwKOij1bu4n8HOYqWcJcTZSGrO6ZiOs= - =QMhW + hQIMAz5uSgHG2iMJARAAx8xVm/NygA00VIJx4DrAk2u1mxMVzgfhua//Er8kUv/q + 2uszjOEvzhYSfhOZvbKghpUB1Tyvp3WHcZT43aebFcXichjqG/KmNu5BI4jEGiXA + m0POAc9R+ZRjdN2+f6Tc4m17lakw5uyz1xmNFaMk/EPrfLiyIk9DEA0FGQMDawIv + 9LybE2+rPvuGhZZIGt1HtraU4Mt6b3aOHVnM0BU62zg7QGvjNiSN3DJCBLnWalIg + Z80+WBRecEtP4RWa+66QoOXrx2x17tUI/TkErpKy4+T/P6cLZTfE4HVkRsLb4Q2c + xm0F+miNcl1s4PsAFaZ3hLsU2EsBgBC7lf6iwC9Bf2VoED63Ln0NHPOOyzPg4zmC + hgcoA30RJ7LECiRXB60mhIsYLOEhtxOhf9DlUA4kzw82rlV589jaIDVqH7m2Ecz9 + WR7fLn/SJqsopfQ/+3F0yImD/avyrVyzEFJsCJqFKqWwwBBywl1/e4wjjnOUwpvN + 07WZL/Tqj5dRmCPgFuHvd42xmBtBaTl81LjQXT9g8ckvGvQjJZqaQKiNq5ee+uog + o3GMPSXU90IOaDI+J8w/Hyi3WiIzSrULOEo603EbrfL18srRVtRYXftwbFVZTbkz + dQnAsIwpj2gDXdRZJvfBna0w8ra2MvF2r9ZsIZ0KE5xJEKvJoaHwOJT7gbs3V2LS + XgHPFPLgYtUHB9Nrc6iu9ITyrAD+vQzgvPPd9KA8BDCuqIsjDLZiLYFozdVml3Vz + TghPYRnmBLpC3WFrvLJPESrw/RHUyFba938L7APPQ+4dib40vh0diyHb9t52efQ= + =VZEw -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:35:04Z" + - created_at: "2026-03-05T19:18:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ/+LQdJstHIv2HWeZxjKwaW/nogiFAixOolTscg1Bit1aou - pmQ95hZhVa5a59ti7UYzzojoJH18/HFX/CxdNTwGI7y/LX1UIOIfZPHg8ATB9kkR - 4ZMGhk9oIFgLFG/on5YnjjuGZxXqepIaGWWEiPNwSr7Ww1bOKeNOADmV+EiDcxvZ - x+SyVgUZMiej3Ri4a69cWoGh2+PaOTOKZDUdrHro9aKGIE0w6UQo5sblkg6P+7VZ - h4FOcFFBGpscYur2oIhGPk2Qdho8bpZh6SyS3BIQNSOeFb1btIfzta+p4hGu+EN3 - Q4ysv1l8Tid2UKhwmotRw1pF4eQmkOftym/INf56HLPg4EP6gfniXpohDYaZMhsN - /4hFNsNiprl7sC19GOM6a7e+OSF0zbcYpvdM39Bk7E6sv7/OAQ2T+WYanbgzq+hj - 6BAhQ8/zb6qf017l/jygT1dx6W7DGpLSYJqemohOyMLEimwY+zirUiqp9hhv3pVw - gUDqF95+cueILxS6FJgsLmA2jatZbwYWZ0TxO9X/Z5h5Pi6A2LAGRj0Mj6DDz6BO - N1DYqldPRHLQUoMdTVl7hY0HNN0OH0Czi3eODjkaoumHaV+VdL306BmmNeVDdkQ8 - ES/+S1ZOItUjMIf1gI1WMzL/nVFJyMttPREltxEm93xSZroHEZprFENS57pp5MrS - XgE+sIktUkPgUw1c0WDBb4qqHN1SeBxtF81SKCLMn3yt852dQSDEOOfykt+H/yRn - HnWDGitcrrU/ojCCjjPLjZ1jfoM2jEoJW74V4PfART6TYyfwBUz6QD9LY8IktU0= - =DVK9 + hQIMAw5vwmoEJHQ1AQ/8DKT6aiCGrAgBLztXsG8RzFmHK0kvNwRR/mUElr0dF7PL + BshU+bX4W6VLP7JDm6Gs8MgkQu4KW/KCHmOI+h4E+7mB3xxBCHmpDLVgXfouhzAB + 1wQK7rGiLnpcuRByd6v0aaewFMyL8qjpp2rd/fCZFhwjt4xKzkJNVQ4X0FN1p4wh + XJYC16sjxcbQ0tQMAYbw4c2a4sGOausclPvQDDMxeby5l/TnlvO7vrs46dEBkmV6 + uPo/eE/AhAN+mJ2+G2amj+Jz3BpQi56aCz1h2b2h/JU2lfjRh2Vz4NLWpFTIhk3G + 3b6chmarVU9tbgxnUp4i0NUI0gDygCIDeIzhq3nmuaIaB+j7NLAterzDpyZLNuan + fePzmTMepUyoLBqLb8uBxp4+lnvMNh25SNb42hidIyrxoAbxCm8bSOZz01SKrbt2 + FPuedV5QyomtNOdbLyLYdsESsCe2vTew2Xy39/BonESA7G7FHoHfPURVXP4VUiXA + 3fTGMIaF830SOdyRACCFL5eV49GXzMUQ3TrXzPcU3G2MS+Wj7Xan3TBYHju1iBXn + SAG+ZzcknQ7kIx9wiBHKFV0Vicjym+GIXT1dVPxiYLZ+mCloiO57Z3ChSXha7oS2 + QMcOd4GX2eJrV9AdG4UTLkdgTYJ25YWL6M6ZeFjBtERY4JiB+vT3NdmAxb8yWO3S + XgGf8j8v55fLYrdVYj1VnFi0SVJuq89XMaivnURJPVihkW1l+Zc/sYOJKI27QDxR + aHZp+1thJcQUcAJ8FhQb67SaUkSc0EkDBs98k37ZufgkjQ54mjnOjIIlJSnJAQU= + =FXcp -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:35:04Z" + - created_at: "2026-03-05T19:18:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAxrNEcd+F3FDFn3oVp7a+Ku+7mC70g5cmmt27err6O0ww - 3SDHjRGOgJSzURmsRLPvakIZq55XK9l8xlcYLs+M+K7oezeTqLQJmlMzx1f32YSM - 0l4BiCi9PvXXZL31CT8qnvfXBCe6bV8aAsWXFDMaiWQ9ti8u07EGkyYNtsvh2EaN - jari5mxlsmQQDsfwkO3VYX/gBSxhE3BvV/bihg0ohDG85I7ZuNB2qULW6WPRaRKL - =Lant + hF4DerEtaFuTeewSAQdA6FEfCUTjY/9lavhTM61veYgBGAb9FjZVZcjwAs+rskAw + iJxm0v7kEmICfjllcxsXXLo821D5L3NhdrYnzO102t4w+xzV/HkMw37Qa8gYgZ9c + 0l4BksC2QIah+bE/ntE1SC8QUGAZABcGGUu/PPrYdd7fEVA7WSOmpWpLrSXeknpw + EHKDNwsnx5+5NSrq+RRGulYmaws7xNzV7Tdob7Tgp6OZzFyRgIUIyKYZSuK2l5xY + =/Dch -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:35:04Z" + - created_at: "2026-03-05T19:18:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ//SUFbpFhuK+/8uaMvDcl9jmcqdIH65KdoTHr47lFajx85 - lCqt4PxJSbeNxcbvuoBpmu2biHsjk9hUG/lqumaRCvvb0/rn6pgmG2o2WT4973mY - YbHuP4X816QdDk1YXRPgTlKwHlv3jOpO9G3HkPKw4vrNh5usJp/k9TTGO3cxMYiw - SxJ8DDDPS7h0iQhzxwlYftWBPXvNbMa4CwsIHvkdwEQL/U1fE8BIWmMxm/5TErZ1 - Xfrl+rwK9UP1bWMJEglAHcob2GgTrRPm8dp3N8zILKy3LeCrjIVvENeSK/qI+soL - 1tArgj1sQTt3CoQp35NgIK4CUDDLp0psII5IOaT1Z8whRvaIbyRdiN0+UWWSLvVs - Pi0x5TfYnKpZJFeQUP1HIZcy9Pu/FBx0SXiMaTzwScayih+oBCp1XIxmtf5du/fO - 12evHiH+znFOYytZiDEwXfuVziDwvi+IXh48I0bCYAPP/BTgKq3M0RaGKrR4G1AE - uhT26YAQXmIpsAbiL4BJ9oCXsz0TgOvekm/jrdS8UTfUPDi3u1Qzo0Jj5liDxVS9 - DrqKVjsa0/xZAqSopM4weNXZO9lvfT2+ZRbslTmHmkUFSBNMcnTx6MtJ/AkAFW/A - zeV2JrXottBtCHC9vVDWWRW9KBgIB5JsN1lp2t0folV0DCUecyyxGLM04KI0ttHS - XgHuTPqibSHG1AK0v6hYLPXkGqnBPB+zS/d2jNk6SL6BcpOmU4VZjYtOCo0Cuy7X - 6Ppbigx6uXqV04eP6eeTS/Ua4uerA57XPfESSNktTmU+75h522tMmcssfT/KR/4= - =i9yw + hQIMAxjNhCKPP69fAQ/9EsCikc5VJYoD4XOUiHEe6Jqkh5z+aPopkbc/IjlebMOr + 9WOzQvfyWE5TsYS26bvAxuPEfGg3RXz5XoCTed6JqkAMYG49dF1uB4dYuB+MjMZr + vKLyyVHK7fn7+okFnHMIXFXJXw5vH7i91iMyCQbcd3r3MaFCzDwd853dEv+oWMXt + WpFnBhep8XZEt8fNOa/Jow/vRNJd+L7MC16UETsx6VvXXrNevmUNa6wSVjNTE6GY + hFqRQXxE/d6VCF2k1lmiTEHQDvo+X5ZeIHjiQk0APrJWd+oyoFpqyQuss6lH1apf + qx1h298xugpHRQvY5+o403ZurwOZlBwmKoWYEqFvhTtsKWZqCszKpQQ6F9JlV63v + F8Gp17+UzPkdnoMIbX4Iqg3Yck+ILAKKXR6hr7KewZdExTWoPIhJTgpT+Iusi+Zb + JzZtWGKpNsw8DhfvFihU3bCwWcNx/oEbt3Cddk5galsMtpdmz2iBAcVMYKjz/FUT + hrinIR0oZqbBy+4lo0gPtp1mxJPs0k+0986roARB5yi2J8pxHvk2tvJh1mbUjJIG + AIZ7asLcOHIFeRQoRG6FPlzxJzWBkUk5lXjGGZXWXaF7ZwPdgK2FP57SFxbWqQh1 + NOUeN9CHEIbVjTwtPlITJpY4UgMg4cSA91JJWKw7asv6vRyciJ58fIeJFvnXkq7S + XgFRl+qVGrDcAs3i3MFHj9x2w4lesZIqvYyuMvkkQscvjFjJFoBeqGSp8c1UQx9t + 8Rt7aq9MiVx2upNcuJm4ywXBv7C25V3gvgvxy0QbXUYyYDGf2rOPZQCwUU30pSQ= + =a3Rq -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:35:04Z" + - created_at: "2026-03-05T19:18:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ//d5NS3WuMXrdWq/QlLOnRYjnSCxqElp7xyu7ffQbp18x1 - zFcgtzdpJda1xkfafs3lSj18jIloEoCHmV8VG9+KtFDUBcQ9wmDSnCnmVIbHUew0 - ESPbEVTlWxRX01FO1DTvUe6T5RH3pX7ymj+2D8eoi3JGdeuMDV4Nqvi7JpRJTgcl - gtnBPZnWGNG4hbtsFrXlfRgBzdcm+zwY85gwOcwtvuItXbO5lG3jod6a3DB1CjI6 - /+mIXoGOHIGhdK9oHBkZRys9ZpFDZcc5uYkW5zSPvGBzjXK0dgoyFkGc4Or7GUR1 - VYQtKSNWIZluIrcGzQKedK146EuluYc+zJEepGOI5qMwstZb+hQW5CwRE6GyiCPh - 4+bx5FgOkUPzBkBZlvSzkvumZ75dSAm3s27DfOWSMaI2BhfPIwawLLuqGLAWtrk5 - KEuO/rO51hup/I3LMDUhWUR3xTEL6j9nV8FFT8eq4Iir5HXpKCo20KKq6Jzh3yW9 - MyZPEvmN0kf4QacqVXXDyYFQWpNDhUnVjFGBs+IWr4L76hjgCLYPxnoKm1IffiAr - MELDdBrfsw0ZQEifjb+vDfhuVQOp4kKYV00RQlFTzC4a0jnrCAjDgIwp1wwksYU9 - Wdt6ZfmLNn28e1YiNf2j+eQmW9Bo8+wavn2QtyV6EoCDXkzHJm+2rk+qkLoHdX7S - XgEf9y+K8nd7jk7mi44woG8xCAxajZvbpAb/7OX7XsJJShSAKfAz1sQgqvIYdJGL - 462UqXMvQ2eGlksPyx25lc/0QajP4NYlkhF5zYZMQf4eyucLPoe8JkBkvXo2E24= - =IiSa + hQIMA1Hthzn+T1OoARAAiq9QFuWXGEzQ5zSQkZCEph06E7y39ta7/ULQnx/yPaeD + Px/fWEcksD253QA750PzXALRLDrP3am+2mAG0MafU1PHtFv+dc1eqmdcJ+dOKplN + Cc/TpM3+4d8mdQbItvL/r+ihiTfL1A1ASFrdB18AMhP2bzmdERPaZtdRRxqa1WlE + /Pn6vbKFRTWY4FnMsvNg0UVDuFvFSZo/QdYYptNopdkVt26XUUgtOo07GbPp5DEW + gZR/Fwrt6fw6zPNqbHEU2RS0YR89KTcIDDbVysqt3D8MyiZXEgiUjf1P13p2YnZE + gSy/qcTh9V44zrZBawQ71jS8jdPp5yrYf7+VsL0iUQPvvL601ct5SrgD02dYlyXX + IycdEbA1afAXF8K1wszXg558TLlNOUS4TfTxEA+7lo02N3sahOmoZBTUEzDdirfi + 12Y0hMg2Y05uIZQ4T5kjJDaK9JbXdTaHTYfZegjCDbJDcMWJvHgmcuPxqjEXx5vv + 0mjgSlHc90pA9sQefx6rwYQFy95SAhrAQlVCTvVNz/zizEpdKZYgrhVt/FOVuqDu + z1y02JP6FyytW3D300xiqX4Ppi8eqE3YbQ0JHJ3nmhKYULYAopj+525M56hYEKIT + kk6aMMujbnx1jqpCc0povq/IPz2E+ZvXAoKD6Yo6Ecv7MgNXySmTrCu9VJGaO+rS + XgFZs0zDSZ9kjQnhyB1BsRcaIRxVP00bSdaF0cW/bwfifMxDbuKOOOvyAHDa/F7r + T1ESUUd5b0MU9/r2vtNDQtFml0ukjVO7nIvuMcECNp7kGFSI7I4S4GhYvWN5db4= + =Apfw -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:35:04Z" + - created_at: "2026-03-05T19:18:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ//driJx5YeMiU4iuUjcvccMofD4buwwWeyPMLS0AWThMAQ - 6DmWH8PhnqSmSvBM2c+ChyK7EjWTu/sSVmUHFbrnXnWN3zyph1TG1G1lHAMUQCvc - pRE2Zczez/2P6BPloBVPL7jJZE/b4xBCyn+8eChO9brbhJK9Q7/AB0GOEOq9MeDc - 5LBebR1eZguCyT9rzj4s+5D+AUsp38pDKM5d2QLQvt3RrddJInkZSfZpGotMB8mI - Ky9ih7nGVlBbGvFCTy3R8FGEQiTItZ0tXatlTzTNV8+s7jRT/awoA0/n9jfzVvM7 - QAMpd/MAkkNNan5MsZ8kvAhteguHPdFnBGcGIaQ6UyUoXx/j7FmcbsDyKspSzW0+ - cjy6JsD2u6327MgT2Hn4edzuzD6E0euRgM+6Kigk4xGZrJI8+OG/EQnaBp8XMUbw - fjQdvTe9kkOOM1flz29H9CncNFkjKKp6w07zxYtCdDncfuQugujOxZZ/5SI/keRU - sK1ezujkRhdQC8QfspP81DZMEbh8WoDV8zKY+/87iMjqqsjSl2zCR5Pn3s/8GdUF - XOEYk+MtdztyICR1yvQ2Q74IC+vgz9CkUaONh2MUK2uTWB5RaPOOTXd6e90TYZR3 - y5ssfulTNE35Z9g9f8JI8RkrtTuSPifzMJg5IJ1Nds9wPx9Sj1Get2ZC8GfCTj/S - XgHdFEFySWPLnteSFE4T71/vRdOSLSiOANKdLY8P5anPNXqjf68/BDD3xoWokqR1 - JpY8xUn8LXdfgXk6DD7dHhCfHbtmVmZXWyREqN1HN1OHwVHyb71jpwlJ+V7xxMU= - =bry4 + hQIMA46L6MuPqfJqARAAtci5isBR7Ddsp9CVw8dnG01JHHLaWQ6jqoGgplvgdEkE + 9n/DLabK90IlmzafCQDEEAIvdjlLnGb7ZlT6FbhT606hBEIMz7iX14MEnMqq2kQY + 1gKN7/uMzIjAvvdnb2T+qCrr0SPpR5tLUgbwaA1ltuiRVBtsh9MpaPiN7Heu8rSS + wtfrTlxoBxV56q9x9XhqJYem95LCykJ4TemNS3QdmDR9Th6qQJuBf2HgfWid4Vmf + kDMFXjTWYO0rl2nlTChTRkRxp4f/F0ZRI7DGr+1JzzCarqv8P+a/9zHi6eEI3+vV + LJdAlQCvobeUY8ocj1/QQ/6vUStXvFxLeBJuzhN9vdpKAKdr1R5vPxOwSwQtdoFw + Eg/bltt1JHOd7k1l/Y2mmIYe/B4MR+osDTnS45Vp2tmSZiT1ZNYJfHn0k8Kb2KHg + BhpU7oNSWD5wzMo545O2GwhzQut5ATOtiFFGqw3qImHC4Q74bWEZjvJPovxIrbmH + G1qRGkHXlus+baB7eIvsZGu/po8EP/4dUH7/FREtgHR0zeJauEOJgzy9JzTDX6Ax + ELhjObFZto0FhfaB1Oiv8wrobyxylrT3vlxPqfPPwYlJEuI2UKbv6Zt51QmXBtoP + /1UrW5bfoFDRBJnPYrokjaMFgmgLVuGL4/A513c8c1FZg69ZgXJySJP5zilI3VXS + XgFKJh3deKbwh6LspBxJ6baRBiH2Kp2ttgUJai0QXOV0nwfqbt+kuhD+S4ZSycBY + kFSr5ZPVz1PZvyq2btXwEcb2E6eeJIQ1KoXHO3im/vniFKUNm5c6M4FreqGewWE= + =IOEW -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:35:04Z" + - created_at: "2026-03-05T19:18:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAXt1FCEUnu4MnHi2Zqe8A8+N+iqU8cr1NIx1id7GnsiYw - JDu1e2TGpMXviAunsDmof2oGzacPIMM0fGtngbAVFnKnA0XHFCV7S16s0uLgFYk1 - 0l4BOhD4wCGTw476o8noHZ46qyxcVEWBeG65YtCyYlQr+ns4z/OGbRJb327GueAt - TmRIi0L3Ans+kgi22YcUEswPT7+kM6R3vl3lvmDSZBD6TAdKyBTGkhjOZD/L80Qe - =t4Dg + hF4DQrf1tCqiJxoSAQdASq9NecU7fexou5DewKVilSeDSXVaPgFfI4cTqZ65rTEw + mRCRfrFow9mXrIFZHXegz3E7w08/iowmZDEi0fhKGnoEFy5xDEpjYl0CxyhB6kkU + 0l4B3XAGWYEw+R37yejCkOEKSPsK4oj6Wykrv2SSMYNnqU4Y/pDB6DBaQrYs5LQ1 + vuSfb01I3z6UD0wVM1H1v9aYJD8iaCs7B/78m9VkEN3q657gED/MUVCQ+FkJ5eIo + =PfFB -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:35:04Z" + - created_at: "2026-03-05T19:18:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAtAek53ZsgshJ5O5jF+Jy2CAJXXPA79nysKLRx1k1dDow - 1SWIOAiZhJb0/PY6Ouz3Ht8BFxOFrOtB1IMG7Dzob0woL/tOSXSQ+AXHG3j1cXfw - 0lgB7aX8OXSEw32F6/dDyDXg3QYUTW+jwch7VvrSJjCIlo/Abp1GgL5cfyGErYmw - fCQxrjCPwg1QCGiRjk+BO9ptsIbm8CDHyr4Lt+ve1J0P0F40ekhpx80c - =reOB + hF4DzAGzViGx4qcSAQdAquIjfbgq6srLWrHsGF/NlCSe/lw9k4zZ7rx386BLpVYw + 3XB0Fnioezb+kUtZKwrT+/SCynM58igvkpYgk4eMp/6Xhb4w/VSxChVCMoByKCth + 0lgBaFwJ7+eYv7Lyys/Gg78Zr0D/6TQ4M5BbTRBO2T92AObE5IoPIdBDSawb1+e1 + oEDgH8MNwyQt2nZNSLLPqxhppHLI/bH+izm5xkBXymcVMB9c9VIfxZ0R + =P2K0 -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:35:04Z" + - created_at: "2026-03-05T19:18:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ//VLXPAe+m3I/mSropwKt7gPBrfy9hh0R2o8vO7FZjZseI - Qe3dhpDkcc0jSZ1gsTPTUfTLazwc61idEyK+kEqWlf5qm2YIx7EoVCD7Hjkk8k28 - 9e/nAPY2mdIf59a6S8YShcJ3urAxhXCg5TKxKHVh9g+u8DvftcReEJfz2uJV9M3H - zpHVULH0J4X6OVkoFW66Q3+pe5SLB/AX16ujpsaiPiRa1f/is2GrERwPCZaYABUl - IBnqi3swhfK3/XcHSC6HPYfcYjIJW8UkuET5L17tC3SUa2IKgoANtOVmSFg5xx9+ - NmfRRWaLJfJFHb+LbVvn9WM7O78OZ07ERzAkxDn0/q6yYAt7uzlpBt1kN7PG+6MG - lsgkSjD7VXjA9mBzxl9CfpTksLUS5QBC+DZjJiUAoNPPCUgBDcCW7kgWpxOnr6jE - iOITz4FsG/3NGPwXML4CbKvoo8mYVWwD8F7zw8DYCUl55Bk0dr3XmcdNKD5OuOwL - 2IC4Y1Xh88WBTrTSh/lIAE2SXsHzgz2TfLRi70E2kBkuZH+IyUR5jMi0lClqtJ0S - 4wVGMvXb/vSumiM0z/W+rSRDSmCXkZF5aNPzAuo2dXt8LMXJJzmlICBlmd+SUUL/ - 2kS00Bb38ozSXBE07xzdQledWm1Fg1PmQAUCmB/n5Pnz0dM3ZA+GFXap0cR1Z/HU - aAEJAhCMlnq4BlIU1ZmGJtDv/MFPNPhdaGJ2yBxXFlp3UoAJ33u+k0NN3SEg4fXf - oMLXhJSNK6md4dSJ3qMh93y9AYSwG2QRlXOuw8yehtWsclnjGDLuh+Q0a4tUCJzZ - MdJmRn4nNpow - =mZeB + hQIMA2pVdGTIrZI+AQ/6Aw500o7pa2+EfdANDTPCWmbI6xjCAmDKTthBF28RoQE1 + QvG0w60241lrDUwEYe7qdHe0udDn/Ctq+BaxHrfwRbiF5I0s2lPkNPkOqs18t0is + zOX328rZ4M1ApOcp+HxGVAggShWqg0Ic7GtVOeX3yX+jerWVYzUXAW5y5mrehANp + +Ktji6N5P/3Ef9E4dBTJdK4fRbIpn2duYgOESctdAzxugkP37KXXmsg0MrBimDF3 + QA3fnNalPlJPZkiSb4Y+Y+B1MF1YWl6xctM3kr0JkabqWSkpKax4FwxJYMIc0fMw + xlzWNZ7tyzRY+uS9K1iYUXMB/OkjOumRynC2zNPxLSqkVBGeLZbGDAxIAcU+cvsQ + k6ZN8vSe48LZjiOo0AM7ir6vcH8wX+d2Sv9vn7QvpJWlqLYoiDNzFcqx5lMjC7T6 + HMueAdrFguvefXf3yTrz5TC0Wac11a/lBYwt9atRbY4Dm5sChKjiLaprhS6prdO5 + cIiQAw5lYSU9euK0nA9TQdZrIqshO3hyb3GKRG/mxmsw7llLTL63xCTyfPTmquf/ + PUxKHZACFOW874dHlQeZY0+TYgn+lIe95bCCyvnPjMAs4J0dKlrATKxFBJcMy/1o + 876SoClPbaAn8ku5gIg4h4BAEqm9BAB8nmdYRMuPn+dS8+8ODp2Ln46SfgtfEibS + XgENidNxxtoeBSfEOhVENAFXWiKT+G57NqbnBPWCCVdZ5cQhpOhoFRpB4sN+ymBN + 4eJry+M17UZ9R64kAl38m37TNm1QsYHzkc5opQwPIPOqsTLcUSFypYR//miX4IY= + =O/vw -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:00Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAfEVAPmzZz5MCXoiQjtAIzDDCf0qFInWjSyiHEXDf1HIw + nbMjDdC7UQa13CB/7pkEEYKaWE0SHUTrL1mhsR+iipCaC9wVVR28B+wCrcknsGjd + 0l4Byr3DHjpts5PW3/liRqekVrz9Wt4vatM6Uu7jEJ5Ic269KDBc3RVrH2CcXLY7 + H/YWuf5dDduZ0NusdQyYDx7Nemn/yBeWKNf2mFQ9/2dP9CeOCmBuI6hFEPasMFfS + =jL4a + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.10.2 diff --git a/inventories/chaosknoten/host_vars/grafana.sops.yaml b/inventories/chaosknoten/host_vars/grafana.sops.yaml index b6f80958b..ea11103f5 100644 --- a/inventories/chaosknoten/host_vars/grafana.sops.yaml +++ b/inventories/chaosknoten/host_vars/grafana.sops.yaml @@ -16,204 +16,213 @@ sops: - recipient: age1jtusr294t8mzar2qy857v6s329ret9s353y4kuulxwnlyy4dvpjsvyl67m enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAzWU5NM3hGckVwbHdqcC9U - eXdRUnpEZzcwMjJHS0g2RS9KUHV4azRuSzBBCkthcW95Q2ZDNzJ3cHRnbUVBckpQ - KzIzd0dhMzJNbUZFaVUrQS9kSm1aa3cKLS0tIG05YzhpUDhMNlQ5VkUyOVA4YXJx - eTVrYW9zc0RHV2wzdlBsTFJBelNldUEKxdL/jNFe7SicEUbaf1Zl/YExIGlDIt5R - pLCdqrU0+0dFUUAeZ6wXqo2jcorLKL6CEa7xkSdh9nPfbwmYo4Jtzg== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBmNU5zRTMwTCt2aWxqNUQ4 + elVlKzBQQ0FTQ3ZneHNBUmtPTnhzVkhZUUVJCjl1SGtUMkNDSEF3bjAxVDN1NEtv + LzJLcURWTEQzam0yUVpCOE9xb01nSzAKLS0tIDBsaE96aDRoMG56WWlWaDhLNW5W + VjFTZ055aktCYUdTMkpjc1BMSlFJaHcKrYCr6DD4FmS//AitQiBky0QwkbsLP8wa + jEuUW5uX8MDhYh/Gmb4EgchG7bfktJzXyPLIjZv7HjBTkx2Shzzj/A== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-14T23:38:52Z" mac: ENC[AES256_GCM,data:bKdCkiO3OjBfwsNBOFVrFMti9fXtedYWhKuPFDgNQVYFblZji9UQP8XsX6kTSfzU1DxM+OR14RMgV5xssoB4f9q5tP5FgyhCcwWHCt1cg6lIQzIoOx3o68YmNf5X0C59Q/j5QGeGQiCNDV2eymDYcm/dV8eKEHD0EtmUGNFlOfQ=,iv:7jW4IFcebqx/0N0sqygV9SsvS+m+kQSlEGkixtIMy94=,tag:Eg3Z+blFGyG3lAXacwVPqQ==,type:str] pgp: - - created_at: "2026-02-18T08:32:36Z" + - created_at: "2026-03-05T19:18:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ/+MsTfikk0Sl76RaRd8TdULNkObg9JuARSIcH0nQ5Fx3V5 - eIiutqLO1o+eZyMd2LLp8TU9Vbh6pHZBKLNsow7xkJ1aTY0yrZGQM7v52e3qmcPw - 9ZpsUuqWoKeNjOv9DlYqkIqro+tYTCDiJGBnlcNZWG2KGLj2Pgtc/k35I0nIAOfS - iD+Ora9lC+QgeHvjboVyl4TJMokyVKg4BKoVFqQ2GHCkPWNDjWClp4U6EaBOyN3V - 650n9IZWiF+w24LAFdL5izEWlkn4hxdOo4cbdg5Rrxpwr4J1uGVeAHl8448zyJrY - add4GBWZvala6nKoJrwfYhVgWJy0noUjQWqL2TQiM/K5O8FrfR8JmEkhKW/4TLmN - y0N6Ku43oqGUGM6sOM92zQwWHcEMombQPO3uZUINjhEs15gNV/x6fUFCnwCkyiQr - ua0UXVeWscu7cn5dgF3eUBhrfAkWjdeWYb5e38FPNgII+TsREUTuaUBaGt3xGerC - FHXSGpdoIl1jsdBoZUSinS3HpMVEP+rC1uFqQ33xy+6zsHU5TqXTHQmQzFbDy3sZ - db+6t9uuYrENnGSH9UiYWCNngaJAMRDYtC6I2JqBQqiNfuuCz5vfRYVKe88LfOKF - xydoT46Cgkm7c+1iSzbtcpd+7W1BpkH+rpCRUSFlKgVa1+TXhRsWTn6FHyJoQyfU - aAEJAhAHBcey8g2PxTC/WmAffa9n96mbhW6smfr4XtR6EwOL+P2v7Ag5JtCkn/0O - DtzEDnOJfEyK5irQCIoNsGheR6FDGyafVS+vC1U3akDXD1aKMgnrBCoDU5dw3pd9 - OJ/O/Y0HflGF - =/ZF8 + hQIMAxK/JaB2/SdtARAAieiYdH6zTXDT3f+vWQ8/PBAiypgCmgBTfp+6qZD6W24l + Uf+6XFSj6CaAmezi5mQZIzgrS0+0W+goNAJB9ORATZRuBfieFuToQa3lOQqF/RB5 + pc5XaEelWWz9h7PAg3R3Ewvj6+Hq7Nvs5vff14m8THlGGXlgNZMS69D8t3gOPTnB + 4aBFdJdCrUAScatuye7id1LWYuSZrTztO9Z5W4YSkVMCWtaFZWOGou6h8SKbVAtA + 9vxFvSK0f7U3BS1QbvDR+OUFjrlYgrrG3l/yXdgcbGg1gKDEhsui2XBfbT7m/fsh + Dbhhzms7qrHjdKuURfeEai2WgaVy1gzdGhoR7mw7Z96mGzOe1ddjJChyitKjZcxh + e0vLLFgvH9jH3pTDAq0rhw0DnVuEnmqbG1bvSLB7aYwDbVeZYHHX3/5fjPv7qKai + zqKz354uuD4Zfts8YwJGUZ5bFPEVABcfbgukQeUGAqLBvFX1lFUHCY9aq+8gfEBo + gvKSm8YscyxC+RUKqhTbPzZCDrGsQcWablSYYXKQA76YZkhyLxJSeVkfMGUQ5Mnd + glTVro0E6++ymYPsx2a4PudEo9R8JX99Bvxz4Z6ve+RVmfgkyUITIOvi16HQtu7C + L3LHf+wvMPAaMUqRrb7jw/38GckX046WCIOEBm8KDrrQ62qARODlUvTFUXU7/wzS + XgHPNZmWqJ96hW7+a6oSNVVzZ2XhABOFeGDfk4rvu0J8gtIRccIt+i0ia2+piC5j + MHZr7RRQBIWvH3WsRJ8PjNxWUVAhZCTWDMAqlqm0SRD4MLVKgyxEd8O6XixSbHo= + =rosD -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:32:36Z" + - created_at: "2026-03-05T19:18:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQgAkwjSAdxcqUH9cqH0m03zvL/8b209MKyKb/K2TyZpM0OJ - o7Sw32OFNlZebJj63qCb9ojFiYAV7a2kRvey16T+gEmB2blVDXxMj/MZC/Bc7CQS - THFfG0wmxcI8qXviw4awixbXQ+DftEgXbJkxquF5Sd6LbCtJaJjQkd+pouT7Et9U - wtDpE/zUxkBB3q5wBiTivt7HQXPhWdbbAIsuSRkY1gCInnTF/vKDYmGZPuVbUMS7 - 6TY9NioBU6GtUZmY9DzNDk0OBloxPIFOl4hHpiWRbaCRK/kAeXReGgd31hRam50X - 0S4D262fnhX4FKm3rx1844JLSa7dJDb7z4pgrLb3WNJeAbfs8FW2TOoE0l0NtaOR - SGD+mi0500Lvyqt4oJIXKSXYaBvkBtB7HehrIcMSrKtiS4j9wd9xotvmofhNdYCP - 2uVxBwBaqtPRItGGYGFvGzV13fJ7M4pmyUhBo0Z6XA== - =8X0S + hQEMA1QflAioE8i3AQf9FOP1gIyOBuS9nll0H4tCl88exreSUfNW+ExOKsBYhhJm + OLR/TwI696Vy8bY5jWIzrfUhlH3o9A8/Lgka6HpxJ273nueSxwmRX9hubpqHn7aS + gdXqYpdObwpTb2Wsa+TjyJWYVrf108aArZqtYyCGP+6tCNr/0Qfcuo6ua/fFhvJL + OUXnn0vI/4UOp86blpR2X9y5rYVvBrgAZcmdDKWt/GfmcHZ45Aqf/aKuZt/9i2TQ + EUQFz6FZUn+fR+u3NXk6xe6gvgblJo7DR/esLDwiqxara+Dg11K3r6i80vJJCqXE + uBFImrw2lJuCuIyh0JB8JVNBnPD82n0dJ1hppl3AEdJeAaxbK55QncvRg2f3Lm2h + WIAlELdmKlIOoOQiEIWeQ0roFuQ3oapNxAJajaI+fZZIChSOu0WOUOTzgyb9t789 + 9qWLmaQfdeGsQR9/ccm2gX+xdnIJ5rsqMWmJE6DRag== + =Q8Cq -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:32:36Z" + - created_at: "2026-03-05T19:18:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJARAA145h+tgF3H7YdcMdQC7JHr8cfxJfC0adRXBVf5kk8EDR - bInfas9rmWXAbk9/i5kswYoR/qpim3DcnoSabmiFzznbV7BMKAo9eJyR7bEtXkms - FSqpGBu7tW7Qub0kfA1/14wmc0ZaysMUKgOqnu7y/WZclRmW8iDXACFqPTSBN1sJ - ilSPZ7bCedzuPU6XX39qRZP5qn7iZwduUmBSmRVUw7DaqcIoBKcKQxU55xrfKQYc - 6zup0lB/nttmjWA2Lx7hWil3uIuBpz/1Q5uERZkyRrg2qALp1M0tjO1ScdGatJga - SDXDD4crR/75++jqqdD8ChXjXg3u2gakqusibmtf+krRxrs251Yne6jTClyAT5h+ - Hz6rkDBow7er7ilPbDwBv9FoJvRFfn9wk6nlupeYG5jW8WczPhrTg71n4+eZyBAE - IY3Y41rbClGLU/balKfeyzTykIZ3owj/UUq73yVcCSTjU8TJIfxTwo5fdiBXsUAw - aFRinJ/WjJayf4cjOMJadRwuX8uc0tcTmI/oQVMWbtgLHVqpZWrBNytDePAFUX/O - +lHR6JSriJLvcB7qQ0WZ5zB6CRmB+Mv0QV3mVw1BlGExlip9Z2rOmF9SSMpLuygo - +UeemXrqG32fmY+FG91Y7tlIAH6kyfZsLbXVsUmvZHkGkzar7xveUf4GYQsHrF7S - XgGnZIJBvgfXrox7TNOFNKrEETmsHKW7h5YdlnSlzMVZS4B8hGKotsBAd+5+VlSM - rjXB5Ar1KC8BrP5T6Ie3enzG6q+0M92/yS1BasXSA3fUm2cFoKu3pYRXiQUbn6I= - =jizT + hQIMAz5uSgHG2iMJAQ//cj5vy/G52j9XpIRqGyLwAsxHRY5LkNPOkwgdI4Bh1cjB + kgqNAYzVjsdsLLI5lVYHAA6fZOr5sLm7H1ABomMGreGiPoXGji2NE56+/5nO2E+h + 12vGtP59TWFIWSJ9GsmfBaspnhi+7XIMRzdKrae/+FVDhmv105xlHltGFE9yPEqn + xBAdIG1x71t4e8DG7WyQwKwhmaKw4CaWo/ZLePQCKNARioqQNuSTXVOly1OfXQza + JZw6YHbqDfxnUtrpmfJ4t70jaNH5x6QFbYY3pygksGbBTPgjYbIHcBteftEp84A1 + tNIre6+PVketjp6zZgavWP0XgSe8yWvcVshaHl+rGdYCrjOnsNxq0nGBg5bQpQUm + dX4zBmlctmNA4mn/d4OfMld5kW+ZqfBQ0CmYlLZf7OfHSOMw34rNxbewxXOC6eyJ + uNPUwxSLpRoNEMcbJ2Zdbla5C547n5gMHO244xjZfWZv2l1l6C7N7GQrUrz3Y/iE + hZDcJd0Lfl1qFe2Fx5nm+P3jhF9QW9gMjtGG4/T71IdDzFSDKsS5cK0bP9hmbvFj + GB0O4x6D1kfOiq9V7Sq8r0pZ5L/3wjsnD+MVLCkWRwJQDAjYetiZrUxNeCUtj7kE + k085awUsAIZk4EQlEzIFTICO+0RBGhuhM4PwRAGRW04gRdkTgLa8T2MHWOl/cubS + XgFFt10xvM+TIb3yIygJwFdVQa7YMzg0Tt4eaRk+u8ZeYcbt0eNtrDuGC0bpy2Ak + HVYViLM4j7CvpWRfM+3oVw8AU4knaOqrfmkmgi5SG7fTiw5LYJBXC7wfXi/2abA= + =k9nI -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:32:36Z" + - created_at: "2026-03-05T19:18:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ//VKvC4/nU0uSWTJyEs9KmCC/CDVwhf7PtOKPgnnXRE0nU - vMfqfua39UsfHbmAIe+WdNpqFF1rdsrjXwFwStetgAOvG7Bmd6O+KwwFKjGjZobd - cTC+mjOdOm+LKQAcBREu97zL6vsUN7uRfO52Fq1xpswtfg9s7wDP6SdYj3gCkAAq - ySZCxExVbYygYq/qfJELB7GP0CxpljRKkUy0GqpjXDFPKJtR0l/8/xEwcf/jtkZI - P70+ujgiAn3DegdSeDTdPX4MVg8I2lf9fK4KdZbE8WvP0W5te6mdqCjbe9DwLybL - ykTQy3E17KuzYsVJSmL7d0PPKE8xlm4kjS+x75diQAP1xSS7uhYLrZKG+SC8GG8Q - 3eeSiNYPT9MiKX3Uwxdqj13hqcQC+q/7nI/MPI9DLuUNV+xuakZBg4c3ikLx8FYB - 6dRjPzrQkO/ECEpYHaM3UqeWWx3lXOQCE8AULcW0NccVqavHWATNEbBqH/uSGDcY - 3ekQ993VM0/2KX2AKOR2i/ATlgJJJW6VI+r26vTTlKl+dop36mfrRjhkrUu+L981 - h35oA/CtRHjvE8hJsSu8tN2fkgQhkua32MO8dtH+8wYBpO7Y8n5vqaYe4i+tuAYa - U9QnNOMnPvZaN60wDSjb/DejTG6LPKoKbXXvdP/3R/nthEcDjl1LnVi1+pDCdWvS - XgHhkqYI/JNwbixQ0YG/kjo8RJy4VFF6dcKqaGeL5lnszLQPu7T/R8VewfDie193 - tQkERZLrkHf7rGnVeOWfO54uRcLPsB0BJkI9k4xRhHmMTVTI9jS3fkk/Br58z7E= - =1Iq1 + hQIMAw5vwmoEJHQ1AQ//YJ3CG9+K0naiFk0XmsZVstsisdxB4I5jI/PGPxejeztQ + KgZX760zmkm1LXwqhl6NOBubhCUdzJnt/5zYshOtRMpa0sszOL8PteJmNVUYCCcd + feIrab/5a63HJZTH2oO5TbD1WteMc1TpvwRoqQK0HTbKC01SZ4mZCOjUjoC1QEMo + AkBpdJSGIzhIv6D2RbF5Kh5oecYM3eIWIsBaiJ/twgJ0wIDX/FgsSlieK/vMjL2T + 0qxHKKBAJve8TOX7IbcEBdjqs1rOL4n2PVMp5Sa1FsMzc59MtgZKK7dHB51g9cJU + FI1QoZZl6ae3I9vP/bfkJPxYm1b+noE8CEoJblKiHdv9E299eQsFfTvijAtRwT2C + w3pqRSTWUC/gzvjuju687AjsPkRB7agDGVNTJ1H2InenK4CHxJeaExCn1Qn+64B+ + FQnKZK2ZHXRSOTkPEGsycvmD2yIqTD4GqSP6Ksv5SwMICPeEux4FyXVxBJ1bFL9i + MhfRW7NiTzoKzRtDRlPfnB5BvVBCFFAYxdkvk5addFh7gztfsXXROpd1EvRtG08e + x8JWroPo1SCsCldC1v184B4ASogcbtX5+xgG2cjnHzWqO2Y4uw6jR3ncyyKFemOA + /sjfZAgJdPWUDZkcE0hpIyswmGAIDR6rmZ8LarXeupSbLLvVczaHfpoXbymc/VPS + XgEJ8INCsx8Txd6m69O6+SgcXqziDhcyHA7acyHzfEpaBbr7Q8zLBanxymwAh5T2 + 1vzfgkN4WBTxO5V6Xja3KBSkFMse8jciVUXBHZpouetbClnz2+8wGiOmnjNWePs= + =1wcx -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:32:36Z" + - created_at: "2026-03-05T19:18:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAsJlp4AV/J1rUUZXzsR1cYjLFtGHmRoeRH/HsyzvAfHow - IFsA7jhvjXCRFXNgSfmtSyULEgUWd0PqHZmkWfyPKptVLxyuA+KiYHzTcBMX2Zvd - 0l4BEHNVq7qgSGtHEr/Was98a20G9Uzz4XMNM5eOy3vet7yxjX9/Utvapy3o+nda - 5kNK+jnmHCLnMbM3KsMdZmHE01Tpr3j3bZvrG11LOrF6JeZC6g0mjV1T5my4uRhB - =WiB6 + hF4DerEtaFuTeewSAQdAfZTAe1kpBTfL4nnxyY2Ij281dvj2PM2RAOklilYkRl8w + pPX0VSXhSekzNE91Q397cK72HZPiEUX0iR+1oUrUrVQdEtW35u2CdFFHr/EC3fou + 0l4B/hUlayEGzHBU12RKyt54qJtpSBCuV6tTG3XqDMz4kv55LPs9vbhg3hgyTjOl + LhXNzFY6qDwvymZtbZOmVnC7IoLv9fXCxR05nISvL/ak8iK4oM0/GI4sxnBzY+IL + =pI6c -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:32:36Z" + - created_at: "2026-03-05T19:18:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ/+OnbH0UOgoexmlGWvPuZpzg74NvSfrEV2qA14WRGowdVS - AyZy4auArh1SrUgV8+Ayc/AtGNaMAH4kJYv6sJe6JU2WOv1/xQejHKXC57fF9jmb - FuPvd7qRqV9/XaVR+AKBWQp0UVko7C0B8Ttyl1wVB1yawxHJHBIU3zm/xAbTuFqb - Z7mRQs8N172OJC0zfrbiprMguo+YIOHBp9V3h2DF4PSSFFRbFLHF9jC3gyWXIsVz - KBLAW1MlQUcP7hRzOr9vSbhA94+9teJUoTbVzFuIYYDLPGkEmSjfGWMMaWq2IYP0 - nN6yDS0EddeHrEco+g45NG23Fh8Wfe4dTy4hm9AAoAXYlot/wWNaQNeggWoimMpe - Ie1DqU2djef4qOMASUQgA5Zne3fd7Jm2k2m6l2shruyXyG4FXq6PSVWKtFP5oqMq - ukGZf1ybmBYnwtRJ1Bc2ghv585zA2ldWrXzShN3ZipvS5tPHdHfiah6dffaFvraZ - jxJNaRO876HDiMH8AFN4jzdALzS+1CCGALWaW027IrGYkjhGaDCQ7MKaFjAjrOxF - tlCnTVQs48d99gzI715z+J4fg8dO04YaD1cdUxiFOOWXmaJAZmwFStEpfvus+qdN - AdRpaFGNswEETUztrIK2zJVZbjVmo385dtV03QBRTVnplTnKxcln8atfGZBwYS3S - XgG4w8YzFeW71LLRX3xeZltHHr5PEarDX8MvHYBFdROl+TrkbL9+DWFZrAwnydTl - pehTLa7ww8e6vpL4wZjv1EtFjffDkp5iGwzJHPz53Er63yRhdIKSCpP+PSR5nOI= - =xT03 + hQIMAxjNhCKPP69fARAAn6Wq0E9v0VPDKsTRbm/l2qJoiP6U6e4JPe2rpqRGV5DW + 9tfOf2zrHyrjjlmtIhWoAjOBeWTwjdFj4PBrNk6k9hZ99GlGka+1tRB21rQHwX66 + NXR9o7ONv5Fm+Dbd5bcfzWB0+04Pjjmvol6WPfk3l01vkTANooUhOMP3IKgOo0Fa + uPTRjnRCCtBsc2pMgo2YLdlxzfhPMmvWMvAY4gWD02e7BKKG6wqAKSoyFfox9sOK + Q3poUnZhC9AcR0IGqKhdvEu9B7Q/0aXREZavvSxP/zFc64cAz2NmW0+6tuYnthBx + dl10mpq8oDCQglsOZHllW4lz3qGSQGgh9H28ATb0kTsVwgsO38ZBaHUwvKoqRkNS + 4mUdFuJXLlt2AnYz9YfXNvH+i2AswNTTbO9O5ta4R9JknySLzf47cyIHqoWi+79S + fcxxhHbclacohreaywCMHpGNdEjmgeIAP1qNmeh86tx80/ore4aFSMUYsreyxvEG + +CmqAaQP3O4Cj7l/jIPY5a6DK/A8LsNSV2CXUwsA5hHo3HymsGAas4RXEcJg4PO9 + mCTa+tU3bHUtErEa6il6YEaYWUikkrlerwLy0f1ZnRy8Rz9aA5fB+JCxCG/dlWQK + 1USXmJ7vC6Jnr41uWtEMvlvKAkwFgreuxtmSORjrFCn50ukPNa2rNQFlq+rMUcnS + XgGbl7yOnHnKTs38dAUuAlqftHgx4qilfJW9mHy7/Wxxgh9QThqOe0eXSsQJsuGN + GVhAabfqd98WQFkCt+b2UhBrSmqBtvf6bkdXxj3yLrw9voogBNFyxmUGTpooJYM= + =EQ1E -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:32:36Z" + - created_at: "2026-03-05T19:18:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ//biwzGwUuyWtHeBLCABQyUqKB43G0YrXtM2cQFKwUG98u - WamhtmGzI85O/mx90uim3Vg+REOX30yT1prX+dVi8HibaRPZQL0M77MdIbDjbUHC - lFQlNMg/CKpAvVKrDIrPYTBZJEsps2x/CQBFr19lZDXRWx4R1v9ChIB5yg2IyjZS - QTNRss55VO5uMW97sV4/h3Y1vAQFpybIZ9SvEFw4RvwE/P/pErH40t2pFfocn6C1 - yFrtJG402v86gKrww8xGEt4qGRZ7Ajkz9Fy/C/WPY8iGsnx02SiLNhXj9f8GXmWi - HfM6GpyNsliPeJSUG0+rM+iu6FaA92bEG5xWZ3NijegYMiEa/fO/BJhlZr+/XvoT - avpnhsJAvlJpFFzkFfbViLqfd/nvOh2GUoYKAS+m97aDez2oB6KTYwJNvHgOVUbJ - JBQXNbwcGYWczKWaJw+44m84zoZRnzWXa7hh/t4pUq/qMsdnHaD+Y6bmeU/ATSWi - KjQ9miT3/wkdQcerOli2ws1ejxmOhgD4APZgSnedchC8UySdfxpF/PCMDFkie2Ph - cG1HG89YPyDWGuUgBiyiYRwpO43jWldaVFFMe9rN4gqDSppWluT2Osq1wVULfNdN - DSfSMon1CgReRODvUw8Q6RClHzVqTI0Y0k+Lhj92PYcW7cPlrh+LTQ65pBjMLDXS - XgEqCCta1jdGjIaJU7dvD3QlTKuJusXykyapxeisx2q+CEU3tZt9t6hC1iU90bk3 - +YONIbuWRhUsMTmzV+QlUR6yiutnn0YBvzcliejbbUUcIDN336bPb4gejr32Qkg= - =uqwq + hQIMA1Hthzn+T1OoARAApkPqdZCQpmSGV56UtzY0oWYv+glGKtCgX2wF1Hnpxl7s + VugLFt2ZaG6eOg0o6xlVu+6iDrlB+jV0uDtO+5eIfIf5m57psgm6FDlrlmDs8uH8 + KoA8wKineJQ6wMSM0HlaRv6i61CuvOM/6dtML/edoOVEMSliQwGoqYmamlq/SfNo + FzpgQSen5EDfkp3nROsiMUXNDr9bNnKYGlUtExAMRypvnnUYXB7x/nm/Tzs3flVB + RvQJBKTVkAYjwvbq+nNWk57Esz/uWAAs/GQcbeAwLD67OgsqaQYkQwHY0DEWiyqH + FRRNQSjSKPt3LsGd6fcUuqj25Hx0mBpHFlppuWQmPKlRN4MSADzMq7i3i30cmzAj + HKTIILvU57J8RrCWXZcl3UVz9FQbi4QOzcaQ2SW835QGCFqHTO3yTqpYG0l91IwE + z1RoaCf8CP7Jf1z6y6YUib5m4EsCzXcFw8R5X/DIISTVy99wWh4bgQrlZNLMmMrK + UFWEbnzaCd7J0VaHlaRLQJCg6ht7Z8KUk7Y6Le1T12RW53wu5zY7lM7HpZ5mi8Vk + GNDH42iAI1TCa2K+Dv2R7bz/zEEHtyZN2jqT/UHwXigGd1JPnYXxA8qZEKigjlUj + uyViR6THrF8WQUu9cm5VKz/WJpqnnvMOdIvOWojlkyZ37o9Jp0le7B89HKGqhTbS + XgECcc8jMOi0NgeG7DPawcAuhIaBhEJgJ0wdYdBIJ5QJwOSgYQv8672BZhtAYDv9 + RiKLEU2Lh9al+J0jJ91Rm5gkr0OKx1fSevVohqvReOuhlujA2FB1dR3FbuPaM3w= + =xJn+ -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:32:36Z" + - created_at: "2026-03-05T19:18:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ/+LIn2X3t9tpgSmsavY0kciFax6OVE0wamGLWBKNLW8H8B - mbG6yWVQlBuCgmD8++NhICDp5LmYIlro9K4rSm7WpFFOjKvXP8TuIG4eFU51Q5Uu - tvQk3OB8mWGYrBPPvwJRSbVpk/RkLO/lNlSoL/aZbXRfcLszW+RFqf4nZUNahmBq - xAGkvi7UTaoktc64pXr8qjFo/6YMX6exSA1jd/PEC6PjYE0GiCieKXO1TooYfc7a - N5osXBvQj4cMvRfJ3613p0mvOAwSLa+ZmUlwKULnuiKcG/aT73x1RT07TRUnaWBg - wQkXEgmxv9CWMDlOPC/sPaw7/3Z/w/7t8FO88Cth+NeSYQYHGJqUI9rXWk1U5eZi - 7ZT/MVQpXneQHQr8qGYTDeF/xGr1q8rTWWmDdLsnasE8fBhKgzQtsFFVA937/jy+ - njQpXQkLNi8ku9q2BnOzVoWS9dgaCc+DlTFsgxlE6yMc4+ymXXI2m7c3b6H13MhB - rqh/Bh/L/7T2r4xvn9FfTIjYl/AfUiEZyfOZ8BOSzxXpbw6kmOPt+JYFDbRVw0oS - nf3h7XC7jdiUijUTKSNN7jCHyKtQdqJUDIAZlHn4bP02xsKCmSlUU8dwZXuDKE9Q - 6p3Gl8kV2kgr4bSvwrUdvySfbVBO1QsRytAaRcnnnNTqmjJe7rtQhK5ANM5Hbe7S - XgHwceRynZjfptWo2iDU2TP4frr4vFUsVfwi4/O+OUcvVuFt2IrWuOpZj3RjuYNW - xWwkpPZTGPxt9uaepYoNtWsUJzqi0FcjS80SxwnUdbRHHaTl5ZTcCEyTkAgVrjQ= - =fz7J + hQIMA46L6MuPqfJqAQ/9H5V0dnLg1AsPwvuWlngqQ2MQtWq9GM29WDkmM8zHa8X5 + IGOHn37y2Yslq55k8FFNZZk3mH6zth8Rik+nfjj7AINgIogLKu6XGNaGklvKiVW0 + eXK2qME8kYWvuivwK1XCbkXWwyv/Bq/dHuU+TiwYX4ToxcvQ3Uzy+2cTK7Gn4yFs + dbLI3ST5EDjXb4X6UHvqpLpLspuULA3tHdePVj1YKIGN2cSBl3xXys2z73/yTQbX + /iMkIG8+C6xlSWwTanjRfBe7UguoVEDrFxq1R/xGl+AZPh9YAQJQgt8VecXIG6cJ + 2Q0gvtoz3QpUTwj/W+Ad4TE7UToOJ7rN9t/KoIY8O1nWjxkooGyCYtHTjLCDbwgm + oqWCZnRXE8wzAsjq7qDURQuJGdzaFctVLP33xuB0vSNzFk9HEgoibKr6zxwf29Cv + 8xnOofBOlE206FfzAng+vGD8p6wTTzqbWaS1PbiPCx/o5JDzxRDpXolASNgRLeOc + q1CpbyfMdsljcmHqnwKOJ5nt9ATQ8nfhdxgAoHFWznoiRt17dpDesI/NbNaKMG45 + tsoGyRRZb+CJS61IEB5i9x7xF4XxHwHWME3SmREIatWCwK6xrm68jk06Eh8xNPf2 + EJLUbD82d/XXNxJ42uZO77tQtB7H+EV3VwNvO0GDBlrrP5MV+Jk5k8sFSi1FIU/S + XgHdKmW/6xj9A8Iypujya9ycRRZRBGoT7OnBU/EPbEufzEWu+U1GVN9piWpHwxU1 + Fa+5HrBxSOdbXaoo1ymttUwfk3WsTjskbo8ATIvRLpEF/bwteQznr0O9d548MmA= + =0RiY -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:32:36Z" + - created_at: "2026-03-05T19:18:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAbctS4wLEDCGwUTMXsKB33mF9rXfPPE9jOFyGTnKz/ggw - Axw5KKlTpq9F+mELqrivs3XhR1Y5IFKspRQwvIg6Nqh9tw3jlgi2jsAalOHkjzlG - 0l4BwuvTJ7vEwLuaY2z+m9uF7PpGVDvm9vSE8GkquIU1u7YuYkJgSExQ5zJ5C0zL - QL1dd7iQfAUZ0J0d1wuyJr+ARrdx6UW2wC21mdBd+bvVHtwAYux0g9bKaAU7ddTj - =VZd3 + hF4DQrf1tCqiJxoSAQdAnk+f7Bd9KMy6BpzdGicvPNwTGDypTmCjr7uvht4TdSUw + QxhO5XJGWPHAKSj+2Hb6WiMKime9dCReEA07Hd3VLepmjQDhQaBTTP7/qWz/N4S4 + 0l4B3NHG/+ZdSnQEJuwEEF4+7tJAH9KaFDsk6ws8BFxfy7TvWdRouSQcAAKdqFaY + WB1prv8hdmp4vzUZBiJBrhpLJBuN9Ye4Dl918DMllVKARAyIWxy58QHmypEB1Lu0 + =lGlA -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:32:36Z" + - created_at: "2026-03-05T19:18:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdA5nAAzvcEa8c/DuM3HE2AeTUpmaMopsp/9Z0Kc+rUEykw - wp1PqPH2jPBLX+VtSr35V0MVout4i1gv/sFYFu7rxHE63vmh9Map1FkvHm4FPgPU - 0lgBNEDJ9nX8KX0OQMM3dLATRJ7fjan35km3up1xoNI5T+cNlG/2kgzvUXjv4tcK - z4paweacy59ARHgP4GPvxZNcJ0ZmofBpDGxiyM4113g21X3ODArf4FMC - =xhVu + hF4DzAGzViGx4qcSAQdAB47wtv2KBefMFQLvON4RxPWhDqDLvNVqsjZrKLsLAHMw + JCIm3fVMJLne3QJBJdBS3mmfVFb6nUPLkIGCtCfUWgmHDmZuV4L0ad9tuN9rj55d + 0lgBtQJERICX/eOrdX+R+AjSFgemKO1YseEgn8fC8VPtwzx1RESXaHJn0N8PAdRr + RaZWfFp8f67m3J0FWU6TxhBv2JZ/HBus6TKTM9DKsvYW5/WhETFPIRzL + =lOk0 -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:32:36Z" + - created_at: "2026-03-05T19:18:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ/9EyNBMH9qRwcu8b/9gZCIBH30ADqrcnqmMlaH7aAaUrdx - TjuCc1pSzWJRuAbX6pNZBV5+vCX5QDMivraWqAe6aharA162qkBiAf1K4eXsQqBO - oTBq02uSIHutJIyFUzMu88V0FpSektXARWwakATd2MOEKr23RcKcyaO2oDdW5eJ4 - N+mUX8IM7HD9lEk6qMunLmb5wpZZwptPx0nbLOT+GzjH3X50KepfVHCsd1uxPAdw - TgjMefTscjdQiVd49TI7GDxtvJRnKlx/r5eTFoacfIvJ8juO64DjX4tx7djtVR+C - o0CIHWwPar98I0Tn8bW2OT3hU3a/V1AaJoqGP3RWkUqmOrxioaWorC1YEXvS+P2k - SfWAAljQkmhrUxMwRC8pThdREPS5DvGlYQ5YZNPZxjxJAgOiigznJnK5PEbRQPE2 - bWLGZZCBEVg0ZCYQ447kY1mnWTPcXLNP2JSUc/Ek5cj/BVl+P+JcPMUZG87BRAEC - 7JGB0f3WwZaFzxvw56eqPkWwlazkizjmXlh3OhgJ1FJXB5Kb/WzvEDTUInesK0l6 - WTmg+jiuZXo/AgCD9Uk7bU+wneAFvRlHZC4ZiryKOuI51W9CH5iiozDlXVloMe6F - t6ys5dw09mkQIhuhz/OCFST0GOo2GQbQisIZxi68jMo0yp4Beu2kbOnQqze+/8HU - aAEJAhB7oAmWSY6Z/FAMeOKBIDs5u+/FHXaMoU/tJdTydVVDDVCOgVBbTsOE3Edp - onQFaWmoXHeBrdbkpTVZl8nGcZSF7FILag0jW+QucCPwreVOMFx3NgmdcGmyiltw - DgV/LcWCU0lH - =DXis + hQIMA2pVdGTIrZI+AQ//VtsxiACv20lfDLoKbFxu5zyH4+R0wJOnUJhvthxMdT6b + yU+wCna0lJnUQ5xJwZa/D3lWgPXo1iACLRypsbKh+JzPlcFsVWKhVmw2mu7ia+Lp + Zmge6CKdPOOt1g6Ytdp7kvgRPnLm16vRzzAz/sPG8WW18zb5JTOB4Ph9lwRwDoGH + MgE8LztkBUDiDR2tCg3BR/3+q1NCuKGA1InHI3C+s6cFkzirx3BOjQ4Vj3KnTMg3 + NeM7MpzJYmIKOjVwFghFadR6DWVOXBjNlsctRryrDW213ICtDY6HWERgdaN9Mpus + fIIYiWWK2hslvy+kN/+wiGE7cZ/yMoosQmDeAxw4vd45k4HfljXEip/qKZmVFo/p + mapfQwnZQYPAYRwC1KOK/meAXyfp8Z2OMZqhULvKcU0aEHuwj5rFX0/Y5YbY8cXE + gsjeX2ASdaxeZqZfIoohYkafT8/MmmN8H0O6rh1hzKLoVbYn/zDdEr730pHJ9YqX + LHYxy9b9VwN8AC6X32uAyqnWu7/CCrCHqnUb+x8cypJUTaUQTa12DuC48ZOzs9Vz + ZUbR/cHdQbyLYpnIfzZc3Rg7IMsRJRNuURhD+zctu04CIbtHeWOYTJQPTf7ficdB + y9OObTMadabp/lRNlzlZcaguoCTrqvDnXhfviiXnuZDGXUdBB2FiInWxMk2brcnS + XgH38kcUcM2YWMwMcc2iIruXTqxgRy+1iQqI685JM8S7omSd0Kptc2QrRvsHS5eK + FsV0uNaxXcuCExLYPXbjlJdTwMoGWABks0j+dO07SqUA13+MD4KKkPs1OTGzEyk= + =Xk+a -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:44Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAihlyqX1487K+xE5OoJdXt6hqvd4p1wCscT18h4dshxAw + A8/05k4PnD+pdHK/qIJely79ljmWQDQwRzip/A/9wJkPChurQv0Du5OuzpZbdqKP + 0l4BurgmacrV/G3qLvb80r8qZf4vUbWspazCVyMXoxQNvKypt8nJMGF7jg+cYiFA + WI3VY1aIEgS8irTy8M9yM1t6CcRInlzB1HVwm835h4/U0dtQ0vHDlWID483Mw8TD + =29hK + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.10.2 diff --git a/inventories/chaosknoten/host_vars/keycloak.sops.yaml b/inventories/chaosknoten/host_vars/keycloak.sops.yaml index 1600391d1..2a689b626 100644 --- a/inventories/chaosknoten/host_vars/keycloak.sops.yaml +++ b/inventories/chaosknoten/host_vars/keycloak.sops.yaml @@ -10,204 +10,213 @@ sops: - recipient: age1azkgwrcwqhc6flj7gturptpl2uvay6pd94cam4t6yuk2n4wlnsqsj38hca enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBOTDliRldvR1pZM0xsbFRv - MDdmcFNLNGxvZ3BJa0lJNTVBa2FhRCt0TjBZCjNmRkdKTnFvbGRra1QxNFFHZTMz - ZHY1NStWaWxFWjhpN2gxalhEaEp0VGcKLS0tIFRMVU1KMTFKY29vQUNVYWg1Vys1 - aldXSHBQMmlLbm5FVG1aa2YxRVJVRncKjWbVgck/EIzbdeoV3X+tMT+VcNVXNcnE - UoTdr+Tg+BRqrl8HoGTcwWxVzXbtet6rU1YiNdY0FHAlqNxkuNCvSw== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB0SzhTT0lMdlRxZW00SVV3 + T0NnZFRVSVdEeHoxaTRZazcxZXRlY01rM3hVCkZIbEkwNnRlNitESkUrcmZ3WFlH + bmtEVWFNTTJVa2ovU2lOMWtCM0JIOHMKLS0tIFprenNjS1Ard2FXcTRxUWphMVkz + eDNHY0d4QnhUblRSckVVUXNvN3BMenMKISWK22cxcTtD/+vfIKDtppKaILPsrazy + Ptow/YBdiJIlYpmRXzGAVqowKYuO6qJutrrj9ou5FFqUV7Y3WybNcQ== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-20T18:56:43Z" mac: ENC[AES256_GCM,data:zuJ5oJfVma8DH2f+Gh9cSBFFiPjSpP4tJcBc1Rvb8jW+rLgxQWLcmScvHzNS6Yj0h3vINnV1oG+pYb0S4rnUxdH5tyYvI0M+DxMuC4zodxGEkvMcg/r1mf+cHUS2evDOJbKzOrNQ6oXTXu7ByBtug4x8SmJ026ul8qUJFJTucAQ=,iv:sJ8oLM1c9Jf3vqKqMbcLUyO8wubhshj/AgfYL3bjn7I=,tag:dwwktlJDiEg9/TSmkcfupw==,type:str] pgp: - - created_at: "2026-02-18T08:32:44Z" + - created_at: "2026-03-05T19:18:22Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ//Qqxvvus1BvUz2sbcjK7WaVMErA/qgTywafdqcz6sKXkq - 05jnRtsPFu6PQSqEFg/3B9wsR0aDoImKwCC5tigLzB77nNXrC7MwgRkIqqR8zJ8H - AKGWNy6I+MlBqdvnvG2rhb0t4ZZvmv7o0401YAVJb+rtmj4KSNYGW1zH80pjnRT0 - IB/VeBjj4BcKLr/CkzV+BCzZsWZmDs0lVvZjNFZff7+mSzd14D6O6CzDGoXIdY6l - ktKVL7pDQepMOeb5Pr+MFq+py6eoM/HLgdo0wmoXWXJkd6l6/aN/gxx/2fXWmRUI - BXvJ2SfcYf59SZpJ61o7QoRnLDi9JZe5YRI31vvIGWEXx9iFmhqpca8lOdtM2J9E - WBl6NMZjWnUB7QLmXSNJAme7pYBSrm5EjDNhXiSUwQdlM1hgSAZmxXPBH6NLPmhf - Wdy0sC2/D77frFmHyskUj5GSr+9fGQ66MCv5sBXA4r9V+Av3sBjEhd47qytyefVl - 34GPUZdK5+w9lISG5yGpHOlb4y8Lx0Mk6U4WrZJLZqeSYT0DrQpSarwXMXQu3U7J - FM5YqrLW5q2qXqFtkzFqGOo1NhAUIwQmBrr/0bPrSow8BREqT+wu3WDbqRXS/1k6 - Uy0zluvkbiTnqB3QHDp1W5pPULQTpiIwhnC/lgM8LzoXWMNspxJGC8srFDjAFyHU - aAEJAhAgGaddv9e7ZvlItXkM1aqAef6ytjKVFgxbEMllLdsNw2CPl32Hjc8ekGUp - MRPhV/UiMF+pkflI0Zm9bY39/qhvkHybqsGwM9BUyOSvXFo94nrAuVNSmd9DK+/c - yiy4fNfMFUGD - =5+Jc + hQIMAxK/JaB2/SdtAQ/+Jkx3VHTIZd6H9kE5SBqqGFnrjZQo6PJtdz6uMQ+Zg6MU + X0fMwjbQ1ZYBL2McgTUy7rPMrVtwVUHU48YU3yCoLlO16QVAEWw6ndsHycrUs7LR + OJOmRFZ33rNFkc8WzAENIaNx+MvwKIQFc290nbtK5h/TTl++krGlZOe7Al3mm5Qu + DhQDbeNUE+egRQBK89qsIyJc/VnczNn2/fiUWDYPwX/XrYUmY+wq7sAmi73HFqT9 + dk0q7ZcDlanEP1NKrbx5OYsDcyVAlaIr2r5JJRD2PtHRLteeASd9jivhOuusjIcS + 9d3kWbNFdrAconGH1051osJVZw4jFzSUtNIEIRdTH8YtJNGS4viqLnyJvgVF1OFh + upk1iGtbvHZ0zqPBqcBMaYTnA5dfQQI0s8+E77SG1zwfkdL4IIJLnLE+3zPMRJ1J + 1aW11Px/yBu+cOqole+Sxg0cWgtywIflLfNahzoGpD2mJBapaLV4Ox3vLacaxpwr + FZkVlOdFtRmGJMBx83LNpIbtfOH/2sE0DCDnh4c6daN1GbscCASt9R3mcl4sn+PU + jMhczxKpZuAnSlNm7T0EgyS/n7+sfX9mYr6dj3pqdZkBXTIKSA81/RzrWj9n74El + khHxbTKF98lZ/mKdSJ+062nD6OO/PG+jECjvKqRDtm23fyAGzxt/ZqJY1+gDNeTS + XgGVnqKu6d1FXQsyCcgsIPRAoJ3pXZ/UT+HsaA8ICMMMJ4YPiaIWUFstYLrPCBrA + WLOIKCONLIFY3+rJV78lKn/87cnSUzMlGrhhj00dd3zI+gIEvxms+9pOxpjOPlE= + =B+Ma -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:32:44Z" + - created_at: "2026-03-05T19:18:22Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQgAoJ3dhlncGLcgPGB4+YIBqr8V9XgwzAedPeWtZe1O1wTZ - 35J0NC9kdNV7gM8wJpvQeA2jbzOD++/XrBrIk6ZTfxvhwJGkBqUFkSruMRHuU11i - BJfTWJmobTI4vxqVj5gBv9XepBwWMT25kwxvIZedrCDDpRhjXwCnZ+7/H+K5KdER - CRPPBABX+RGbNsH82sGD8mXlPowrgFW4YSvXqiRhr4uC9GvgSWYRsXrZsBzIKi26 - UWKvz5cfD7RPJsv4m00M4ctmme9lx9OWn2ddEv/U6PyaQGeHGYBazRXKAGti7+G6 - PHh0IdmSnfZB8x7SnVH89f4OQWtisvdXjjqNcsiWFtJeATjMUNsQzcTUwDooRU5N - E5zjq5v8a4mIpZO7+zJMxjSruCdaHgEAQOrCBS7xb3hZgX4M5nA54xviaF88fPDx - BCCjYeDqEy1s81WXYnAMycBiDj43dPapGB0TcWkm8Q== - =Zqh4 + hQEMA1QflAioE8i3AQgAq6n3MkqXO1gNSEPMtkfNcVy0kyrIQQO/mI+jG2VWWO5n + JYgrA27QhSBzKGEDvnziqc7Gdb/pZAAPH53BtgYhXc8PbLqM4yYUoy0GSyJG4QUe + 9PkLXAysR9KQNmuODevsP0DpayosmvINLQ4eFIbvjMmj2rqlo5/sSVojzLvgDhy2 + XsFEdjMk79XIGxcBncKxIKDxC/Ei7/Jh3WZ/5c5VujbshWmpLH3xtXXf3mdt1+RT + 6hgwuui2i7RSOXL0SZE6w8mBUPNQ0DEj95g9Ei3leTKxcKe38fcJpd2UdP0awFCk + eEgljxpr+slCQFXgLJOoT73P2ItAeqWZ/J1hG/zKwdJeATj7yCOQAE5yxV6h59ZB + 8jVRjBzsCni/wVoU8XnZX8nxvCF7pc8IxvTe4tk9aGI3oNy1lIdU41lb+5jdRbrH + rTgSWl1uSee+GBBrG7rlcg+fP6PhumdwBZZqnQ/cSA== + =9puE -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:32:44Z" + - created_at: "2026-03-05T19:18:22Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ//QnPiFsj9gXxKag21up4Ta0CzFFT/yVn/5m0hVGhk+Q8n - dnrl608daNGtdfp+VE9EOCHPE2FfczQMDjWm/2UNIe8AYjiTWUtZmf/XYqnXUBi3 - ns8GhXzKBzrfISAt4xadoHUOKodnrSq6zGd52Z/QTZMmYuYeTfimwJkoUKxoiKQM - 6i0ScgO6Pc1BiP/9LIKr7lYVshu5EXIvo5i+nuo+Z7PD7Kq4/ltzCAui/iAl6IEa - W4cMVeTwBNk+IyCJQjBOvGI56ISNm7uuO5oLNNQsD+Xq9rhxGPn0LwQCSg7LwSQq - GoNKVqRco+SmYUtPqeW9yqk8SwCGXSGp62T0MYp+dL4hc+5OjIO31y0R95CwL/us - oTq/b4MPncUwBQeBrc8yF84MKuk50ETbeoYAV73R14k+kw6UPN4accjUd9MeD6c8 - YKP1K1UO18uc3d9PuOf/+SWTJz5QtgKGMPQc+phDaxAoUIf3MVxbhim5teGBgWV/ - 4tRQt0bA8ZDuESziJCYKubumrhZOti+CNgFSZgDKu502WuxTsHbimlDinq0DvAi0 - mMWSq0guXnYhFn2LkXLFYPzet9ws/zunKwrHz3jQprQig0mYKlsPkNztgHSQOvzp - ObvXiKdWzpaIh2xyuMJvtFF8E7yI0OlzjbcQ2xglwM3YhlrgSq1tUUVe2OwMktrS - XgEPv1MnPF7LdpSx8RvuCBwFrTPqel4vm/4KlgHS8GZRAVb912ooy2A91HDHC7En - ywZQik+jwKcBd48l4ahJC5Pjy6st5sX4yjmyYHkK0O7w3ZH42uA6BedZ3dk7esk= - =84xy + hQIMAz5uSgHG2iMJAQ/+IL0nJdwnhH6RyF5JzksvgHwAdBC8qVlE8WrZ4iwpnfbF + dKQrelIycj3Kba4hJx/QIAwASeiNDl3YUNL5KX8G9JInAF6aOAqMVK3qBLe8RmRW + VaIOdSdk3J8Rr/nogUrgFp0bGwttPdG2C+oRbGesIFo5wRhgIMxYDlVWy1lepCoh + YVykTq8LY1Pfm9YdpjhFAARpuYktmSyxPdi2p5Ha5ThlAGkYSF5q6eb6HGqO7qWH + DBMlR7XlxBhaz00UjfNaMGmioaRq2DcZ6y+rLfcEI8k0MZMnN7EEt0cx5Fmzvnc2 + lnRi3msPSD/7jwJq/SyoXr+Pl1lSSsawGRRIRz9amTuZW9Sg1eZi8rhUVw1S1QIu + CysS5r+ES0ovubGgM+Y63jDvGTAgEmBkZfUkTGX0C6Hrlr0Bo3If4s72xF45ieKh + G+ZToeOVVEyb66Rocubkvlv8UgGns6HUpb/TUa+DglDdXDoaonJpARMdCP91sn33 + 7fqQdEmu3DztckTTHLCBmHfEzEjLi+bQledrJfSCAVtuIogmlESkJVJk1eEaie+X + Rx9qHsDDa1YnaZMsQYPJQZZvj3+mknLePNPHP1jzMyfYIr2YDhjZ84BT/QOJT0IN + V37Lud7rNtKezirWUGZa73HPQcG+7KyI9NpiZOUFGYl032ryr8DTMDMKnHG9D+/S + XgGYLccQsUB6nlFMLfYbiZwJEIbGz7fIbCg5CGyeS1HOIsQctqWA7fbF/MXcS1Gc + d0TbEevGSQu38OIyTCLLitU4IVovizJUFjlPTQGb9baWWws8IozTX+wEu9FTRD0= + =GX8F -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:32:44Z" + - created_at: "2026-03-05T19:18:22Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1ARAAq4qA3EB6GLzrU7PAGkKNNhVjwhdV0RlJ+iZU+4D4pTTe - kh4wMhj5Sztp40/ip/6tJJi7wb43cabS1XZG+LX1hFnK9wnP/G2mZbiEFiyZRa99 - mQ2V53Dv8sAv39O2Z+kbiK4ZLh0GkBd25UH1EWhTLinmijzvfmIYpEjcc/yqiMuf - sSlgiuizVLHbDeVDvX4TqSRl+sI6b33RnMTu/3swoauWsUl3+UBDsvkYbcgEuUL1 - VgKIcP7qWTg7aJ3Au/QtBxgAFzsMpKM0Jw6+2j5eoZWcVlDVK4N8ewqllHo01H37 - 359hMWjpPFvges9Zh/8seNvSRTBpdvJNG9p+x5NCWbwNA1b6t5wE5YOEhZtYQ9E/ - CeJeP8hDMl+gA/BgshXnhWT6jTOk0yuRHbp/fMat4zvnZqH4qAtC1p85aykFD41B - u8vaditjkLboO8L0RtFMIGLyifgYXkyScFPR+/n2lfeWlRFyXweJf8RywmMNVnwh - CsbGl5JH5crA1eaC5EvWHZWeYE1VqeVrUSYpE2eUGJ8/ZeR5Lu2xFken4wXqGjzV - mEHJb08Q6mGhLkVSZVhrYWw4Z1Z4qJWb1BSOT1xxjSXeCJEGlX79THisWnJBoT57 - Ao9aCHmNhGxtpxh7DKmeaeh4iTJIzvwE5YddVmxXv9cDna404BqodBqdTYOgOnHS - XgFItp3mq9pTIbpTlw11M2fgYPbilWkuoiXFTncsUA7bTEaq0gRYR7lDwBrZjrK5 - ++CjYLixVO1/00g779KIb+MOhzWWCcBAJN1wFRWw6PuSRKppBVISOn98gqGsje8= - =OBb6 + hQIMAw5vwmoEJHQ1AQ/+K8eR9gtw5yWpWb73YSNi5r2MFxYL2phNHTLJbpMD0Pse + xeWuanTRAzC1WtFFWU/NPV5Wpp65dsTuDADCSuWwaUP+L+ru41l5s4DnvRgjwjP5 + 5mRpiasklVtbnVVFUAcr6X9aNsOL+D1A8tV/P8W8/IsagtI934fjFRJbnd7BgJA6 + 5X0fIKkTEolv/9DEfSACfwAKzpnemuF5kdSU/aJyc6vBqB1Y0xI++gmc8xTJHPjl + D6cYfLBbX5YWFvQ3cZ+ge8gJYj0Rm8VZaa0EYakB+s3ij2nCYeAiAVpRKGtNRaHR + 4HkjbNlOVikegruWNNl+m33RP5+p/vtzwcc9YPJ7zcBzWPHr6/XvkVCyYWwlaPId + hycPMnnH+V/Db9/dy+Jk0Q9stXAlEMilhFMgQaXRPobNzsUyW8Px7tvspX1ZJabf + S1vGf5epf95tSA2ravL7HlEGff9gl6gEVtqkN24RKzmpYj8Yunp13XPYCNZ5ZSse + Drdzgg/d0OwU8gY1YJFz9DE1J81VJpZM3In4XK8xxPbDdrRJrCtvTBKLf/VjU6NL + UcrUfN6MZf8GpKw76P38YiOm4ybutSRaI/tzmW6UPvZAKTqwzAo+bOl2v+ODGO6j + msUW48ly5rsXnEYdh4AE680og934XkBzLTw5y77dk55ojXn50vH5GKAcDhgfE6zS + XgEnrG2uC271dOqo2cmRmIPfCcl3s9TL11CtG1lsxbX3qD0OH+0N6hu6sClRzDMy + 5Gyi1Md/qFhO7VOEBvj2n7GNOQhAyScIo8S9hAOb2G9h8MZD9EFi9sS/vuLsNTY= + =b10v -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:32:44Z" + - created_at: "2026-03-05T19:18:22Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAbwazhUO30Cwj3RcsRbnt6fVUCzBmXhpgf39bQoT/ahgw - 4ZDjx1r/DYY0tSnKFWCYiILvjwVy+GWLmRLzKSTIyyuwr1S8SfzzPO0EsGl24u7Q - 0l4B5jyVdnw2NQcKYIZME9xZ8msJu6BQv5ulwzWBq2aWmleqTdjJb2OFHuIuSjEG - 0fI0GtOpbkzU8Hkz+CHNRVbdjHG6PeA6ZcgTE8ElyvkTGQqt/ikkSt+9SWmmwWSR - =jrg8 + hF4DerEtaFuTeewSAQdAo/MfZmJC+TsA+Q86e5ZaE+IC/4rBjeGe0Kl7rFR77Cow + YUGzi4UgYX3MDXHe1Q3QdJbZBKuWrUFOfrnxVMUUmMU37Pqs2P6I4LgnEO67guSs + 0l4BkXaoO5Tut6QrPlq9cLGNvGf6DTyAoWQqeh55qYNBzFGw7yGqiUsLOJSo+jK1 + TX0zEYm42i77yw43VtdH2xsvmxRSu84iAD3pkeoHH/r9Y0V6za6IXPNVr01s8Esg + =4/8X -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:32:44Z" + - created_at: "2026-03-05T19:18:22Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fARAAoT9j9HGH1HztSQBuW1cre1tQ6gj71WD7/ejYgjYK/haF - t6j6uEL4kTscO76K+DDVhb+x8QfcgLi2S2R9bZxZZfHesEXbpiPJwWu2SK4OEW02 - 1eArnYWUROMVJHA4T+wPX+hgiwWLa2CgH46nUUam9M0Rf7lW1sAT+mQK1Mdgqc8X - No7Pc4cRS3mihkN9oZrN9DDEaP73car4L2a1nyPC2KujHscWpO3/ccWgAfEsKQT0 - oSSsrX6DRzrZA05xpn3+Ms757nvpco1zB2kL5889q7hs4U3A5uVCLAN6ZVQC83IJ - NmTgkEt3hYPamFX84OnvEKSI5h3SDOoDKV8JMM7SKyPwl1L541RoiXVVlWAMPq+Z - MA+WR/aV5xk77Z8eYPv88pGYA9KS9ThyiqqpD6nQ1Lcy8vH1+wBljruEVFOaZjWY - /B3OSCjGyVccbnJwWkTd7CToJRISrO4G6yWGM4Z2UnM5TaKmoNFgb/7v+jUUS0Ta - IVP96KK/7ZUKflIbnDwYk1vWsSS3q2qiTubnhsqkao2SI8KfbgX4CAvL0zKzZ+Qb - SeCZyScsmeBPOx3oHoPd0os3gHZqXb7MJvKg8wjKf/V3GxfjUXDw2gWtPYXclH3x - Cy45dbSfgyDHDfEYBde/Cf3Q0hkfJ+zJI1TTth7Ug6iNxnHASy5driSxm6gGTHHS - XgFEdGZ3tOgaMQbBz3Zx+Mm2JCwt0E+dAJGAdaNCcB4kFd65RmTA7Nds7hDa7m4V - LSCj7T7Bwhzr+LS2YfTrGsY4opvzA5W+Vyh5DRKPzx7+LH99NbYRXU262TlRG6E= - =XCDY + hQIMAxjNhCKPP69fAQ/+JLx5iD9mPHC/kYby+mHzAqc2A+iWxNLB0dgUt//rcX+A + QJJgn8cDQP07Wc5FpRCBD7s81vGYPYwUPHJWTSBpLxzT9GJ1DF7Fiv3YVmybJvbN + CwQfQxEVhnSBXOgksto71h9geRNOpi3RDlZAbn3Le4Fyb+/BuUGaYpcJ3Aroz1wQ + vEzivIPQPux7C114hgi88pmneG4gqSW4i5ZckViWBxaHSlRU5YIZHaowOM8xNai9 + 0UF9otKRWrm8tCBx696ZGdk738yFGXVDqu2MQU61UDQ5hL7j7JFEUuu+SI8sPiQC + F2kfdmBfpEpS4NIx7toPRJmBk15I6v7pJaVNQuFnsrnoZrC9GTBaeHjc6w3dtwMp + MZZczesF9EWUpOO6l64p+F213K6oaU1IYwuLbFki/Lr1IhUY4Jn/fPjog90zk1a2 + fjC8FYHrONu1K1V6O7MfI5QajZGF3wPqU8pEipl3swmD8+54ytSONdyKxEcpQnyE + /Msm5rMw2hpl73E/BXPmkk2coRPT+caIb5zlyrBLev00NkoFE+PtHVgKW3ToMb+u + 49q6AyeHuk2C7b3KQKJDuWIZichbtP/IP3PTPUtgn3SqH5NxeAUsfGDkSZxWP2g4 + Q4clw3KadOIO4c46aqvQp0bi99iSwBPVLwR+ChRmq3x0SsCwiUASMvGCuhomFoLS + XgFcFAUlDojff3FSUsGHqpYbS9xwb6caTArcD5yIbwAN4TPMylhUAmHRKFOBVSIM + mmH+1Wsvs7vNqTFJgTSlommA5MC/Hybl5MLjh3X/Ay1+3uEt166isOdVp+Wy4MA= + =SEtb -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:32:44Z" + - created_at: "2026-03-05T19:18:22Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ//W8W/wDm7h2ePfEwLXWrADIyT8UTKOoTMxFoG3ypjupnM - uMAVyKafmBtzrHtPaSXDqnS17ipodTCeseHJ+ZkgY8nxdZq0UhT5bmaeprznDlze - dDvC58b03qBXm6IXn0Ofm0fCKlSz6Inpic2x0f8UThfP0rC8ZAaOnzHUwzaoBAdg - H5UtMfChzA7RO3U8qf+xqpOetXh09Zxhia3bhSrhjfKf1anuy/n2u7Ju6x28sftm - q2Ehi/KeB5nm9ZXlfGcwUzt4uVZjMOqpEOIzIm6BAmynpC6bDCgv3cYE2JKO3AwV - FKFulH+aSXSE2tN8Eu/6dikOFebiPqolcDM4WNBKb66ovIoNgqPywMkA9jAZ1GR8 - peoqsxAkWihV7jLNUiBfNk1KN1ZCpKrcjZoe/68tiVVE9GWFWBY0v4xgCZKqFc1p - nDMEECpKMB8xJbAhaxT0rk75u4Kiaklb13Ks2xlTwy4cnGc46r0XP4qENsUYm9Vw - jLHI2lMSuFejW5fRkbiupDTaE2RCCxaLqmATGC9BMOyl0CV4ME9MnKIJYsC4J4yk - CUKIhA/mZMLqscW5wA0hSPMmyy6DB0AX+g4vY8ncaa+LyTcHKTKIhg5DK+ToVi1e - qsUuQywv4G6tXAifEBwTxDGVr/b7USutkBiDq9gHg55LEgKssM+5w4E4qeiJ2jLS - XgGclrYp9o62qax975MS0mzMb/spnFWFIQQ6L7ig89DGGScB2ElcFXidSxQ47EVp - 41qR76+1eIev9EVeeKAZZQejU5LCaHmPwp8UsJpaufaXCCi3DscCSTVG4StUnPw= - =RM9F + hQIMA1Hthzn+T1OoAQ//f/7F3dwEHvV3yXfCy+GV7K7ieqB5+UebmAC9u9NFPZib + +ENPeI5jLJOJgKisZaKKePCwtpm7Pzl12QfTPBKZdemUIJSrc9CiZQv2FqcAhV3V + AcdQnN8O5e9mX6+5g81E8+duZzw4opreFHAFi0qMmeqJ7qQjARkMc/qLkoUKe3wQ + tWTWkX7Kd7dGtS6SHdbzsDvuOqSDs1Dw2p5PsyBts/4ZzrUfCIT+yFkhpsLCkk/X + fQTBAGnKaQ6/bilI9szSkJanuBo9zcKcVDqMLzZfrFLjJC6dgaahYGDaxKNczsZl + pnZ2Fu0shuaZWX1IQ4ISAymC/cp6Z2UxsA+1h55KdE1/IL6EcNmgHF7nE3bEJL5Z + BdWu+7a59WBFw09aLpPScv2bXT8Cwh//Glmu+1/43SDluNidC73/9pQSoboZfy8L + cu8RFqw+WDzHwM5dSqrH0M/ghNh0sBWWt/RLSsgmcpvfz92rSCqLBVbboRXDhGdL + T+ZAARmUde357DhXBjP6ov/vmsObbXGBV/Wyng63CRdNXbZh9ZJECX7YTGKn9n66 + iqfXK7vkf93th2hJhyC6sk1OfYOkpXlkd5Yht9Y4L0B7ea9x3Vn5Cfl1frWPUfuW + s1tVlzGCG6O+S3N3Sla/xwZRqgOKDHNQpRDYH6rCf0PM9WVpzeperA8Q/GlRFYzS + XgHtgjzioKnk6xVOVToQbQCZW4P4SoxYGL9nyfjvmIAdIKYXOiyueyI+qurt62jK + VuW9KwHKtCdFauAl4RThrXo4H12drVcJnitoqykUTZIFm9/YJbTw17wJeMSGjLo= + =1j5G -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:32:44Z" + - created_at: "2026-03-05T19:18:22Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqARAAuqjYOb1MIR6rQWPBJ5q+w6AWqCu/v+xY7PhMUTS5EJq5 - b6EH4SudN1hpfpbJ7r+CUDo+OVop/RCatr5gmjUF9rEk3wPu5lJNhhcSn8BbJ7RX - /qusENrON/RF90ByIqD3Ewb90mbCIJJcG2xTXiKYAR9fWNYfUCuYDbGdmhqEdgBX - TjEACyCQg6hQKqPR3oHzHHJKKSQjG8UKkuOsTo5pEFqIQTxTXL7kIBcsEp/oI0yt - aP6eFZ8oYXLYmnVr+ybN+JFbJMljM2fHxsKo7mqGVjsh+f9RkdSdYTzOixN41k8P - 7wyiiQqPhoR9Pr94rdSVId3SSBORkPBKNk11fBQv0cA5j/CRzLGSH33ovraGgsjA - O4ihTIBPUns1kchA7LsBpjuGvYyyPP7Grv1mBSAPFdNwaE++orRJg6Jw9Rj8Bm7m - mWT3t8RacSxFoUoPPcAVevrbJrACBjJUKPOasWTQvgnCr22ND5e2I9D2jO6krgiY - hzXi/kiJt41wS0jsWqYhoW1bqbRugumtF+Op7xQtJEF8LawGCZxpDZ+Rm7K4Cjmg - Q+YEfYcSjGnTLvKPXakwT2cBFIIQ5lpOorlGffr9mwYbSIMi3ieWku4VbnqcmQND - B2hAoyJ9K0lVM10ATxbL9WPDV0jyemaEjcTAEoeq1HNG44RI6AYVhc2bnx0FPCjS - XgEVPpL0UUpWxgzsCzykpwMVOiRm+YAdbdxq24SWlDe1bnWYMznbzX86tUi5v6a9 - nMXaLNzQ1ieLZSV01ezUnfdV5YnG3T1lh3zHPluo0wEE9j+izMqSUtD4ImD2f+w= - =mjMX + hQIMA46L6MuPqfJqAQ//aAstHn3OkS4hYyCfqWEQps63boVNgvtpnlBdwBvfgclw + 0n5FJiOocRPRRRkq2aBIfmkZ3ZfU2ikF3j3qLmKxsP4HaiwIG1LQf0zIle3BDBWJ + aX8ndr/JtXBBH/UASCq+Vn/9uPWdu71c4q4qgtP5F4TToQVktnwamaFPrlPWVS6a + bbpvNEswXTsHrRpOqWgzYLFQSB9e8GXhpOTksFPCInFDVPsQ+Uy+rRSE3WOxkQeb + aN/Jx4jUEsRxaqorui/99If5VsGbWFseCmLUxFvscJ6INQmxgBQmW7WOxAFsYpYb + sWZ8yfiVFdw+pPpZW+4wXFr4k0BH23guVRlQ9czc2lkuI65RIJsEWNgFagGbC2mN + 0p0q2EKqtd6CkTYoz1dJe1ITz0mwYOgt5I3CCMTUte5vVuOr0G5c1TwxFDhzdJTT + 2Z2nLJfya/NWs6T25rS0CO3CMArdJWaMWqxTHHvNtNYdJhtiJ0IesPFU7qlR8QtJ + GpWWZGjHZGbvM7dx28xiLqF5mpOikxYo3XgJvjZmK28LX85J8V2ptrMtjSY3n6K8 + r9g43X0wgGBGXjk+iEZZonvzrpDEtrIM/eqhZ88dViTXEr+VbdNp9SuTs4DHH2wd + OEkGdZz6Sc6OK274euczPdFS2uVwNtWsAiOBitlfp4TLj0YSwdb/z6ipQDq0O1XS + XgGx4VStViRSRYwoJjK7CLt4IMVNjwa14fLQDRgDY4mMZwyID/9PMffRxvauKZf5 + hXI8RyoXdW5rvV6eIX0vumpcAqZ2kYTtUIu0E76hqPhXL58jd0wZ0zktseV+RW0= + =B1C7 -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:32:44Z" + - created_at: "2026-03-05T19:18:22Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdARYxo47KqnE7BMdqJDYZ9vpLSyR3iNo8JN3z8qHiLnhAw - ozt2KbeM6yfm9bwnE6aLOQw5aL+Sa1/cWF/6tDeuaRyzm8SwKZhD/BtkwZTgzxuw - 0l4BkAUz4aFg3yBByzbxqTS7o8glHcVFIdrp8NVqRNNZ4Lg8qePKJoHtuqyk/3ic - l5rsyUyGb0VDoJ2Va8NREcusGJdkvduOT+iXcDbDIkoDBwPCcdzEZykatlBSTSfQ - =6VTF + hF4DQrf1tCqiJxoSAQdAlvzcUCjC/4+RcbwK6U3AGFPxumwWpo5HkxqfsFYPChsw + /b/SpXhhXIlid2Dwzd0sWWlTITGltQzl37EQV6Dl/eSnNH/a7EJmpsZgWuQqyGjo + 0l4BQIJNPOUQ23zg4k45pCT/Z6MsQ5fqCvsWwgM9iKRXgxy92JqryFp2jGnrInDq + oQJgjdqgwpqLp5+36HFSbVt8Vj2s16tx2UX5S4GmKSCZVdoPsIbN/AxrY9txVbQA + =U39P -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:32:44Z" + - created_at: "2026-03-05T19:18:22Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAM+I4l+B8UVttWvtItpKc9f4o9p56jD4zL7aspH35nkMw - 3QMSrJ32F7tuw+ggI+6EwcV6E3DGRzU8gLeFcueisp3REeiCeZiozAGEJdW00iRU - 0lgB6g6c3XomkrVkIsbpTE5l+wVDMmRaRU0f/0iRI3dhuY1Hw0BCUvyqnc7w4a7B - AA9kYPJE8BbBjF8SP7zkKMObYqVwZ9mNh1UI8+7HNEjFCnX+5rpkAndY - =FzI9 + hF4DzAGzViGx4qcSAQdAmhQnWHca+dA7EBVnsfgvsjJWNtMlSt3GqIv8rArG828w + fXJ8//WnY9e0BNbvQMuozkuri6wNU9uNtIxpD5aCUWmjQkWQRutqkZ9ILNixjM32 + 0lgBah2iOree2r+y7w/dIbvzr31nwb/uUTNBaX9jBarHrXpSJy8TuFhKtWdylDs7 + E29zldMExfd8LrnWRou4abZEEAk2nErCo7EuMeArVkBtgkYZ6QsJ+MAe + =pAGU -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:32:44Z" + - created_at: "2026-03-05T19:18:22Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ/7BvbawzWxT4vUxg1336zvIb5uZqShvTA5P91xrWMTqasJ - WYRjm09ZPGd5J/oLA+/0SgNnyqk5rqTvs20SfPX4occlm5N/NgwMWDOae4Ikjb6m - 0XuB7BZ7R128WrgvPK9iTB7G5njjpu3XZXpRRXRj2JmZVmRNsE989zgMfJnsAuiQ - P3cDAkkVSAQPuPohBiKPz40TgBHPHkvxFo6Js74ppsfWDRHGciAcOLwnq5CAdYbq - YvFEBOP2aqHbF92jkwwfSCgzft/UR7vTBKSBf5JeOO7KivTPv+7BrLglzfJB63c2 - mT+IP/gHM+G11pcJRMmE92nkF7eV3f/48n1f8UBIBwSOUt5kN/Rx0A+O6tDf4Eg2 - SLQ/6jQT/G3afn5qqrQAQ8GzKV4KFc6iX2MfyMGQ3rDEL6FLxKWyyrYauudzARsL - lfJNUnItNHSMzFKqCIf5+grz9eaYb5+NagXeVrHPEurhFK7fAVFShJ0ptSUcuhe/ - cGrE8QFahl4hldA6BKWD8Klr5NsRHS68rWZbMPHuF8r6egk54RvG+rGVfODPg2cy - sj67NRqWeCDZ5YOPmZuctKffeMiNIz4rhrMYNxCGZ8yXJuXvOzcjtikxysDNsNd2 - 6+La/qepffOtwXl70vizZauvzXVSh06UYnwFRsS020dyasbwj2NCqMjNmem3XEfU - aAEJAhCztRoxxE+AMMvZxV5uS9XAZg06lC4/VdK+uRT+h9BDFACzlfq+j2sphoqf - /xuhv9t6rcJZL93XHSdsFQzLRgb7n1R/MKZsTorj0pctgNegERDS+Av26bS2HwQd - VfGtciran6px - =BUj/ + hQIMA2pVdGTIrZI+AQ//cuobVvAe7knRS7opsSwMIW4O3zRBgvoRZiZ0jsS3l5X6 + NpDe/3AfohjQXPMK2EPTqSB7iTiHmxLmaRsL6qo7DE8tAwhzyxTzLQQ9Gpr+XkqH + uNvGP2LPNzA+a7BP6ziKiObsTize5zMmvUa+lGOW7/kSKz1FFROMmVDqcG35U+cf + rlWuTpgL3gC06bI8sOPYyMH/5i+kUISc4Y1tN0FVvAbHeigRrUgy3cZmtabXKxGr + stQ9esrVhn7WlBs2Sfyw8+hBQx+rFImGaKZGljY2uNBbPMSFudGLyv0dde7q59ky + kIiUUTaN7kKyETX+nqBzwtq+oI+zDYi7NcYvqBrcpDyGoaXMfqL22k1v/CmjKbNP + oXHgb4keEFphZVjkJcLorKS/Il5sodOCfXi1XW0TJ2KS8VyoxfIvrfklJ7cN30p5 + CqikCoh0IFamB/0ECkPPNy/IkmYwB3iRUigOv968yl2XkOWS0i8w8+Nb/DuRtayR + csRF17RjRDBAuNqRbKO5AJr6LjDH2Lbbq2PKCtJ1HLPJinoKoSSTcBGUVeOTD/VF + 07W/L80Clevq03iMVsXDqP/iQZM1JCL0f2SfMimCDumepbfevVP15Q94w9EWoSKx + IYVSGKRivDcOmtCOXWGuuOU154FrJYOwCU9iyLCO7Icz6kw1KjFxNCQIwMlAemHS + XgFz6Vk7GzUMsOtshY1tsp0CE6n/YHVvRdI4YrYiuYjrzukylkhV8H+/qJMWkFk2 + UuhgXYfprbH3YDWTI1Xedb0F9av9Y+ZFA6IBygNvploj5HXfiRbJKbtuyfnrExc= + =GB7Z -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:22Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAlItDUjzX/SxLgEtpBrau0vWYOpDvLZ+i/UD5xPT0r3ww + 88HPOIhsNA0blpaElE7L3nbgAV26JxERSaCIMUFS3ulDQp7sLHRszw05hC833DbA + 0l4Bg/9e+UFycyYkc+VQGawiPhZlFkKmJZTwAyYTrRMraIoLfplPqSyHah8xhD8r + ZBON3bI+ZKFdT7JpdDDNmhXJcr4xk2dATq21tVU1XO0Z4H+GwDuU+hba6n0tmSW5 + =TSvL + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/lists.sops.yaml b/inventories/chaosknoten/host_vars/lists.sops.yaml index 9a4984d95..f1fa2f58a 100644 --- a/inventories/chaosknoten/host_vars/lists.sops.yaml +++ b/inventories/chaosknoten/host_vars/lists.sops.yaml @@ -4,204 +4,213 @@ sops: - recipient: age17x20h3m6wgfhereusc224u95ac8aj68fzlkkj5ptvs9c5vlz3usqdu7crq enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBNTFBBeWFhcGQ5RzRZaEhw - cE1SUDJxVFRjdS9aekErSkRIWUZmMTgzbVdnCnRNLzdJT3p2YU5qbWZFbnJFTEQv - MjFVelVFOHpCcHJnY09VMkNQOVQzRDAKLS0tIG12Q3c3TVZhTTZ3b2xuWFZmVHg3 - eUhGVVNXOXJZbFphNVhXMThuZ1cwSWcKM5PsaCgpI0z7NQk61Jyg25SxY7Kya2rm - UbVKBOyu6thkaxZi7SAPNkJHJ/K9VouODJBW78vC4qwvlQiGTNn1Sw== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAvTVluODg0dWd2a0dyS3dJ + SVhkMWMyaDdFSUYvNmo0dkJEdFVtZUVZV0VFClJBaTNDK0hObS9ZRmFzcGNJa1hr + dS9QZFk1dXJ1cEptY2crTmQ2c0hUR3cKLS0tIHVKbzZ5Z20ydHQzWTVOVmtWbnRL + MHVCSVF5VFlERXdJQ0s2RkZKdDZTekUKJhki1+gtkujeESdzZVUQ2T/4IHX1DEbG + NPOFO5fjOyi++QVwDDvHJxp6fVi9k+c3N1GvrfWKgYO/T/pLYqNMfw== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-20T18:57:27Z" mac: ENC[AES256_GCM,data:IAM6vn4rI1l6qvPWEcDJ5xoD3I8/GWOr+PmRQ0QdkVMD9Pt7cHtMhHPpYvH3e8MfDPhC2g2uwt9FHsPqpcOXpflme0aF4E9PndGi1Pzi+yh40FSBAzLT3MEQ50vZ2rifzqUe5KSrXByF1WAnZxLTMST+xIlvEZOV0gx6y0G/iHQ=,iv:15MZsyClZ+WLBZgcRSq740LgDakuHAXAb3hAQyLKVSU=,tag:7+lRz4XKKVlkSeDVs4Jy9g==,type:str] pgp: - - created_at: "2026-02-18T08:33:38Z" + - created_at: "2026-03-05T19:18:30Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ/+MVeoyw3bD61zVGBvm4F3noR8UKOsBtavokJbp56ARrFB - 8eItEUt2HudrvTacfwpjXInGueTTX71MISQPe01lzhrH0BVxGZ3qiiTaTtGZlR1Y - rvYFJLnd+LkFDKUqpKnjxFYwkmS+GLWkxv/3+Np5dYpjQhikRcs04hM8okytWwWp - WimbyS5fDfKGXrEN0N0PfzjxhVleCyDn2Pe1OUmg/KWPWsrlfHM+4GYpOHlJWAww - OGn4Oxn3bF9L0ng7NOuozT8nCUW9gVPbKsT/YmA9gIdbdkLmrvv0pMCQLuzZgL5s - E6O+Ld6hZ5RwlUhrXD0MCHZC+ZGZJOPOoeDH7e5Ag6xg+GjGMhulAU7ljPY5QH87 - TEc6lDMOHOr73dMZW9xVQ4u+Dsk7TTV8x2nlpLDqp1jUwuMqCSDihPPe0RgF1ur+ - wLMk3PZn6VdHIXOaJIb+U4I7veRRHb8N6QEOxPu/bnpM83pffO8a2EDmLp3pjnec - 9tVP2PA6jMdACeLcrE6i9OXcrpb+nx0g3gyHolA/tqD/QnY68CzhVMKVA4cxWEdi - MyH5Ac1Sqi2zZmW+zIblRtR+iUKCzRjsvx0VCpHvjc8sWHqX6b3TAcbNd1NVILhz - x9V+Awza8QB5SxmRRo9PEyQVgTw5cglGLn7rW/W7Y+k6G7HYr6qvi0Lzi49TeG3U - ZgEJAhDzD6o+i9Z43lmGIO+eOUgZCq+hxIenpZ2h1ZLSUvdugdBrb1IkYJYRDHPG - niy9OqYenGtApAUl8z+fLDMEreYZ2jP01R70KoP7S0RZOeJr96NDlHANYah3LwtM - ey1w9/CGKQ== - =lwm6 + hQILAxK/JaB2/SdtAQ/3fFOKVwafkhQ3staIZQM8elxZ3LB3amhw4JevBqdUN/Ar + /JDQmTxxaZrAgyZsMQoVCy7E8tbx37OVwxnhUquqHojVNvxC33Bb5OvcnIcMVzpI + lrmMGmNjkc9SAEUN6xU+YCpVqOF0cvMxgtRtlwBML+aai48jcYfRPpJ6HYRdgoM+ + YM86h7T0TIqXGISFZvN9kHp9YNlCbEfZQxUCuKootxTRmDA2BTWW0h32UyRfVyKp + PZuHo/AXMUYGnq//Me3vCX4aRaDS7pB2BFa1lbrULni2Rz49oGNTiISiMqSVq/sR + L3EVOVid+wQUuazDmR8d6wiEsbs+7Zfu/4vEhqpzLJjP/8a78BqFwMAtXVtpQA3W + 6ThwhPPlpaFGx4A7eJzlLXyJ32inJF64NM7XmqmpJHMdcnOQMLQJQyMToDPbMnMo + Pn8o7+xKv0eVBzD9k7LWKz3NKnW1ioAHdwA9Rx0+7rg+Tg0+HizqJeJoHHe7gxk2 + 3ZXAo5GmIOH6esIg9jgsCE8j8i1o6MKBtWJsM+BFIiTLObRz1Fam0QlV1hUQrZ0z + NWlbahwMkTWk6r99BIOQgqzbDM40IAonaRQD5Vu6RIefzSi99+XlnQDO4AQlHE87 + 9FS8g4DTNGVMu4cgvBzbc0b32AFhqQoDaXjqB4z9ZKk5coZLx6rMMQao/2Ha9NJc + ARclCQZ1g7DM4PWb72WXO4kKgIOsMvlbXu5hq/h0JVkaFRzonHlLZ5xg6l/48kJP + GpV4bD9k/BkJNMAWBDoSyX+t+qvkuF+2UbJyXIFXfkP9pV43HKKeMfGJ7yQ= + =looz -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:33:38Z" + - created_at: "2026-03-05T19:18:30Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf9GR+k8XOzUHx34DQyFwIveEypkFy446WlwaOwmkfm5YP+ - Q50+7v8eru3jsOCPysz3LxcaU6CSLa3ybejkug9+4yHyJQR+cCom9ia/jk+9XrXs - +ytqb+rOiywicTI6lopPBtlko9+nRATOm22Ru2jab7TZx3DhgGv8AVxxBLm5K5wc - H5Vh/Xo09S0FE9bszHq4wARxu40NstnEfch9DpEJbllJBWvAILgAJPu7i6mcEz1p - tHd7xqCfJbo2/gAs5pe7gUQUGiywit48vuNTHHSaE2iaHNE+6/h+tME1/an19/G8 - o54HT690TWNq/r9FLQag7BNe/rbOJSA1yYSNaACHetJcAd5ii8Sf3OAlQc5QLsIw - AL0YS52q8516fcSTcoJutuUbsCH2aOXoXG2HOsSlld/NEZif1lIuenjU4R3hwdqi - 5/2TsATQ0+Fk//cfVfi7PlcQov9jrfNCti17mQo= - =Josl + hQEMA1QflAioE8i3AQf/enfTdGiCHrk1GMKHIdJywFIjJv2W8WZ7Rzw8Py92xtAK + ASmiI0KhO6ThKVQof7AvKGyusuVdl6CUo1QCD5hc8dEdyP5dOvftJJptjMIXoOT5 + baJUssJdDts855ob4I6MQFixiwY35EP1tGyy+6Jarmc7Lo7mTFoGhAZ6FDEgSdCx + 3orJHxiB6ITu3/RTzM8eElt6uWRZeCy229PGqQp/wZLr3wf5fws5tvd+rFRzqCYt + nvdENaFNcW0L/6lTQnZPTkyw6zh9zxscaZN7VM6OeIlsN1GQLSnFM7obLTSV9e2N + 5WB838Zwl3nh00EfURCP70CTbp3Kvt7lI2LCgUxym9JcAbg1NQeItCb+rUcwT3IZ + xv+NWbmaM06HZPaX4de3Mp5/vToE01dlV2e4Lx7H6QWnpn+ivyZvQ+UQBpQVRj4E + /nG1V+RzFT/OUJ+70yL8jPe8eg6IYUn/Hyk8Bc0= + =K3FG -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:33:38Z" + - created_at: "2026-03-05T19:18:30Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJARAAgHf9vD0RxOa4hAteUCgujxYazXtR4wxzCbC83IiUmgpk - GKZ0KW7RrM26xGLrf+DV9osxlRYF52ifOMnkqPRx+qHxGdlXRjeO9WW9ipidu+VY - BUhTfELJjCdlz21nNNoEjetoN53JanPK2tHf3k5L0EuSaA1PVo8ds+TFkD9B+AOT - cJ6txJj/mNbj4rBhgdjnyimgf+Xq7NJUi6z4KyY0Skj9o4yD5NMHrESdn3Ib9gPJ - RNk4DCHU4w30fikXDg9455dPNQgmXVsgvkk8x3C3PRjJHLiN1JqaSFvoYI0cYuAL - vB4arVjrALOcv7sBnxWmkdqj0Rz9Ras3DOnyJrYFwsfiOiwY5MEtuRd4vuguN9Ps - 2M56tQxHg/ohdDEbZQic7VsqWFNPjOOvdgGwz6uHMmR7eW4vKIKpU3sdjJU4/t8j - cRbXNIzRkp6FK93ixPEaiHK3wK1QFmyF7n9UIXl7qCV9NZbuAjhUSJSUX7A61MgQ - 1jGDRX1e6a/N3wgLO5PmVWnBfn3oCIKjhog6Xpffb1yXiDIB6Zzi4cMvQWJ3Yy2s - 31oPIwHkqoMSZ0n8DW0X8dwNUgj+LE5z0maNe9AVfpXnTgHGW5BGBgSIi1KK6zcs - ro2vzDeNDG2uZsdkjM+MCs5in5j7GEGN6eKN3/97UR3fJiXkrQRlAOEFIiBD4DvS - XAFIRQB4DjCR51cPKwEdlJzVIKyorSwlqUComw9sfuTqTxISrFNHDiHRUfRpByIx - 0rhOjJBSmnzVlZsbiWiFhUQuz/XpB86QLrjlEfEz8IKCyuuVzK0wNEA/mygR - =3GEE + hQIMAz5uSgHG2iMJAQ//RnJwxiS0e4XGfO7s+rNTFbGhuF5jqTSY5we184/6FdKi + 9uTtS5VxUEAi3bW9veti8Whr8ygnRtLfThcWEUoGLCzlaiiedzwemTpb3Ww5WzzD + CPrF3nCEPTVYVWGkLA+DIPKIfF1wCu3Rh7BqvSzjkK9mehfqknX7k4uTsk1zc9B3 + 5kZPjtjur3VwE0WeFMMfWzqIUkaXd7C/vNi9YX62td/Kp6lNH9GfzFVIEhkM/DWj + 22YsKizQ6IhBkptJTE07KqKoWWpZpiOXcJlNm89YdDGbXe/YjXJAI+fJwlIhuVUw + 8UCgQgx55/ojcYBS/rl4HWjoPqMFSizwZfJMwMUlN6nd7RR4PoIT+oSZ89TqoOF3 + E8ak/ruSuhvC4ADgZQXl+E/yddNiTNU2F/2vBelyMvyJy1yRZWtAts3fhHADuqlZ + 1aYVFtTUgiXhCOPZLqNGH4BxkcO5MbisWay0icDi9gAZmh6hFx6qqn2Hh1ERD9t9 + +2xsluUL3Cz5J8kaIt+kWtEZ1umMfT87Yc47dk8n9b45T8gVm0lSsKQiKpv9zbOU + q3TAmygzRFaDXPtGEM54Zb1Ko34Egm4lo/2NPszZtA5q6KnlwjAJdrMlIekDVTtB + Y3o8lIQIg5SPSmh9WaB20W5XufkH/V0eaylvozGyfoFMqZ4AlUZvtGoLbIzKqGjS + XAEIH2LmPTxQg3NPe18o76XUmAtqjQ2eT4tgUy3omkvdX8cn/tMZs0nP4HYMj90X + fpv/vbEHYhURZ3Z/AEU9YMOP2JHABQB8CGNnNbZtDHb2KyvgzPaKeysJSwVF + =IpdI -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:33:38Z" + - created_at: "2026-03-05T19:18:30Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ/8DlwF3WfH4l9Y5k1LD40OSgC970ZsabLZBsFDol0SXW01 - fkDk/ZKb5l8yLrXUe7OI3FrdjWRekK/NpymGluKf2cX2tOE3fwRmTdQcq8zXcYIb - 3AwXGAYSjqJWLjQb7uBBzFwARwZ55sjBfyo1Oe3rLCUwNIqn40WmUWwYEvZ0uapq - r8RMoPxK+zuPYe23GMsV4S57CzsKAe783Hr/RGW1xd0PmXbCHBs23G08bkEY/JDL - FxZ+EwaB0XBLQ60u4WK2UVj4JWvsqth91LUknaQaao819J3n4IMcqopVRr6hpvDi - fB/7n2hRZsGxcmOc8kW5WgLwanTq184DY0luC9KrmhDNFH/i2/SwjRksEFU0Ymq3 - SUVH1greBYw3EhR5u3IXGgwWvYmSfnXmY3bPAwISQc3FR1yY3xTcL7FOWwvsh1CG - kD4aiU1g2+MmnAtI/CEhMccI7LVuHCQEZlh0FYvLlDyEPq76oYVQKthJKViawrkF - 6SNj0pHyPKomtyR+sWWKoYLzEicELbSypdUkhkQVffiTSEny9I7YXySshKs8n1L5 - 7ComSybOh9KbAH4q0w95Lyst9x25G5b7Fs1tX9a8YY4CB3te2Ic/2OmvFrR4AbYj - wP5GUpW5CO+jWYZ86NG1IgqDEl/d7JLZLVL/lNvVC6Gz/OAy9lIirJyCisrwQJvS - XAGPRSeLJJokEyFdC4YECnvgX/z86R7htL9O4W4azahQCVex7uqEw2F3pOz4N2Fj - TNFUitTJG3TlqOXAh0AwqPgJa4n9zRDtdhIZl1KTRVPFm/2JQ8MgI4gWIWlC - =s8he + hQIMAw5vwmoEJHQ1ARAAiryQLt+UyAweVrhVY2Jo+wjsqvDHwfgl5IZylIidXpg5 + 0GOBEAMe5TR5Dk/YVvZhLoygzZN5lBplDdKZQLDcfQURFXJZNiirfHP5nVEE1Pb7 + 419/ucMsPUD7LqnlOcPhWedWgZG+eFyPOXWF0mnK+PqwABqRPZJ/hxKRYdB8x6IT + pXi7/ZaC1kicliSlqpiBXfF8xFNV/iVZul/IbJH+0Dbf3+KwGpSqnjUEVmJ3Xmp2 + Ems719VTld+OGquFcHO1m+DarDGPksrvruCXqUMelXCs75CPIKIEUXI+7pu97Mry + dJV8jMRsgP/0J+FWhlJ/oBUQAiji81SbcXfekXWFyqfq9oNxiRpuaNV5M5Mf7+6k + JTClCo9Ap+LD3PJwWeoJdQ6ZsTeF6jnUmgPw1/qesclk00zPPsAvlAKKPe1IlXdp + W8hn+pBk5JY+FKl5T/zYBHrNYsOTQmZatm6iKWnTDLospjz84b8efu9OZtolznRg + yEtg0vOYbLsuQiY/Vs4JvTZCIX0/khG+DXH78aAUvMooT76pncfgWvNeH7TLgIfQ + gHXFzK4PcCBMlJMalO7qGJi10MZ824dPjsdvIPlg/a9oLinJyvPqbOhwclnPhLs+ + GccezIisV6eENLtBbEyn1tC7nskr8Z9QGCHwdnigi8CzgAyYA/7TVJHFu7Aj0I/S + XAG4pkB8Unh/c8oOcPaIZysaOCBot9FP+lsUzcaHlYhHRfcBQDox5MRyYO0UG0pL + /OIF08YWpliZ/Ki3LXIdvxxC1EwcYg0PhPMnhNBd0XBujkl+XKWgnPYB4rAU + =LSTl -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:33:38Z" + - created_at: "2026-03-05T19:18:30Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdATtSfEyJLoRK3oybFwerloaq0EBeyGRktfrKppSnCiFMw - 9RoXbYLgJPHdCkhD+e/eciapbgZ/o/nwXyHyiZ6Y/hfR3yrSp26CasYwT24b4ToZ - 0lwBSasw8kdzccLxD4AaBXbSAgkGXalzHtNc8MUnFH6EWJ/FQ3xbBvnvmncTdgkZ - gUcvrt7cidw/un6L2Wfb6r2oYXSc/q0xXtOi2idV0lzrM/p/2D0gNt+sZw/RZA== - =4VY8 + hF4DerEtaFuTeewSAQdAdu1XItfYEK65DM1vVjLVaIvTyE9w5bex0qHnKcSPiB0w + z6D76iw+0nW53MNFFq06jkYjClQkxwQHR/r4KRvQXTHwhbLwM2Vpc6zMK8hdkvNM + 0lwBn1gSBmKSw1FV5IMBxUrsfgNtt/OZKIthuDkV06MZFEzIxWyLo88KFhB9qGDx + iNc/yTsoJOdFtZ5iFGojktXZwiIgQ5hCP8b3dO8tDhgizpy2UgltfFTCA5uR2w== + =v5db -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:33:38Z" + - created_at: "2026-03-05T19:18:30Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fARAApNKH+U+FWbtR7NA4MEOqSGvmm6Buu/ihOElOi7vckCCc - 1aypwyxR9syvaGLgHTJ4aFZlW+tk92tEbS5XkFBhIXAKOp9bwkB5ZFtHtYNQeYSj - 0q8L13rVjVxKmg1JY/ko5lONjd4LvnXdIZsZXjb6tPR2bAM8AdugGXHh72hx/JRl - 2iOczVJSI75Q6KbeNKfEQrRLP58QggnPbvG0zapeyRaEW577T1qAfBIEsu4Weh/5 - QtCJ4+IlR86yhy7PMA7Ms2VFSAtoCnJiOsdopaC37/N833gMUBgFTpKm1mNNZcL0 - Z68inxxMKVsm5Bh7e9Oao+UbmFdjwODGo7ZrB4H45z4HPq9zi+JLj0JGYWDkOd/b - LPkXJq3BOlMqd2WI5S0KfC2jBT5Ka3WvmAiyi4kGVU/UR5ipAor1q/HSCseKa6iO - luqpQuTdeCB3Jg8C5RzkGPskJcUUTdnnk7sK0WPGrWVub5KZSnLg24sTVyzsRfYn - qPBmd+un2/rDmVvxnYVAApi99qI//AYZK+aZF/aDjp2FBE3Mi0HDdFTf+tsqbmzp - sTKvxL5chvU/1ctJqXXLN80+YGZxiMjvpuCH1WEPPt+5MbQEMdlDgFqsKu1x2ELv - oCMrludzb0fyoX7Ai5Xju5AK5rAv9heo08tN6lmaqzvqJQto4Ja9VOqNDISuMp/S - XAFN7+eFqe6xlLHO85NCW4Ned8/gopxF6R+5uzYwXA5XH1RdAytx4vmoqHItx82A - zx3w/oYtaLMrGnytfg9z5h3DcluPy1AOFXzaaZpyS+CxDRK9EkIx04CCMsUf - =riy2 + hQIMAxjNhCKPP69fARAApH+m7nBXtnkHIzA0TL7DqqhWghoCx/bjryGRJ68KOkuA + +xdYv4H3lb6jQMTnZu+RGZuIG2K/y01zX0081RD4JfNEeOV0sdCKcNtnJwNR80/7 + 0jEESCnTIYgK7iYOwzoOWjklBWHmWp73AKyhAiDtBIURGcNMjXE0AAyAt6w5Z7xG + Xvj5/1AVWKgv2/aD3rExKsEwtd/NHidh8KyAv2Fg8CC4zg9Z6bp4yJ+OOqqGfC6R + 4XrEGnVUVIRVLQePW9vptXQNTanQHX581UgNIkBBUg90s9KAJ6p0vyielggFZkky + wcqgeg/OBPmmoI6IUOeBpBzRLdKHLIIyxb5t8/60DLhwh7BKdBq6xTfGjJFvKVwj + ERsE7ixUVu5zWCfxg4FytzJnDmf5eiLAlFLANkloswO4CYs7BVeWGhbdca2jC1KA + /izsjF2lhOQSBleG96OwmpBc0kk+QkPN15xYy/owAzhXBbDnD4RniICx0aJa2spQ + aOe6e0agyn+0r412v//kigB2BOvgP79D7AhVib0q1rYjWar1XFGRyjQAzHTglWWi + v+yx6l3Rfj5a7aVugQTUjqmraywwfcwYnD9fYPiHPrUXp+Dl6MV+vtTZSeKvH2Ia + B/SlvpbSy6+3oqJInfLKo414FkjNpQ7HN+HEmzlNWJONwhGAymQBCLxxuk0cUHnS + XAEAzY1RufK0Dh+yf7lREaU2Ltxd/F9huxkIfDKqXAaqqbpUddwkVCRt7AqIkO8i + ZNV8/8CpljCk0hYGK4q0nxQEJfR+UnMpCWe141hPLhfPM8itI0JdRybDS/Im + =Rhio -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:33:38Z" + - created_at: "2026-03-05T19:18:30Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ//d1tGVnLx1RlHho5/U6XiFX4MBHitmFmd0PN8mx1BKpjh - sMtDV8YeKQIL34Qe1QItm+IrHtFxhTG30mZX0idkxqTzCu9raR5ohCcavVKHXX9W - /setpggX/MluBfOpCUI/e0ZwM5Z6fdNG/4VITjSH5W/mAxyerTjk+EsscCfNXemU - hpFSNrzcC39zk6fEnlkEdL9OhX5mHaRT0fSCotXhD9IPdoBFpsN+uEdhjFFPg372 - HOY9tZIRNQt5/RaFe3PV+5ESgjBk5Ly9zcxzNoZiKAxDEUuiSWiq8kCMIFfAcUMh - h+GabQTYwGjOFKoU6sC73vRQBP0PROws7tQLxrN9wDVmtOVQSCuB5iop07qIrp5f - UPOjWf7UV0dxSBbFzl/gOR5neomCZ2Xj8mIB6RIR7ziONB8AOR728bDUJFBdxw1S - 8OaQltAnxEdlR9L+EEEAjGCgSnJD6oH4CDOUVgx8jsOOeN/2dX7AuyKTlcA1fQga - PDZhOn8rPwlMO4bP5T/7XliU+1MUdV8iWgtYxwVwuGDSGVyvoazVFBOqu46Eewg6 - KkMSqevMGQ0qRRHL4PLwcBlaHTaDfYIe6j4SW0ZMuKpkoHDEWNOf7j0+fNCZcTjJ - //nJqNUS9I313pw+MZtHWStxCe8VUWjDe2GTJ2G2HGGyvHkwKyeHtslcyKGQ9A3S - XAH8DBZKeVKwpMZ5EjwF9D/XRegGetL5kyQKbvWtT41gdEgHmXKeMjHqBV+GjKBl - fVBBrq8ZGMHU8coVO4IoarSd4/lxgka2jebW0LNE9BDtFKWGxwfzdNxfGPGV - =8+qZ + hQIMA1Hthzn+T1OoAQ/8DFHR9u7U+BQ8rMpAX5G86EySmRXKVEdImOm1xPzj3TuV + AS26gbYPqL1DIsQUSXe4Ms2gzg+7XrXxTc4rfwyg3xtgdb/Oi6G6xNOGi83ZB11Q + Y3NWP43tQjSuqlbZhHgZk61H+sRDRJDR+LQ5vekQuE3Nd2L5M4MBuUUNjWo3v51N + 9oTHPil1WO52Ue1YNrJ0LQev9GlUMWsVUXPeXFfpl2SANDAljTi9qHcbQZS3NsD+ + dw+z/0wdEfbxKl9XYGeaqJXfsE+yaq7aT26KVTIiIcdjde5R5seKSei2pDal+JmF + vdnNARXz1kTI5TAe1jnLVNOOaEhXzsSG2zsuK18al3CtzrCipDsltS2WlQvvWxP6 + NuW14EdOKHfS1QmcguD4/kHKKfFrDtZbVOyrQ1nDeawckpo5aKsVEbtAikn3KA8V + os6IEstXK3Dmo9Vau3jlwbVUHsyIRQ2mn3MrC5rYHZvffsZNy0FdQVNXGZcCJWKY + okIMDR7hKRgxpz7+vLr5fwIxEhvZFEvI+7paVwzPhi26O9Ts236oGxmK4AN8VDFY + 0IyfTcVAhUNE+2KbFcIkbzTn6V0MzCDeHrSP/MdZHzFDjV3DJRKp4wqolO1VevCL + zqgOMy9RMM4bblQ0hk9Y7trzLr/HkOL1izh0lSL95UBou+ZZrxWU/ysbCs2dFMHS + XAEFZeMyAIQ/6GXXaQiNRgyIvzCGkTRDuBM64Z/kzOh8NRmxEAnMkYKdW60sO5LF + oNAT1uX2C0iFI8L3gRf6G5KwIizV9Dr2nmNL44oRcyyUYN0JYJgd+17EFpEN + =GCy7 -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:33:38Z" + - created_at: "2026-03-05T19:18:30Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqARAAgxEhHogFELMP6i+BwHHLAk1JdsgIyvn98923+J8GXAKf - cu38waUTCJRRw1vxvBYRXEhaDuFZtiOhd9K63rbg7x9nOIsD4Wu66AcBymEyozpw - 6rdEReWZ0Nl6IwGzkJtnKSJJEwhjpkLQ0a3lnUrrDgil23rm8rVoyl9A/4VlXfog - kzQvY3jFYS2nJTexWZyRIATJRyuAxukFDE2p7Cqz0mBhb9kz+J9/Z1t+PKZzcM7W - KxkPreJaLDWH+yrLH1WVWhO3TN0KiRAIZYxu3ZPteI497wdrJTNnDj3MqyvgNO+b - eaK/uEZQPo1AjsQp4VpAQyJ9TYwj2QErWU/jYh7qOAYy9+wexnWFSQP9Z+38NY87 - vQiXS/iG+c13Vhrop4vesnvI7MQy1pX4kxjRvIuBA5g/u7bwcc31gnCkTjghYDRf - 5REdwYQvmTMNWSoFbgAEX4Qg15pbox4lVmBz6V3OMqFeZE0ByQGAWHBo1l4vsoBL - 0hgbFvCUGZnwqyLzCGx7LiP5o/rLajGEICugxP9Oo2kwskCO+WLWS6XKfN8Qz3UW - rn/iA8L/zpJkP1h9Jn6RN0A9/mpGIwTQLJyf8v4I81H2CajYeSBvpAXjftCPHFPP - UL1moX/u+xv+jnlzHXnCjXF1WV126wjQWTyABQ858B4NeI98LQUZrPR+qpxsEDvS - XAFvgppwDFoCX4Ll0ntljd4T4id2s1LPzLjX728tEdx8rP2vx9xdjY96wUz1G3uw - gjyHgYbylb4oslyQDO7e/nwGxxVcnanM9WqFluealwWHI+LPV7BJmpIgDufb - =WSze + hQIMA46L6MuPqfJqAQ/+KEqcE+Q9nQz/VLw6gp/NlOT/85ibi2XEtj74EdxkT5pc + uRTm/AwIXP3+SfDN88nqImgo53XKH60moPCmp8HTjcV5sgNF3hl2mAiasBBi9I6j + WeOGOPFpKw7uPL8CpLXR6q314aDS1cgxR8qlpMo52wsmIU7VIIEtCNrS5uwHycpi + suiJqYgfzQdkbjnzkvmsQnP7GQZHl6u1AHlT6vCrrGifhytOMBWYgUB3PDmrZJce + AdvoXwzoYXwSuOaSGBRRF5BjO0ascS1U/1WTihVpewSximqU2/5VzSE2a4lquiTl + pzN9bx+QHT9e0dTaw53rIpXsYJD6vI2q8RRpBabnBdmjG/E1KjTXc7X3nnoutUaK + moVHI0zyalbZXeEEFl7IT616OKfxKIB/fiBKJbc9uaNSlGOyGxU0GBAS6hr82SlN + s2GNO670+EpFFLz86LYoDlyiKiComfFN8M1B1ukfMfMNvgL6JBbz9KKUwFTwPwgb + GRVVf0G7R0/W2CtO+tEB0EGeK2zXtPgjCPdNoumO/3FKYi+tyis0pJV3nimsq6gW + AlLlBMyfKUZ/UGGlun8LcCwzt0EQDLTTqfZ9PbXEKuEXIwKi9mzVa1rIVQ47XF4k + JRQ/eCZtLXkSyqY5TjlhB5cVxmbZllyzdwjlSoviDiW8WgsWESL9W5SQCkHecP/S + XAHn4WfslN+4/l2zw9X5fM9Jk5KPZjrzWij2JUTopiYyrPNSYdd/rkx8KUlRnFzs + j2NzCPNmBpniEltlhTkKiNttkcKo2m6vC6ozCZQYJeuPJn0OxhVLPWSdynL2 + =ltO+ -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:33:38Z" + - created_at: "2026-03-05T19:18:30Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdArQzO5PUJ0vR+M9kBwUKXMh5rdwDiOip4YangtTdezw8w - JkYXca5r6ngiEpHVHMe9ljdjsCv/qTTSpXJd7j5VMFnnGBorzTSY+www56WikddC - 0lwBIvZnMH8mBQCtqjKyFQzXp/JPC77s4562rWeuxdYxViwWSOirccn6CgkCwdtK - 52e8cnJNvGwoZO5dEm31W9GBxOcqP07kAWNBHehO/CFL1XoORqIIATo+P6XeSw== - =dzJ7 + hF4DQrf1tCqiJxoSAQdA41zUlPSrEorz6Nq8hkV/niNTk1oNrf0SdGtJUrcqRCYw + l72K4GoknDXUT1JG9qebI4Pw8n39gTVUPnJKDLDO3bLZZ0S7erLRS51B8dy/MOvO + 0lwBGZBl2wCp18oJeUxhZOEFX4ps21aynY+0JFLPldmlnY0Qh6lgAmejSL4Zl0H/ + mM/5sAv2mLJi+tk9GkEkb2NynbilVwVoJQwtFvs/eGjFQfQl+nLQAvcNATD5rg== + =VYDV -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:33:38Z" + - created_at: "2026-03-05T19:18:30Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAKlF+FawcutBbzQFF4mnd4Mg8vIbRwnrW/1P3ml3n1TQw - JxJWJkYAXFCjqHoPO3N+Yl73ZYa8He96/KpwPcUg7vtZchBIf1cXQUDycNlKDzCx - 0lYBQMUUt+rO1cRrkIhoS1fNjxAAGN1VreTppC6WCoyLKxa1mIpIZ2sy8J99gGOs - 45G3bS6CdqBvBtRDYIEFLxJX/QfEowZxtL1LW5As6wFoKqRn0kGu1Q== - =Zn6Z + hF4DzAGzViGx4qcSAQdAb7Yi5/Z+3A5sWQYLg2lYWznUPQAI13G+R+0l9dijtiww + wmoapl5XrL/Jtz5wYQzul9Ojuy0dorQJRxEVoyEtzA/TTgwPSbLINeKV/5SSUqVA + 0lYB6XCa/YqaFykCQX6WpxN3o1Zxq+d9PhZDiDoFUemZn4NpaXzJ3Qqy1w/xn/fU + FmT15KclttOc1pYwCab4YZdjoacm1o+8U+OLEXVEGo3h+LiLYXQ8hQ== + =9stB -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:33:38Z" + - created_at: "2026-03-05T19:18:30Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+ARAAmFy7tx+cVV66xnoT3PIO6cyxuSCy4com9O024K1G2/A6 - 1LkWxuY5Lr9HhyvhSZUlwL9HVmIWRFjC8bTAK/hJja3bG/ZtFc/cYNr0JsBnorJV - JJvOoH0gBAd3kH0jb+LGHiOA3NA18J3VurFU3kwPPGShMdn5DPtJGpPBZ7w2MfJv - YJ2WBRoaqftdreTzGALhjdnDz9bqQOUnYPYUpckgoxPdITnn7mh80hMJHgv6eTk4 - 0auh0hDjWuUM/32b/KYFrh3tAjXWMQooEcTHx9GiRCCS+48Qw6tGMl0NU4CGAWcw - b2ZgjeyfqyJeKDtIis75GUx5c80TUwSkCk5ec7EDM7gnRYDtVzHlxNIMjJ0L/3J0 - tFrcBl27hZTVEipcV1HUFmA+juDcm3beB2solaQr1HLqkseiFiYWCiCmdEdwazDO - cGhmDCyaN4J4XC/cJnoJ+uabbaHQ0OX9Z0GtmNdZaQJzWU4ctrPdz3NoJ8qcm1Im - 4Q9IxHNwsQbiNCYc3m3q4mF+haRddUIMEKd4NOjJa6Vts/2gD9uqexC2NZdN60zs - ql8oZcySv3oRjRyzXMKMRbilWr7+acHy6D4Ii/kdRrt6lpH/jOIP2HjEkNusL131 - K9byST15AjcGPd1T9DyzKNN+0bKTMehN/xEBCzDxhD0IrENvuUqSBLrAmP/em0nU - ZgEJAhAPu9+3PutxPXxuJ+MzMk1bziUPHvirpgGYQKHgbCNAjpfztSKDHiEWd1uU - yIzVHIPDqKsqpBwH8s3vNRiN8sq0hSn1Elt04gc+3luFteukjup+yeAQYVUPj1nc - x8B5BpHbLw== - =bCAe + hQIMA2pVdGTIrZI+ARAAwRRfB0ji38BcxAdBVlI9a2ELkWrYIKtz0D0IYD7bjkyD + o+6u9/FLxt0IJ2MPtCg3VAS7o1HPf4HhAs2H/La1ZDh/dYLJk/IWElCzOXRLKHdv + 87/93ZzOc8RcjqRK84ynsLYiPNH/fVsEJfT9xhDha6O2iyKG5s1+oWkO1TF6UY/B + 0Qt0SCvnC5kYn/RP3O/MMIFyjp45h1kK1p/nuhaILPomGl+fJwvBNwtOyulJup1E + DHTL0LJk71bGw2ipcUTUk3hepUbUOerjqtGw+ZsHWA6Q+uOfFH1W8EjmWUjwKfeJ + C0Ec98uyBA27nylode5rYwDpBO5utzE+sZmyV9i9DiOHFbLJCOf49WeNSj9If4ks + iS64EtFlMhsWk2sXNUoCVNXK1ealQmV186ZptOGb0i0RrIc+9dsymQX7nqwhRfDn + Cwm0Fut7PIKXDuLw8H41auLweXhRofrgqpFG5vYMTWwOIB4/rGUmiRxf/8tfdwVS + njZw8zE7IB+MW4JZJa0hf7NPJUdm5QnBpraKZVibau/l+awxRC5Edb5nGCRbrR6q + xyrXR/cygQoLpk8vjYIITblD4+upvA36R3yMJWi6rMDS93PM+gzQ2UFzdHxf+kRJ + 5b4pWyysRokalfTtA/fJwFdislAVGZWTsuyD5dnGe+Z6nVlmvOpa7ggjb4hD0PfS + XAFRNNTT0uLlzRICtLLbW+D4h5b1W8Sb3g6ascOBOnHY7yQ/FdmujoTivNbcA7YY + mi/MTOSGIMamxteFHCOFk3bkW/sDhYiM76lFi7OMKw/qeuO+D9NuhjGleHCE + =PSI9 -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:30Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdA3xjPTTUlqGYrPJulg5/i4Qc79OfEOSQoamBZ+jlVDE0w + Uqu0tlVMf7Ijebx9l7AtIs9n/K1uHDibV77IWIAKf/b1N26zxESgV/PWN/czfBDo + 0lwBv1wNDmSx7owGZuZKSiaNFILZ3D8SDOZeoWuH3ywjYMbl6R2sMx+fXC77Fl3y + xcEtfD18zO/pCFIWd+LQJpIjvjkzf34j7RDR9xHgWZKRslUsZB0IWj7rReG6rg== + =wTno + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/mjolnir.sops.yaml b/inventories/chaosknoten/host_vars/mjolnir.sops.yaml index 16a5f66d5..d24a88046 100644 --- a/inventories/chaosknoten/host_vars/mjolnir.sops.yaml +++ b/inventories/chaosknoten/host_vars/mjolnir.sops.yaml @@ -5,204 +5,213 @@ sops: - recipient: age1hv7m3xypesdfm0dfzwgctde8v307g9xaunnfu2687y0lagcs5q7s3eg0kj enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBXbTQwWWpmbm93dVorbjZI - SUhIYUxQTHByTDFUNlFPT1ltZGRZN0xyaGd3CmY0ZktmenAxM0ZLcUl0SHhrYzgw - eklmTkVmT3JVOUJFaVRzUVJXVjZhWDQKLS0tIFFHWHpXTVFzZTV6R2YzcnJ4SnVm - V3BBbHBaKzVNWGcra2NWV1ZZL25GczQKQaDJb/RZQyonx54390QzNqFLexBmpVdi - s1lcewMRgpCgs47gecT/xSTVUpR0tRQNusDR+PwcsDYj0Nsh+XBetg== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBrZUtyaTBVYmNqQlRteTRY + Z0tTWG1uMFdhR05TUVk3VGdma1pkYlpTa0RzCjdvWnFWQyszRGlQT1NlWjJaa0lV + Q2VYWGluOTJwRHJpSTQvdnh5VVV2N3cKLS0tIHJYb0lRZFhnYmp0K1VzS1dLUnI0 + bTF1YVBGdkhTTDVjb2Z3K2xvNEQ1b0UKy9jTjkvERRtDzGP88WN6XoXsI+R4l5xn + hL7JPwO5kUI0GFkWkTzHlnXhINrDLKYJ+v2BZ9/U7PuyCw1+Mc+dQw== -----END AGE ENCRYPTED FILE----- lastmodified: "2026-02-11T01:05:26Z" mac: ENC[AES256_GCM,data:7DdCLStFif0EhqsgthwZD50v+FPa1drUmBKUhmWw9FKtCBKmNM5LbCI5TvKGJqq8gtKiMUKpOf/pA/8qGNavfl8MdRrhm9inlkHgkwgLQwAx7/ds8uHexVBjG2gV+hMPtoNCnGRkQRHwrepz/7L6Y5L5UUhWHEUEhMuxrejzNBY=,iv:SpziMsqQ34/hAH1HkbGjqG4ZyZybcWE9Xp5xWkPADGA=,tag:eYWlsKj+OPMcpU1u1Caavg==,type:str] pgp: - - created_at: "2026-02-18T08:33:07Z" + - created_at: "2026-03-05T19:18:24Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ/+LcnC4UVHkg0H1MbuuvUcuSQmyP9TC3+nwyhoJiOcYDaS - JDzkYhTh2gyglOAfSL1n4RUTJSWY/d5O22gIkoZU0JGfqP9L74eN7/bOt9LJTOdL - erSgN2CFx6MauKgFixPIeAcnPEAJ3eBUAX1lKn3YFcL4W4Bx+rqMgdtmQqRUwDkb - J/116d+JUscbyOEIE3ted0dqdKPtPt+/NEaQMHxiUZqo0T2iYieCz4BK9rEW2lx1 - Bqfo5c5o9E4QduC/ROi7JlOwYcbMZKIcjEjGGdEtX0TTOj+4fFygvUkz8gYHAGBG - C1b8j615VhvYlOPNttYOQfvxHNl98KgO8hYm+hOPhLyBrYFlE6nhRENBWoskoj/v - FlZqYtdldicR+ctfe7eQYQu4gQNfjPGlGYfpV9ty20JjhmiQa3PRFcbVQ9qk1Vpv - 1q5BRfJNsMBaXSf20LfGkQDjvj3BmrIogKhc4KoRekpv7lDNVUlcgjO2nQng9Cr8 - 2MCvGiQ+7l52BZwBy8eowwWB5uKjS4ZrnEkhMkmoERr+3HkN9Kx3rRgV/zZJklBD - RmuLVs6E+1vWLz9BOharDiHv/VTTmESZSZFQaETjCDZ3vQB2N5csKSjO3pyCJDvh - w1G0Q3gbsPtg08FlA64R8WhRRbFejSgg/vGlGbgG/VUajM8qFi0YcAI/SmRsEg/U - ZgEJAhDYyg+OtwSALFFX1/qmX92I4fFTfaJbBdcb6B81vTZv0XlHBX3OOtZzKnD6 - YGtqhEkEm87R1dTmDFWwKAX2d8DB81C05LYgOt277ABH1dSL82karbDBOFY7MoIe - 2k+icdXXbw== - =YKPq + hQIMAxK/JaB2/SdtAQ//eUbXE2d0nZSmiAAwghCRhPb4DQAuyXaFuL5Xop1A5J4c + qaWokOZ0ZxVximAumASUDFoAZgaV8I++B4Yz/EgAhGGR54CkVzW/Piy05/H8aXdp + 3yJSsfSxU202oKvx1EC0Jd3jSN3MZ4kVqgfyhvYc13Dpy1YfPnBgy40iLq4qUWT/ + G9OrVIYm1IYq2buKPpAyySWJwWnXIM1bZZ8RAzSHP1ryUu8NuJ+FPuhjuM+iodvc + DP3wZv6JixOf9vjP6xBpJ0u89EBsm8oHVJt0Gm/JIPUJsZk0Wc08pC76COkaRx7O + bcZJ2iQPZqUmoTqoCMb4uUsk1zE+nya7/SgIX8HKUjgu6XGc/yNT3azv2E9i1yCW + d0nlR7ypVItfGcn9dC9y3Pqr0d2Utajj3RLz1iRKqDa2XKrptNuPK4O3R1TFitRs + 77bpbcZ6h2F7lUb8LR13wSQMuJy/wvW0QW/7xQbKUNmQF7HkvGZqoVGllaULQkso + I41qcTyp5fdtEPcQyRZ9+WqBnuS3euXplcY/VRO4J1jp3j4wvoCtR4ZC84PfhVlI + E50ag8xjJvzsykqTTO6dLCbgGrr1frfikNNxZ8MaYkFWceVbuO8Kiuz69llV/qoA + NOqQ1CI18XkbtH1yTwnbJIQWY048Fe86DXDKHVWPHPPp6aqtXuYCpGEIRfk9XT3S + XAEAWr+IWa1j4XOPQo1pa//h80PSN5LqJid16ELnlfYexQ0UXWF67hPKhJu1DSsA + u5cSYrThMAo/HmASg/hIQHisY6M9stXC1ill5ec10+Yx0xOnEUc7mPE2rfnq + =IxU6 -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:33:07Z" + - created_at: "2026-03-05T19:18:24Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf9Gsyne3vFzNg0jPT/+mYusUUCURirfgI8yuvBPmxmSe7K - tACAb5I8tGTENVAJSUPOclLZPaXpksf96IMqOd41U/RjqFko5lzuzFshqZ0ddKuC - bRvMPMDtU3vxTbG/QRy0ECrqtDH46pWc8ylS3CSG4n3GPibRWw5UST0ZRVtXpsYM - KGHVp0ogaRXGg/W1FMtC2B6FuQK55y8vMSXtlBkgQDtMG2VLLVB3jLari8q8i+s0 - BZ12Se1IwHPlVtf0obf/ErpPnrpE3uA6BFzuvzoIGgkHNOVqjqvrx5JPoCtEtPdY - BlLOzMel4OLkOkrx1j+DbCi0krbuG4nJ0/0iaW0mHdJcARBOI3KEa3Ge/7XLs9BQ - YDNS3E/r6n7e5UCFW7JqxsPRik9gKe/BxNqaerAaWDmPzifU12ZcYMfup4FMPSXV - FAVHjlHxFiOczWPTEuWrdfUbyWAALuV7p0tsHoc= - =sbK8 + hQEMA1QflAioE8i3AQf/dNr3jH56xMi0JZLLV00sZ9Ftwq3mj3vkMRVxsmhjjaRX + ocCK++iPzNC2kcs8xabzAq6hRWpj+jZ4vWTBchEDSfGI8dZYNa8/q6XaYp5Y3RMV + NrWriTkLDg2hot8Bly9epZLpzTvNnnV4nYwsYU3BdCISGnNTd9z0ZMcMn4qv6FeC + W8P5Ind6OxIGd+Q+/Qi6MOJM6r10TyfLmzIHeyHNPYUgriWprGg6sTjrw5GRjelo + qQpOUDxAAwN4xmKmXXcH4zNCnVV2u8qt6o0hwoW9ekHp5kx9AurjVES8vBKkZsah + MxCYJUxdVITdEet9yUKlud49jzI5ijYzmeFx8icBAdJcAeObOL2jutz74k8t6oqf + bCl18hOaO6a7Htsz5ygBcas5ajG9BOl3HoX/grAtRELzu+xd/FWXJ+T8ePTquuMl + LysIsh8nAYFitMv4lQ1inzOo++dADEq8I1w1h4g= + =aFPy -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:33:07Z" + - created_at: "2026-03-05T19:18:24Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ//SgoMhzIqUvgxWVilaKPaQ8Ly4UEvBfDgpyL6k2uqllKC - QFkY0iHhtprsbDFj7Rgo/6gUfJ+1jH58aQNi3hVZj9kbsbYPDaAKMDCxycb5zfsl - klwxPAiXUQ0LRXFJMj5k5h5YO5oQwoBlGXjXdgj8FuRRXkKpa7Xo6/2utTTIyIHb - JaZvUQi2+NyzAojmcPzwT+u8I/NiDH/EHHwdi+3lBo1d1K++2rquX/6w5zp+N9lC - ocWl0NEazmGJwI1ZpYCZviFTG36e7z32bwj4YRBHFKFdJGs8W+mMS42WnLt8DfsT - GoHqJmac6xiYgrF5sdKn42kx4qAIB7ZvO3dC33xflT2RZFHP1gElvy1kUN08849m - F6MQ+YpeUuOD9JJWix5knv5F0qKQzBk8fS7ox+I+28eywR+ay1/6Ha5NYWHsenxu - cfD2Bq47UxltdswqwG25Iivjdp4nQAZBzwhDB7dLci4Joqw6+LAV96bofA2nliIy - M1sceW7HUy/fIvAk3iymLmYOzBDCT4Y8+Sg9av2DEu53L80B+b+UbUz1/mj2VNqN - jIi6tbkoU8VYqJUfe9TqmPYB/bIFFFLa8/iS6p//GQw3yBe4F8RdftcAT2aJCaCe - rzgY+mlu0T6LaB2Av3CQE5nPlGKzr0iL0UoQT8X/qIqLnh1GcA09gAgPf3P+axbS - XAHjLx17Fcxm2XpKQxQ3Lf13fOJ45C9a/mBlMomcGzQt/isSJ58/8+127YAOPNTj - eMqbXs1DxTa4USPYYjzh7/Ta0ckXBDJbxA0vDiTcOFHrc3dj2F/yvjS84PV3 - =67l4 + hQIMAz5uSgHG2iMJAQ/+L8T/Y4VaOPIbD30e9u9ePGCu3Qy/ASVSLVmJg5MwY27y + ptv1PUGTwitu0psx0E+Y+Z5XUCOcio7aveGfLnaZeHjd64h2YpAbCWT8PRN0vhU7 + wGvBvs/qVzpSRj5LLTxqPXtfcuxDmG14YIyq6me8w8gxARBi/0uxZshenFAkoURJ + 6+yS424rSchP2RtB6Unrpvbk21olHj4WLa/AL9zgsWQaRm5lalK28xm8hPYyGLk2 + BCydFlBccCAtwRrE7WEIBjJ8mXi0w9cMf/qC986Zy/c8xvd6nPxV4rme0tRzb1fk + A+4F9vTE9k9kdf2s8xOiZBXxzCz+GzKXD/lABH0XpAN10Qyaismf6hM+QhjQu4gB + hh5BZ3MIk9+VyIHs1GlGj9FclnY6JooUNEur1MeX4C9NpZR9rqdFfNb4bQd8Fi6N + CkPAeGap+e3wtczYrbiBmMAy/Lqg5fqItuX953Dk/BHG/vh4SvHbHrbfWsmc3v9Q + UogNcnlcfcc7ajpDr7FWfBEhIbvDeVrEYHCc+z6JhSzcmjDXWwbZ0DQr0No+ec2H + 32SP02kRKNHvkC4au0yBKwsIUkhzr4TdPtArRTlVwyVMaqqA3OywYq/I/4dMMWUU + 07vdpVbQYguMwM/8EoCfwCmenoUp9H+Quhdc5TeYuArkgNBmIwJqsn7ZOoXfnpDS + XAEO3XGwcgkhzJyhrIuaPhFjnovUOCpY6lE1oNqc+BFutOmXLI4/ct5oYwFwIOGC + /unNRBTOhUhf606ACYz/j4EKwbCdu3nrQZCXCTOe+TFQj7fRk3pwKOWZngML + =a77b -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:33:07Z" + - created_at: "2026-03-05T19:18:24Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1ARAAkQhPsZ3dLMrXkMDTDTvfmXeib2r1eibhV3nkW4sHBxwH - 95GUp8ePk9o2vY2DJrCbxnkfnrvWYnvDhxXUMeW6IO0dNqZElfVT+A+5RKv0hbP1 - xLIORuv/VtxbvmZQhI9uuEVYyxigyMzpJY2D+I5XkwNJUa18SnnCVkmbOnnuMMo6 - s5er9qg5xdUvAKPxiUK4peqDpIvDqkjKInA8zfvmCCxgfSr3bnlC+l4P+95o+SV6 - KlqOP1yxzI3QG1nNFOUeQAEyAFITHEXIhZCSlEIAJCx2ypYK2SWps5SvUilQBKSs - niJxGzI8gnhGeDKa+e/c2KRDLP+B7ltMuw21Ga1ZPNWpwJMrHb6UtdIaWJDODJ9R - i3jHfpEpAGk6ISXRjRbpLexlcDeVtqBdaaPOQckr7gpZQRPe8pTzpFfeMykDdAq0 - AGfZtfbyyl4l4llBomRTn4oYtQLXPr/hpM1fUt0lvknK5cjBjkqxtNdICyoGPvup - V+JawRM0OC25mWkukNlFUOjOaHft5ataqQl/NuBHCG82umJROrdjn+ogbbC8Q3nj - HUmG7V2+eyalaj7/X9dJhljNIpnx9COFXpt/SR/udgJTR+IRW2eHMj5WQoUPg48N - oBA3TUnnsyho2lbn3eY1ajdUQwUAW5Mgzl/0mZYCreR6t+lYSdm31AP7AOPvegXS - XAECWis4SbOQIUa+o65M9a8H7b4Q/BS/k/I1CSy4dWTs4T/d75zIHC6H40rVGfv5 - SXUXwofncCwma22VfJaRxFbbQXyRPh3vqWOmatJGphTqLmgiTP1aaXoMcobt - =1ZR8 + hQIMAw5vwmoEJHQ1ARAAg9C4drspG6P3f9n0xTqp5K17eHQCTB/s/lONroG+/PRX + 2iwhH0YWdhTgw5rQwupyyYMx9Qkell/V2ExyjQDESzGZ7xr3umawESo9Ozv11qGU + HD+FKTq/1+oI01DgCnd7HTnZFMky9jQD0Rl2I0xTdevjDmU6p3G3F6E00kvFlh26 + cqrI9c6YikY9zubikrea3JiRvHHw8F5Lv5hO1hAfqU/yMZxxvv3KQ+RJSR6R4Azz + yV/Vr3f48Oks6SjNv9fWnb/fc3CZ3R5QMjGnEtgDiKJ7sx+gUnBQczFkDmSSk0Yd + jQCMfaXEzOn9VFi3MqcpiaMbCDKAhSfTrVIii0ydkPDKf3AbKQpATuQC0Wv63UtB + ALtIIVSRGJfW1uhh367/K7TnOMhi/PoHFK53wO7/rs75mat+AHY1hx1JOQR+A3vG + /lNIYGaxSz2uYNKqgdA551Ps7hoYHayzNSF+hMfrKUFk3grhB6rOMfX5w+eWm9oa + 25expOfoaOw7hsxxxFso3jnz68XTKIh0LRSth7fuaXCmVBD79pe4b/PE2VwRcQ09 + 8iVkjt4SmPxNS30hygwML+WZuLNffq0u0UasJbFAXUuIHfr/+WaCB20PyoGevpFJ + 8xu5SSAbTUF09lTldkxrknBIfmtS6dtGzrKUGi2vJ9q4fuIdCtjux/i+5TSGZGLS + XAENBmPQoYIxF+YcsLOaqhl+X0Taqq/9GIX0VWpHnzEPY5BYTPqDQS3lGHS1OO4Z + 4KSdl8ZDu7rdZ1ScKjPhbM66E3kuw+T2pt36fpHhtjw3UHekXQ/i2PV4Yqwh + =YRNs -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:33:07Z" + - created_at: "2026-03-05T19:18:24Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAc5wiovBiNZoO3ieBZjeUVZ3jn+NHuWgLr2RnLt1WfFEw - k5NPo+Nx135L112ROb/1yY8zSirFX9PmnEhBGnnqgDas8WcafzcqcxYEfeSFbIdg - 0lwBEuBYjzS9C1TjM2pJQTZaOeSDQT6lmBxAW0/gTCNqufIwO3b+v3mFHJ/rYTSb - 9AdhCOZMP5H/RXSv32fjbKXKOS9kgdKggNtGUu6MDr/t1nD3tm1H78aY3QCbDw== - =rkV2 + hF4DerEtaFuTeewSAQdAZOSDC0waDvLXCjhIXIpf2UFQ5+M0bJnEn/TVAHRiQUsw + kSuYQ8MljpdW9klLqx0yTcVwqmqJhv70IRjWTriazvaWdKLHr/NsI2gd3jOaxJLv + 0lwBR+dmS/aiwaUXqYJpmauOxcc7CiNEAM4I2So+MJuOsxEtvxRXpUbALIh+603p + UXwt8Par4X/lEgZVJ02AdANRv5xPMyq/YvAX01+MfGx8zZoMk/z3AdsmtQ0h3A== + =II4/ -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:33:07Z" + - created_at: "2026-03-05T19:18:24Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ/9HCZgETJaJhdw96HFCkxHP4BXV9cGJp0JJqQh5+w18rwC - L6xA3qDMGcyTsbMaQoSFvmHz0a0HSQbodw5ZYNvxYncelACGA3V++zAYULpR3pds - YVkc1CDx+Eu8UVGVqYGHiT26cjIAA6aXvn7JdqYxVcH9xCv0qn9n3Pxdz162/Ipk - HAEElb8BTlgaKgJxRd590i0v7jmtdSmOMiNZVOAhFgjoivoCyxY20OKSGT8f0Php - 65WEMCf/MBcwNDCB9rmvczqc9Av9EPS1U8rl5wP7h8QE5En4fV9VLU7unKHCK3LQ - Gfd6Gt3dMcMtDIN5cxmVGizblbcVNqOcC42FVZ57Dtq2gSYvqrlD7Uh7q6+DnPeK - rZPC9VAfwaKxtfnuyD5nwAkKbNh++lq0Apsb9IYLQt/3nHK5JK/CPmlanISHCD28 - /UNy45zfjMvA0pjrX7Pm6i6OWsgQ6K5aE8s8ZCb0iPf4GXHEG56GZrURAMbtP1su - aK3y8Lr+U+t9ibfj21Cv5/R4LDWE2BS569pz7aZyCAipYs7Iw3VYQVsjGh6LhCob - Z4Q3uEKqTg9s4QgwY6e6xBL2nWKnD89OO1xobfDWTQXpsotMkXkq7ewt1b94Bwix - +6yIJ6TLka303lj7nFB9mTubc/A4EbBKJSLx0aay94+890HaQ3M+jAMMBdnhkSvS - XAH1OKg+mzDSukaYuMD034GszCqvkkkU4sh4euHppG0RtvJUCoj+sKpvtX14XCR0 - csjRVZZjuYgPrxUvFfz+C9mIJtZqBDQbpyABbfDY7fXrKfXBrBOqRTTA8s6L - =QFfb + hQIMAxjNhCKPP69fAQ//dYtxt9FIvhcvL+Xy9A/JamlKwQAm476JPDRmjHQqqeDW + dtQiWCu8ff4mgNW2Y1ANJBuKqrdXFoO8hBZY2H/FCxQRJVQErlAtVol7rqMaByc0 + GWsjUlGoUfQAJV9YEiO1l3koCUhVjaKRXbWSuf0b9So7/dmXfS3g34rTwaRv0yaY + 10WeFkwawdTY0hY1eS+AzRzNqrcWXWHVHE0Kha/iriqbtxLJXpq7OxRTmLXI9ye6 + HyuHKbgvsiMkJgzxLxw43Rtpa3edRGDJDu5LOT2p/PFlusXhYfkcBp+NvZQvn8IW + 81kdgjAjERAioTT4CRk+GZ3KHNSUn7b00sGxTpuri/GpejOk7EJxygao5pj0Eroc + ZCGmp/1IHtYvVdr0Nn9kQ+Ji54GQQb1TbVEOR/49pv8HGj7Vl7xdY7bdJBrGn7k0 + x9vNWtF3VDo8+AJRZZGmlnLpZMwc0RzAes8jw6b9QVuLpVTKXl0TBeXO1FGCycer + KdqV3grCmaqGxAqRhnzzYZEBeWnU0usURqGOw6PHrDhHI7IM1Ap6a2ZLGmoVb4gF + lRURR8P4HfQL3pevFU5NxZ/KOAfiupwmUYrvq6Fl6JKfUS9cRZjZvzzikIEDf+c8 + nyd5jaTXNShFadwLIA9/iW8c6LNuZ7HnWV4FQ/knnSWLHYOc7d8PLwLnW9mdO67S + XAHDc9axe290R4r63vuLlSwo2ikSj2Uc/hcOhj8rkPfK13PlACmzUdMZyQnRK3AK + reIMY3alrhVpHat8K1fHXmXQQSiSMXGaCIM91KjoCfRR/VvQmIHjjsyDpv0p + =joaB -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:33:07Z" + - created_at: "2026-03-05T19:18:24Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ/+OZ8bEWt1CCuZDXWVmOhIcFTe4zkzPClAQpPiw7p9zOeX - 87RVS5vEuE6V4zbC+9x6HqQEe+q0TuAokVl1W0PFRC4XwFDnjWdjHKaWki6jtFCf - akHJC3IXP5hwplNLSmkmVcQknOQB4tkYLchHdkZH4hQDNe5n3UsxlPm84ioU/JJ3 - jGTV16KEZyzOQO7Rm60ks6uvKG96pM6sEDJwEU2O7b1Ogr8m4pSzo/szI7mYFhRU - K1tbdXfY2Ol3QuTbQttqtocs5b6pj5eG+tuuffWK19LSbRu0dUPr2vMAV3PLXQ+0 - +7cON0Nl7r9Zpd/fnKjQg2W6Wnejx+eve/zOa16/vHSzhkUONfrzvyBouPNaVR0G - a7CGiex3teeBQ7emzyl/5Po+bzFmdNCDUGHT4qPIAJ/l3lcIBKkcTv4xf55pzazy - gpcBmrMyIj51maXEf42aBtrx0tf5yzoPaKtntyqROBCJ2jiV2vTckHid+PJ1aQnb - 9jZFPk4624LRQgMFmHD3e+eLkq8924eXdLRjq3MlncKM9VwFhzMxfyEVl8ZRA6bI - YtNecj25wNS85HfbtaQ7GPy0ZzEjkMUfBVOQZasxTnDEftCoMfnR+KfkwkhreheZ - R8lXApQsLR7Q4yg76npfaWvPMPQjAA6XtKMn8txMgNYCNUC6Xx0YB3go7VVRtZTS - XAG/Bg4yxzdZDHZa69mBt5ZH41vvCt5U9V/l5hnUfB0x3XAQxq8pyfegFZT97ZR9 - /uBScr4r2MSlrFhcG3oUbL5Z+XcpgEwAInHlerzQ+/LZ7FuDIxWdgbaM/4sa - =ZDda + hQIMA1Hthzn+T1OoAQ//WbhAIQJPNo5e83loobz4MEhhECgW6OIdSlWHWomXdrf3 + XJGJZQkA8vVj5uobQ9MknjJ0tEEwPhBIlayzSi2viJE0hksgaQ/Bm1gA6BqWjq14 + +wW2cc8tJs0atHC/wi3EObLVg9ddsHP5h8/oNzwg50pex/cQJqqa+fiX5/BrbhEG + 05YFJ5aSYmf8E/k1ODkUivuOO8S9Zmwx2KXEcgug90DEaqUPxBdGW/0YMJvP3uqX + eHdYnwBhO+YfeqmMvK2iMUa9OJfrAogFtlRtR3HXuQlbP3sNTCTMss1CF28jO6/J + GA2IWmif6Qh9potUUC+ApIA5mEwFGuNROssl8tTJSLAieKIs+8YGjPBlEqzShLP1 + jtz8/t1nG3YXAJw6ikQRwXh6q3H5vmrSpnLg538uRTTwYaI37Jn3qKaCqOGkN8mQ + cGE9GfuMQBOGYWkF7kzbGKYMOkmUoGRAn9p2Hy+0MQcOlPT6WeQR9iPfl/nebtl5 + 2+orHReHIYOxD8Ze4w0BJPR7w13WnGp1FYuvHfMElW+NlygyiQ3x0tB7Fw2WO5C+ + EhmiF307qyzPdmu9w6Cu21GnvjG9fN3220pTsRPdcI/20Oi4wCSDHn9csp1t04gE + JyVgct4fwcf4YWUHkXvxDmXiNqIILG0zm2ooq8UYx9lyP6kSJiikQrHOhI/n8ZTS + XAFYcVmJ2uaox+db63M5UtLAB89Ewsrw56HML9oVQdiKmxlSa9Hp325Gt7f2gPNS + Fa/g1rtjAtVjhyV9wlLsiCOL1QsYHTdkuEuzhRLBkVoSFjIH/f4lyWvSjHv1 + =STft -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:33:07Z" + - created_at: "2026-03-05T19:18:24Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ/+NjHRxCQYdO5FVeQih+ljxefDXE6f0d7cuRNyXI3L2q9D - i4xDwinpRm3KXH1wAWiHJS0zF2iX60WHMsjXCSQhnBu5fxn3p9+kToaaKN+8qGXE - 1zO9ROBwPwO2JOTAdzOxb5Gs6PL+tD7mX7OyGfsQye2z0X+mW4i4P4MjAqFUPESI - 9/Ke6g1NamMKBjTckremlcreSQ4oEbbcbb9KWifjU3foRNeAatHLRaLg4g643YjY - L1rPKEE4+lKbayNUP8SDBiOTnfkESgIFDl6Ltjwnpf0D1OrxMtoSFFpvEKaXovq5 - jW6ln/A5zQBQHO6V8BkVHWf3NLB0mmv8vpp9Ajq6PJC/7PTYbYdl4zePxu63N9Lf - OBI3QpCRqFX7AEjLxUHK0wLIVjvkgdnhwLL1aCqIihf5rQ8QIpM9oLWaDcktBbLG - sMNhOk3+Dert4cYQK3qgs710UpK7K8Rqe5h1z8R2XfERIzxn86gjzDQrkBkJH/+f - pzzetL0ButlWdf+eShGUTlSzTCMSA7P1xJ5kx7BR8ohE8u5TBJwewr/TXjS0cdd7 - BJpZ5DZvIQyf6xm+7oWcaF+D0Cne3Q/S+vEEfcYtHLuolyGbvZsr0Ta6q42JQcfl - kxZtmSq8koGChbgIEfUgyaP2PZi+F9nFsUEV4NhX/EsRlssdKXI2YXvP/fWg6eHS - XAFuVyD1YZTL8M67UKwRcpdnfcu7vL7xzf7++BpIcihotTCUKBVIxEB1xQjaIN02 - BDhByjPH1GrLSbgOCM3vyOXLXalILQjLmANT8YPCstMCm7T/rHaoGyg5B+UC - =hWXe + hQIMA46L6MuPqfJqARAAi/BZtyRwiOY6IZTAxfjQNPcnqzAhtfygGlpSezEIQiR7 + wZGu6Jd+wldtJs3yLjMKH8i120+dw4NuxYXk6z/4mwTkL54CdyrWQY2JYuILMkC2 + Ij4MbxjMKJtwrt3I9M0GX7NMRf0It+6ABQHV2RtqHzNObpkO71VVJqD9yd7bvbV0 + 5zMtFNHOSJzESrJ0ILdWgavgjNwQtefPMfLlNA3oh0RosnfGq82MuDNAum7cupBf + fTkyQ52NqP8yUgG/B78L3cQKKNId+oqoGuurUZ7+FhiJeaVG1mwtWuCmoaePXB4X + GXaQCHMf+2kkdUGMymXVOvvY+lInSqbTog3Pa8dHqd7lIE95TbxfJsnKcYo+Kc98 + Ao9P7yrQdUvYhTcIXJc40yFzrCSab6/6Vg3Yk64gxysB3Jeufg3LNdCUUWk7ttq7 + bqrBv85W7ht3ZexDG9A5RoEcaO1KO1qCo0SkmaSbRZql5llEod4HJ+AdqmKm1oA1 + OkDGZ0Gs0M7VL0pdFBS1c78kiUkkb4p1dtKGizo6MXlL2TuNljbfK0yct4Dc9Y63 + 3M4gNo8Z7DytuBhUuOVdxegwZWSp8ClFqSbipgUbIXv1LQBNevy3f4VfFS7A5+b3 + Qe8b9AmTT8WPI0CH1mkDYNzAoZ9ESRMD0DUzi3Fs44XWZJmCzJ1WGFiGxzz48pTS + XAFTgscubeO0JofGwYAlJm65OMH+hNxbyGPIcmE6U9evu0NSH3oj3ErJqgB1Xt7O + 6UWkoNikPLYSusMokro4u6zTWZoP40BZclNL9M31zMGYwta687VbbsySzeQ5 + =R0lu -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:33:07Z" + - created_at: "2026-03-05T19:18:24Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAPmxQKi1I1j0H0SavdQRa0smln3cPah7jBHROvfk/90Qw - U/qtX6D+x9yPb7V/07tYqiQyIkNmHbC/n1qweGN9nE8zaUn1xtX/tSusuPj7Z1tL - 0lwBuryLKy91D4je04TkfH7+H6+t7wMhKE+ClWm567i7UAF/NmuGBs5boDE1hUhV - qE64oZh24atLrNJvDyU+/CC/Z0rwkh2heRZBOpe3Lldo9Tmlta2EmzRc5JlYjw== - =ldow + hF4DQrf1tCqiJxoSAQdAjC9R3W4mlCw+x0iawHrRmNLw57m0gLH1Sy1ixUdfDjww + Mu1PKms5/EMTR+IbSoA8KjGD8b+eIMZVgkQ86R5h6HpvLQATyZtwpTutAM15YaHZ + 0lwBnXJwyqLwWFM08A0ssisABCnP1sni5PxRLoDFoyBxo6XA/LiCSUSDqfMLOZP7 + QQpPvcIrAkUlhboiVZFS5SC0uVK25pT+85gOTezx9SyfD3QkwdciOsX2ksYjgA== + =ycwb -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:33:07Z" + - created_at: "2026-03-05T19:18:24Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAOEZrQShMaXMWTbSb8+Xq+fR393MF5cENGlHLA/uN4Bcw - kvbfja/DSVMPUoKFx/cjOlXbP3+8x8QFNs2CNJWC59Juim9qAetRx++J1tP4Sig4 - 0lYBRMhP9mQL870If6r96huvozgCDx4drX4CBCNmRRCajTuk5WB3/LJo1MOdgY/z - gUkLoLHj2CNjIEW4PNVoFG3+ZvX2Chz/nUTuLgjG+LR0m6EHpNSlyg== - =NbxJ + hF4DzAGzViGx4qcSAQdA3r3LnmEu69KbfWHrBJCpz5dHMOGwRqszVOV+vsqn0Wgw + WJMnGi582q4xZuPpF1SymZuHaKiePx7ZwjTPt1zZUUIKY/HsUEF4uD51jUmYot1k + 0lYB2gtWZZ6BIRv0sXwvt9z1Wdx9j+H5JOvmc9X8kaJcZdRKBHX0dsEXv9t01Es6 + LwkGMrYlw6hkrklm7XCxOdZZLgKbxFxIqFf/QCN7y9jkTJNCtWflVw== + =askM -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:33:07Z" + - created_at: "2026-03-05T19:18:24Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+ARAAjzZmTGJiMTFTrLN+VsUgahvsrsTSuljAVF7r0TA3nNZ3 - vzIB0r20N04zOB4m71l/WuVfBxG76RE9fNHpFk6Hc4bpV+8xFjsDo0zDQvqjv/cp - FMdH5gJSZIfn91ryw+RB+Dfvb6Un7EEpryQIXDdJy60xEsWMzRDXHTPHDxCc10wG - kB6SZRXlPjS9B/c0SzsSLaB4CCvgL/QxqTgR+1xTgymvDdWRC/CJDRney3xVZHR9 - eX8eVfAMAp10WbLi012ByC6WkjhpKLS+CgteKgUN6pZqWIK0ksILDYHsbigdn6Vh - /Yt5j5YmJXf04XAzdCJ1jcvnw1D7jfWFZ8A0C1dxiVl8B4bFwbXJLbY7IIac8d7Q - 0Xfq6mgeeD6R9Dwj5oP1Vsj0mYVayw6ylwW+g20PClStiw3ji2Kc0nmMJ3IDzDIb - 64zQzTtG/V/jYfLqVrcyFhBeW5owgg6Y6dAfSdcVEJGThlTdfBwWOxFmi5yiKZ3v - FAcQsVE6rRFEsZ2Ow83OKBaUTKcKFeXO8K2z2TavFR5iw7hddEnPvZSVPca6uXFq - eQXTlkEWkOB6crFjkgRWfFr0vWFXfCNj3CJZ5JLNmL2HrfefTU6WQo840GMj2dLU - M2DVH5AFOTqLKjKuyXL/Avyr14Xmtl+NCb1/3WDCaVEavw8z5LR5fbIK845q6pnU - ZgEJAhDaJbocixcO+zzCsBy1ml7wfmgDufIdp0/0B8FmZl6oQitVGCDqKhinzUzo - FgTXl4ucOd46l/PvFDM7CAMgFcRHpJsiC8eCzLdkjuTo+oHpVZKJLutXfhjLT1J9 - gdIV/a3GMg== - =UqPP + hQIMA2pVdGTIrZI+ARAAyfTQEHzCHrMv7yWR2B3uBJnUEsLe6KklkUHL9JxkAvkK + APmZzk4V4Om0YaAVuux8LLTce+tOSHQ6q4jGPihmVRxXsD2/95DRD1L1BKlheG46 + D6WiG8988nIn/5NoU/7BVVbpMjU9Js9ib66pY6nJaM1JMSPkC9+lmWzejlvUpX+m + nZuprOnR+giIvZKCQMzFYEy4UNsr2ejxrWoJkLrsGRj1OWNgrwYGMTsTbOQqv3YP + 7D3DWLpcL7VI7mIprrJklCr6VUA/zdZ2oo7Zp4aS7kTGSFkfLiY7VGzx22t7CRje + 6TLBcikQDZYMNNCkqQk5zrTrN190LUZobBv/aYrzo3oE/eAAXnzq8Q2zG52pMvAY + jndv09dh5FIHD37LkIHveiAJKtJG9SEpoexrLpUi/4rL+722AoIqb3jiVM//FaKm + 8nmI6asExrWteXSf8+R/FwieOieR9sGWJDQw7E/1c6I0KmmC2L+XZR72fh2iCamF + P9zPgIfllwuKxYJ7Wu3/8DcDvQMkLbRIksSmF7KY/stoexLwycBFOZF0932DOPaK + sEcv+AGzin4wqHwPQNo92yI10ikUAXdd3S2hRKi+UhRPLDzSIHd/oNMC6/o/LgMC + 0k3tGLROmGh20J8fdvyR2jg0wlvd9iv+3T2w/JiVveVC14ouDLTkHVBvvwaJcjrS + XAHWVSSO7je0MfYba3i8O6Y2QvJQIF9vooqI6U8UeOHlJXoJAz1Qn0rHLCjrs+Ky + fZV8lwUndNUVsXILeHqQTvJoD71r1VOkQWJ2GagvDE3wDQqMyqqUR37YjTFI + =pWLq -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:24Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAKkhqICDx0kjaz6XXyVra/+qwwe5xWTLVdKXlruGnAFww + Lc60apT+JUfDkFA1Aks59PNPmGUNi9JiK4Z3Ygq84+8kD0Qn3ilyB9kz6S9JSLHc + 0lwBYPYyc/aYzNSCcgExfhv/7Df/vmJVoJlEZ5wfquRP2JK0g8kHDJvDMvFe/opK + pO7q64ngDVfxkDVI5dha3ppzBRjO2jgFu48Dwq7O8iH/yqObQM7qXTngGhnjxQ== + =+CVg + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/mumble.sops.yaml b/inventories/chaosknoten/host_vars/mumble.sops.yaml index 54c30bf52..1c4cac173 100644 --- a/inventories/chaosknoten/host_vars/mumble.sops.yaml +++ b/inventories/chaosknoten/host_vars/mumble.sops.yaml @@ -4,202 +4,213 @@ sops: - recipient: age1wnympe3x8ce8hk87cymmt6wvccs4aes5rhhs44hq0s529v5z4g5sfyphwx enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBCN0FyUm5NdTduOWVielJL - TkxEMThOL0ErcmVZZkVhQWswUVJyNFp1amxnCjdKdjd1NWdzWkhETkdJampvejZI - elJnYzhJWFFROVJ5S0JZTmw2dHRqbU0KLS0tIG4zZGVzdU13Q3NhejJCcWR0ZjRm - SWRpWUdnWjhEUy8vang5cXB3eGxYU28KNgdFAZJqM5ppHrbBwVIq5wj7Q3mVpSv8 - ZyqDW23sN18T8aP2QZvaH1HI8NRGVOVgfpRfl18Zo4uBShBJSM7G5g== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBCSmJXRmE4VHpPY1owTU5U + eGRKRW9tdExFOGlLamJmak5VbmdwS2IyYXpZCnhHekJqYXJqdTdVdzlkMnB0MFdl + aHowNE5TVG50NDhsdFc4bGxkK0hHWlEKLS0tIDU5QlIxeVc5M0VIUUlMSnU5M2tK + b3JpK09MMHdnVmtHdmczL2tjRTRxTlkKLaXoHDX80EdVo3s3V5Ykuc/JqRtzkJUC + mBjezl7MMk6A28Qv1s/4LgcHD693qOqi1ZmSxGdXY8FCtiuROnDz7Q== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-20T18:58:08Z" mac: ENC[AES256_GCM,data:8to2Az5MbQ7KjshRpOwQZq/qclSAjmGvIM5n9ANudP/kCRsxu9r+Dq+XB1wczxG1qFdvgEaBpUNp/VKKCpFCo3OtcAfm40IVU6hySNa/NDmcGNz1LbpULgw3nKyX7YxLr5d88yAPDH9yPiXxEjQ9xkSY7iweeiT+dH05cca1aEQ=,iv:rYs+85IVSEMylG8mSfkFKSV4RktUTBWoQkxo3+PRBBw=,tag:tv/RoMVDMdU2DBx/xsQTaQ==,type:str] pgp: - - created_at: "2026-02-18T08:34:57Z" + - created_at: "2026-03-05T19:18:09Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ//ShLvAAyITn3ITXY96kb510ol3qlEt2duGE9kLTKq8c5g - UpqBzE2XhqlyMp42GVTyRxZhC9LZWnskQANEeiJB9nB9CCv58WmP2H8wDhVBWFHO - d6i7SgbL+xT5HQsvt5djTGTGJ+cy4d04ImYDegxSc2looKZ0z9fnPqj6PAFXDtW4 - fmJpiWoIgX/XpvrnNV/CvoSDQbPUjVtwWTL0hUCPBlkickYmiO6eiXXEMTpuIzyv - YLm3/QQxI1+pcPh+8bR5ytxKQkELc0hkXK5eyXER/FAtf6hXYIa8inWbYhFtuFZ2 - wdVQSxRCzWl7KIQP2v7vF5AgUBj4tA8LWheOjI5Ll/3cmZEghCCCx4Aw5bhF124Y - SbJjN1G1ZFDpfGDKKIg2VMhJW3Re9pOZIzK8uq7+6TRlDqcm+HUIe64vswm1Gs1F - oyN3GIzST8XWOcGW2Un5yoCcckrjbRy8o8mq3H8DX4ihR8aWyVZy6QFbgHKLGg/M - Npeo6emmcl2Vo555LIUWoDGDS8WomSlGIUkhUwji9dR5g+3tAuCvzzECwu4+XgjK - sGS/KMBuf11T+brbsSDzv0DLjjJ6S1lcJw5sg+Wp5EU0IWCvrS8g2XghUTB/gwww - xLnnFLliHIapzRyI4P6TOtsihyUAo4oElOQaFmGw3cgrFjhBgggOp96J5olwoIbU - WwEJAhDdY0DRVldTbNE6ptfYEYwOXXNbh7/jsUnf+lSuo5WvWWjOXAxe0u+1+tMu - KdhmCcvn1bHL7IRQ4u6/sccm6YzBr1/QH/zNKLjPaZNRxzid49mvwSuJrBE= - =PHEY + hQIMAxK/JaB2/SdtAQ/+MY67dnMwEB7+vAHAoAXOvuoeeYFaz+1XvMUX4lgfTMxa + l6rX0lOrwSa1AeYXnLXvajqpA+HxrGSZLhUGZ8ZjV+WUrUmjg9bkUhrG/i0kl9kv + mpE3EIlE+6O0GNFBKThm6p1x47US+/ynWBepVR+YCe04rtijtPUvPdI2OLR7OBIv + RgO+KIXG/hwdJ3Z6DTfI9C1IJ7z2yAzUvMHWl6MJrftAeUGN/TAm20trfUUYe4tl + ihwYXpm2jQ2IB5LHA1XlCi3sC6TztmLa1vhp9qTqjhYFA/MUfg1CRNE1g2jWv/Bs + qMa4cnqzhzKBRqoxaSM+6pB+xb/vQNPWMRpN0wfeGdXUO16wM7geZL7V01tMkOFD + Z4mF7vhDyu/9nf8b/1K6K5fqs6Q80bASLqZl3FMmadL0KuEt82VY6m+6uoKoqbDD + +YZeD3GVSpbD4AG1nM94QAJRtJgpJwBzbODGOZKUk8HWjv980SMoTXoYy8Sktxp+ + HwVjoS5nloU2ZQHV3H7vFVt/VlRO/NcXdQz96SQutlpZLqfiNOZloDlQqfCSavlZ + rOhf7U2hfR+F2CQu38uCfu7opk7340O5LHzXuP+iHsu55Ehx/2Y1nvOe08+tHBXQ + xDfwz2Tqn7XmH/eBafQpxQVqJv0brKHmHADQewnk1V+KPpmhWlmstIUQMf+la93S + UQFX7uMGaDzvniD5CSwG/45XnZR6HtB72oMEofh2CPBJj5EAek576dwSAGBW4beV + V2NQ6JAaScxKs7HyIzwdLNJFemwyKWXKwzA1M7f2c9I59w== + =1XYw -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:34:57Z" + - created_at: "2026-03-05T19:18:09Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf+OmBKR2nZ9WZo9793w88s+7v9E64cI43KDYMYH5W0vRuf - DLlKCJCAtVT+zgRRzZuGoEEcENSxovYfZz7hH4n5jhySx1ay0eHTKSbXyVphfwzU - bosUYvVKLEu/wNLBUMa20rOrFdaT+tcckjcGd7Qe3TFyGT4QO9aF7VXeINXsF3Ry - hJKEWFtPoj01k+NCvDN8CAyNPxvl81x7/FZWITlId2pCNTAzOBPVwsg48DC41wp7 - o4J3tl/Y2jjvZbaAo9qxiUomNhYLwOYGQB4X+vo7QDxEVvpCc79FjwUSG+3wA1t4 - VSPzE0nkvKFuGoLh6kMANjz5/Ga1sHy41Fj8fSG7KNJRARDYAjDgP6H4CDHBFXd8 - 0Adpytu7TRUwpmTVJ+jFRurKt7yXUSKOMzuKEoRkYay0SjgfLJJFkxrMorHodExV - FAVKqSQYHealukABsGE3l3M8 - =cAhQ + hQEMA1QflAioE8i3AQf9ECFkEsvyJDQBpM307LBl31bf97Pqd+UujTr/PV/l8SDZ + xktkkgYRClU/Fo0TgHPpnntkqkjsOQaGbEd9xn643BwlSGjtfdXRRylu9nFrhuez + 3VWmjf+/FiKbmHZw4t3jNEd0nOxYjQfARqKRNta7Vfv7biKBQWgpcNRAisZIU9IL + AuaUrksY18T2SDasLapJaqof8oCNrcLL6apgJ3ZlY5C4guHIltFWsvTSUk/OSer7 + MGN817jzLv1i8AKSoIMhLu8JoWcCLM7ZdsRBEZzBR3QSGc4PScwJdA97e1k95FVf + BpgpmJaOgt3byJ+CbRy2S0IhsgrE8IUVYOedaHxud9JRAaf3JVvxkJt3ETr/z9A5 + MMXLKcoKRfRM2LoMN8dZGJdAGkhb+HfsPtSuSVKIZrDGPpJkSK+1gCKjtZi+P2cr + GMElVxm/BWHSWkkahXHOiI0g + =P98l -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:34:57Z" + - created_at: "2026-03-05T19:18:09Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ/+JbJPyCPqPuX++Nm2no0HP2h/EZITWhswXOeVhRQqIi7m - bZFtGYzPcevsKTKzyqX7DMuQM75NSo67orpZvALTujMMK6BYeydhXPpGsE215/4I - gZnqE3kp8EVa5iz7x43AEEAOKEnA5+UZjUuoyCxMbTgkvwH7AQvDMuiWmvkb2I2k - WWdu/mlUKcsqLzEybbqGKuAcSZFdgMtDV6QRiTGgD1aNFjMG/Y+KFUssVMVIeA8I - Caig6LLmCU44sq9aalclH4j/3GuGl/YJKAiCv1e7HBV/iGQJ+jsmFx/oJj6iMMTR - 7NLFE6srpFtc6n9JoTwtBwLT/k4JSLvq6vhp3anL0L/s78NebRCQHFeK3kIZPjIa - v8JxM4B6uThUXlTsX2sOjCKDKfpBTtWpnScZtnhW3Zfof3uR9pGBl0nqloOFPKD3 - PEuFg8N5jgimyOCeh8SA8KuKpUt3SWVGi8GAc/k8IHn78hObaJcJpuYPmuB3qxSU - 1NXVCOnMAbIpjhw8wI1ybmaRZNGsxowVB5pShbd8tFW1jCpRbq8xoh1E7HNyOwgZ - fTerIwZfnRCw1CcpAcO3yY+srOHrmbuWlli9e5YiTJpOTLCDb7+C1bYqO6NTBB1t - hGZx8i9QLAnVRUTcBXIGxsw9cIur9C6kCw0jqPGoI2zeh/CWkC6u3tCsMwsAZ5nS - UQGpHuvGlJ30gZf4gTI2hQw1oc/USEFpZYZXjwGLd3mqcfnmqyUHgVe6qu5AZx4W - VWGGahw7uGOcxUpP0e+l+1UG+5eScTqVgAwVlnnz59mh+g== - =qKZ/ + hQIMAz5uSgHG2iMJAQ/8D88DU3va6qufLEavGngoy7VKiddfi+xCE21E6odmzJ5k + TpBDH9Tz2BMxWl0ID2JjduyVlGaHOy6RTObUN5gbueSJ7OpL0N18JBj1Is/ILrZW + fPiUmFDnELwaFyYomGhefAgRSf8y4MNeKj5drt5jqWlpBbYF0Tyc3ErV7QJUymN7 + Q0j8Y6dSGAagiIaXHj2+2/JqbRtpFXnzmTve6E0SLhgwz0oxbySeovnzoFXcs8IF + MSnefFuKbEA6pUSSu6SqsGN5f7+gfl2JRHM77YJAaZNedC9p17di2uwKbzpn2+cE + ohVzWHx+aj5tZUUooLZVrf1xthR9z7u+b9s+lNbcENEanEtlPvzzcRafAnBrDBeA + 8+uOQ1pXI4VJqs+vZ0mD9I2WNc8tzUnW9JjcCWAaNS6uBU1isLPiXtYJAm46kwd1 + I7yrZrJ8q8cUZMahG5HdkTgLEoCblnZisZegv56AinRV7n+Omo1dVXUpUXJJF4sm + 0krgvytT116hJQwW+dTbQJHvySYwyECWMaVkkWw8QVJY9Y2s5BlLn+6XHKwHxU6y + 3XcAmYYv1fnzAptUdx7F13vRo3G2+0o+PHgbeXFsT0W2db3q4uV0ZbEJeALn7iKT + qrJpurnPAxe56GuY2zzRlu/XShziUbx3mgRbyZRM7CBoRBBDZmQLlA+Qlv7TLfPS + UQHcGkbYhDGcJg5l/lmTvvdYKUhZkPcg5VIevjvnzxbynB8+4sgKd859lpRqRBYe + RuhtrpcPORctHw8oVE5Cr0qRHHiD1CkuWDZkQI5gSxsIqQ== + =GDAd -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:34:57Z" + - created_at: "2026-03-05T19:18:09Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ/8CrPOODNAuVdoktV44tH5QWOkF23Z/BlaIAvoWdJeDa8E - 5J9GL740lSYLYYukcUnQnv1K4n26cXU5Pt7/yJqh1AtvnbzjfhDuLknwbl3BgWzK - 6AEYd14cr/+vrzV8DSETuheeM8wT0QpF2u64UZXly1i1J+f1fT7Id73bUV69CM4I - nKaXvgGt3Itq+MNEWqQhdbaZTVxq1yx/vBn+ARjw1NnZdVdMLtsUjGGMVtduIC1s - U8ffHz+7w1GDOKcFJG6yjzNnCMvyBhIbNIJyMvM9xIqQbYwV5I65VFZheuUqSY9U - xdNYfY1qVjZunWAUKyNa1brGN2PJZArOWeJeBAX0Lqx/kzezA22Iw5EvrJAqaxQ7 - 1QDPvr6i++aH2ZdrtCC4py0eWYnQiIwf9bVSi26zqJAsMvX5NJONUaCoBEPNPI3i - 655JVT9W7M8Z5qypexv9NZltqUEzpIdHuV1jE9kU8E0SxjXNevgWntpMHT4h5E5j - PcTIFrFTz3db0T8iJhz7zNb10nc45komk1/FVoXSbnTXbAoFhq+VtKVhF8b2/F9r - vT+6WKiSZMMJuxmJ+Ti51C9LK8NStl+/BRmDxIUiouHfp34yL2xbEQ0OEr7ws6wY - DFMPEWbv9jr4v7dzVPSCUyzuSKcUyjcPCMCYOwRNkC5xTdY2L1lJmTPU6zRx6srS - UQFR840WLgAE4eIfiycdOEMdYkAx6Hi7Lr/4X7qO51tmMAvUvjgTc9Znk1szdyjx - XOHkMmCNjHHPBct6ZxQQXVLQFAEOuIRYjVrNtHpAHBMHDw== - =ESp1 + hQILAw5vwmoEJHQ1AQ/4hoAfwujpNJlXwcylQogygf/fyqqVjHHwSwX23mPHW/yP + YNH0xXLVfpJjXLdZ1STQoE6X81mGT1CWVGWzEfScE/Z8S4c2Z7RWu/grOJm/TaRN + VFR1rAY646K/Z14PMT+SbaGigdc9NG6aXuPjPwWpQBQqUYZu69WUES2mavpYpqBO + GJw/XGyZoTqfD2sLsTZdlvrzYvAS0zqDLN/HrkwOjfGO3k1yuOQXLnfG4vJyZmze + 0O3Ilf+B9wBba87VkZKKc+qRtkk0jZ2Qd6hTqvkhOR1j0G4oimrE2GFf5v6xYpJ8 + QOeTgiHQYwFF64WdRAQ0qZQBtOinNIZkvxPNXBVm09YZ9o922hBfF4o2LMR0RnA0 + WR2mbCNfrjIBsiRFUilZx+yY58JNchyP4Chvnf4UyV9ugH8Pgx7GZtLpslVC9JVM + TMkEJ/2H9v9/cjCz9lf1aXx+KxB2/jMZKZpxURYX0hAwN3mRDsoDEIjb/mR9dzgs + Js0Nj5+xC63rxxYf5f4WGiYGX+Kw0bBkFH5BggIieUKZop+VfyHDiJWkPVCnbaXZ + MEQCVTr5ZBz1poFoWRKKpzrxkiaF1ROfbzYKwcVN0YTpd4JLow8rr8+Dn4AtezO+ + A7rFIBGhwJykvn0sKhTHXAcPLRZEBzXHUMxOKBHnbig+KINXNV3Fh0Z6PFER4NJR + AWz1+7hLbpiaaPCb2Z5+5YLbMBhKHp38VXvbRVhqT7XGIQ6f+gMu6jiyl357Dx1r + omdo1zLAJwqUsN0Lm15SACr/tWaDUOwL0Zt2G6NIeDZo + =Gy62 -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:34:57Z" + - created_at: "2026-03-05T19:18:09Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAlaxU1OC99m/Kn5cZthBqJBd2SGFTQS2Gsj8rjLz+Uhkw - RYQaMX3sbhT6NpFJK6X02q8p1cJSZUfMnmQrGSEUr98IMylRnCQCOIirSeYnuF1W - 0lEBJgVHuE6ifA1VTNnMIjSFmzpq2t3cvAEElmNWd6yHHigCy8sdeWj8EdQnSAq2 - macc0nzhpb9sTAt4wo8/kYrPgxVeochDFMXZ3xdwo1I4A7w= - =iMo3 + hF4DerEtaFuTeewSAQdAESSFwHonCbT64i5XHEzWrJJ1RQijN0RVz0sXw1REwzAw + eVSTEScf6NId7MplcFddIJEtzysA/sGUhR6CedZJKLmEL3uyai402/5PuRLhXJ3b + 0lEBAF0JRUT4gbm2/FPXru54U37KHlW8hQY/GOoPrDnf0RWpmgIm9RssLs4kYEtq + 4UVBylaKZKtxe4M6ZDI0xWsw1EcveAUS6dBpIy8hMAkar8w= + =Luoy -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:34:57Z" + - created_at: "2026-03-05T19:18:09Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ/6AxOtuD9uWjJrogueMkigLvz3+FRbF/FSeTaA0LP8imKn - 7SlbwQZVbkBERhsVT8fghYt1TJQA8q8e62q5YjU6Qaq72TFvRLvoODNOjpe6O/8w - nzr5l2d60o/h8ga0Haj4ltCyiUQdqyxDluhf3bnHvJlrw+AekuSpP5jHofxjteq1 - 1bES372FcIRwb5tOzZ89C6aKy5JJBUEW0hiTB0CaaN45tWRuS4+IDF/Lq8p/vlNS - 0O6UAsXfCbFFMMgBtuw1qedE+dOj5r+o9oGW4aWO0Y5LR2vRZ9vNgVjE73YtYTq6 - vWwTOmwlg8FeSlgBfqd8radKKEJ2Xpw8JWiQN04ImI/gu9eKbcm7LXk8oHQc/oqZ - 18kxJZoIOpa7Oki31ek9oqyVsC/tTElfLoxyZE9Zg5ek3+XQFNdqFkPXPmYrPc5f - 9xHOgn+1/anNvAcpJZhdM7/Ukf5JkniKzWOSP9zJIlaxzVCzRRyCfW6bonnYa1d7 - 0AH8DAspCMlVlWcwrpP9RoVyTafv3bVpMppSUKzG70LaYyy86Z2fz9J+gG3sZWLZ - QabYbCz0FPVFXDNDZCidk2ITE7H89h+FeCGdCp7wmz57Gl1m2Co1Bg2MLOQDwHhN - dYsO956Ljabq3AC6EoK9LcCMAWpDGD8b1uFhi0RATES39xFNV7qTQZmUe0jRwfTS - UQFUbwNgvoo3dkS4xe4gRi19GCqrFYc5T8x4IuYNBHjvSPMAldKbJmBoDojW+Hl8 - pySIJ2tUd4E4Faz28hr2KQc3L4F/PudWyobuLEU/T9mXAQ== - =IWwM + hQIMAxjNhCKPP69fAQ/9F0ibO+bBykoK/fmSxhe/+nsrTnCpT7fYs1G/30f8UqXB + Elhwwftb01L/awAIOOep7LW8JS+1hPbYFvQWCe4m/U7daBtiQm5ujKq1SQWPP82t + KK4un2LiNc0KTCU4F5FFRXa+I3E65zrSkBYXgT1Avv+TmqB2aaocKJa9Gg7XTtj0 + ekM1+gILveZh1domAHp2JC0VZ1evC/2ws7uwrZplUrb+2690K9Y+WbM08egpVPG7 + Fv+Wx71Qztt1yRbGVdZmpW0uPH/mEFLZ38WfxcBE77WDSav74E1/Gg38zULNDfwM + yODyu8d2iMUF0K9kuTEos7op0bF6vGhkBVegSXQW3YpdDDAwj5Q2CtmZjVBD6sKK + EZ8A95hsYfW/nC0yeLs7jG09uZbG5mcey4wIoIDJu7Nr+lUxy/v5yrT87cCvaCo3 + Sqv9pGyAcpmR/5wl1M2uZ0scnj7g+BvyiLkHgZB/jmijiwEXMv4AWIrRUJXe37dY + HWF48GAKMY87Ez6RHipQtgOl9L3hpiunM6VN2seCa4cKvWfvFV+1hfK87T2CcQTA + Ax+giP60T8nMSiRqv+OQmIV/KnSZqjEM2QRES//GFxbPBUqQcNw16b9zgllsvdd7 + ZprQ7K5EC8dYZEV1DqHVt3WbqusomSo6goe88Zs3VjuxBEy1lVKy734G8AGXWGnS + UQETfrJlKtSHtelM0avg7vCVZlySnqK9mNZLUymusS+hsAyP+bQfmUtfzy0n2mby + 7AKq94keikUqqC/Hs1MRKy5r1oR7Jj0MHsrwe3MmC80r8g== + =hyrW -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:34:57Z" + - created_at: "2026-03-05T19:18:09Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ//YIolGbAUeRMD+hZEuGSjJmU7baYI2mWiksdR76DSN85h - q/6zbISWGmk0FLwjggTnQFcyM49NUuJulFzVDqYCTEsXJYLFWnQ7Gzgto2kQkVTD - msyi4yd5DY0LeP4hC4/dOFyhNoDyhIlZYqsGVbxdilCMVZ5O0WbRFrk1rmlx59h3 - 6szNoLxDe4a5hIhbIWCIf7ENmWI/yDl3nsakyeQWpmGQw/d2U43N23CyjTufp/yh - u9BsqNrQ9UhQEZsnA4ikz+ErEqE3LNY5pJugrAC7hShvvUcoDcUZypwGs/ymFoqx - bcZCcpJd6K6b8ME8wGcNk52wkt6vXoVhBL5V6kGV8eC8dcyiltEjvkBFtLtNdbFd - gQOLd9oEUeBHsObeJreFF43hl0AUnExVKDOjY5GsGB7JF/V0QYdaBM5EiDHu93EA - wIvD9e6uzEjSFmf8a0wqwJ3YY3iTLot0F2HjaV44nD5TnoTtio4WzvjtC+XHbxuU - mQlCYgA0Sdf6coLMrTL0h5kWTAzQN8qkCpOZhGGE114wKqE3i84i1bxTV8MrmunS - c/MHmOyijPBSt3p/5tNmETEv8r6xV05YxfJczClADGNkzJljHf0oTTxHkMLHvrGW - IlLO3gAjIgsyHb+c3dqyZo2MeYmotuUIEvxp4WzH1gk9PhkcEzB3f485Isd02efS - UQF1Q6uH7S/ERIJfULIJupNyc3Yi4z1+7uQBXLTLhk4qSv8GJu8VQFEvWp+WWSUH - Y8dpyrTujydlT3+gZOinixUCIxG0dYzMAc1DnveVvcgfag== - =OAlm + hQIMA1Hthzn+T1OoARAAve1lhAvg4cTVUT5Xw6VTN2Cm872dB+QBELuiOWYOREYg + nKuK5qtYhBa3UXs5KCBJvNhdua+0NaMjaUjyNPKqqkknbVtQl/HA/bCmRBEGGDIW + atssKViyPAZZ0qcmCqwPRy7UzUWmsZcwxrqIQ/NgrJMD2SlPrn9QIM/l1zEYiEYT + W98OVc1lZv7vn0mM58G1B3ODvFSRFSzZv6yfXzH7UnoEoazZIxVjbhUoyoXO/AIZ + Bz5Ys/OtE6CmI6Gj7Sbyg8u91fmxp3yix/QcTe9TfXfHzrIYtAZBj57B1hPPqz8e + 5FfHF5FnoMYIyMy1LekxGUsuc1kr5TlQuX6SNuTK3ENu9/XQ/+G/T7kG1gl4h2Ae + RQMninPnHPnOsl++nbO+qeHHNT5lCWNWUXbg2icmeEzLj2Q1QQPAiOvA0dC6Xuc2 + cIrwzb8c8JHQcDTv8/En1aPtfZH/iPTrwRXB6KBfpAXnNOyCUChaxPqWmUjU6Xm3 + ucjWBGRpDLOIzaVTF1J5HBQdIT7neNWG7/rR9WT6rwTAY8Y2kv6aIQHEpSyXeRGr + zXEvDgVznqbCnTSgS77WJvNIce2ny8ngLO29EJdygz9rUCUreqlwpT7sAZmC8kbA + nC096YvrIWaE6qRU1lM36s+vK8GB+UeFK8jQZlWZHWHytBc477aGiTj/vkWiNEjS + UQHkE/bvWtoon990MRFMv/VngN6TYkdcUjNblZEs/lTvDkcJTdlrzNLlE0YkXwRV + IxDp1kXvItS0ErRov8f0JvsYp5jdLP23i3oJ0LSS/Magdw== + =Gumd -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:34:57Z" + - created_at: "2026-03-05T19:18:09Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ//YDfBjJwMOvI2E+qCmLnvegkhluCos9PNUxnP5PMmPEeB - d5Nql79SoE08mrzDSpv/MwkbWrb9G1R7PW6tjbBmGwYR1tmnBISL+wNVMY450W6U - Jktthb8eAcGmmTAN2e+52qi4aFso2ajPHki5jq8j3zPdbnS6RzAke8Rhk6gwlhe3 - iU/cTPZbDU5ON0jYKw9ZrVl+QtwrYf1Kk8Jw/+B7xvSTcHwKvabsTxIAnFrLaCyk - GVieAZXy5jO4wy6zUv7qgPFoSspL0nwWM+q7v4kqB0q7hAY9/UCmqYqAdjHqzW2p - FuDUGUDcn087lBO20Z/uqEgri8wSegd9WgeuJpWBCCQ7jFGc6gW/dZmaAeZfG71+ - OjeNmvHwz6lLJL9rvkWN6NQVNZxun/15Ey8wCJwm9vpFiSTvA9infI2TT/a47J4w - sxFmyY0ZxthblVWpkSo/17mvTPfHcNprEHqr1qSoo31FOyxUjZjJpGOWkcgDqu2f - W/00UbiQVAWzpcGd10nE75emk2RgZ89UbgnG35tIEh35pKR4PpQQdHlswals/MxL - +AXhDq23sG1RapK8FOZYwMJvIer+gb+JIj5AQ/91TOKcM329Kt+v9aoIYfo56YrW - UcBclIZajPNjet9HaNdUyH8wK7Iqz5MxllYHiLsCzlHhxewjBn6qej6/Rqs72LfS - UQHN7eb+81LDIaqru+U9EccZoujKaQbRZHwkmYOtwAlVF3N0rxqgBV55DF5s12AN - iviCMIw/+TZLObexFdEcPDi6VTz3eGqGsvgSaY+Rdb6+xQ== - =0ECU + hQIMA46L6MuPqfJqARAAqOjNUpDtTfG7rA6lhiUEiHQEUXBu+Uu2ctoB9BwhbUbe + k/kOoSbHotdKyrm2msgZjFDgKA5eHwOx8srLubsBC4q3k4oYZi9pPoPjyDiZkdMv + QViAp0Y1W2zcno7guHs1nWPD4nzeEkMDLs1ktvU+rH+StrI4uT3JrPzwK4J51775 + PD/FzWg2nqyWmMa+vnqgkYWrDkO8eqvoILovuUUIrwkqaJnpp80Vkl1QQnWtlz8y + zVg+E0ynFGuNsqb38PYIGYvtFq9XM0DXbJH9n0rLUaBFC4uReEYsXS8HwfSp0enM + qsKZVIVnIVPSdngkSactE5jMy7w7LtdBpkI5ZySdcFBfRMsyU0G2DGOXNoiwAyB5 + rxIBXB6Y/dgFqtg5KNhIpwPgK2VjYUCoHa3XyZXD2Is/GM4gjQ7s1IgjeH/vpo6s + 4zjNXeEO0vejgph6QyA+f371QInA3hM0gjQUd9686De1nbou04F/6Zbngqn2x9I3 + yLKh8gmHzA6qM1SG8KW+ZrHYA5HdGnJskLFDZOFcWdNPNnHpSOkWrXYSoDmOUqIH + f5xAP1qnGeuehm0duXzsdLtDswNZwjpRTbxtGC8y36VlBiKeAinpAKo2EeNtE8zn + eMlf7y9Tb/IKcWewvae0EBogJAjMXKjen6uhdnXc97m+hyapk8tbF3vnAVCP/I3S + UQGTFgVFWfuCHxTzWUFywpsZGXk7kutZy341Kota9OyU5qTuQnG9PbRqFUS+C5Z3 + 8IB0rhP/UFRz0UJSdsBYPHhdPN4M8dUDnl3QZTC9GiXxjg== + =8kvw -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:34:57Z" + - created_at: "2026-03-05T19:18:09Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAwHp24OPkPfgNqu9KDdlEFtsrknX8OtqXoQOOevsEykkw - OmLXki1Y1GhxDle/3FzBBIGPN/+TO4pY6L3vXLsVbkRl3MSB29zxHkEwrznFGnNW - 0lEBFtUxMuW4velLhMpwiOSmEWK3nHlLvWBTeg1XHArl+KxqV/f2w5TObq0dqyNT - FjyAm0O9bLWpEiEKbtOrojQrgF8EoDQACbQlJcHG2XFpVzg= - =ztlI + hF4DQrf1tCqiJxoSAQdA9Tdqxpkg1Te29GFgjavSDOIEeyQj7yeduJ9lBCtmjF4w + uNMAgWANpJLI5Ndd0CWR0bj18Hp/N+U21KigTseeVUMidpKtA22zwJmukIPWaJF9 + 0lEBztvB3lt2C2xsivxakSNNTD13pjcObjN67PsnK3PYiUrNvo9lz1b14QNCMg4p + 1RNsZ/DTMS4Fle1iWlkh+6Qsq15wvfzXr8wyRj+5nqZjZDg= + =tpPw -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:34:57Z" + - created_at: "2026-03-05T19:18:09Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAaCVsCaDy4JkhGEwWgmGhqR+Mn9iXN9iRWdNDjWEm7jkw - kOwWHnOOsFlf9Fdy3kBwSvYYS0h6YzBSrT6GSiKRbojR7Ho3dk5O6zzjXT3WJ5oP - 0lEB3CZ+5CtCi1uqJUik/4b5j5B/kqRE4AmpZjzEKsTRxQx0w9FhBlI7QyaHJAAh - ybruuLuWqwny0Ccn8AdCloIGTVuQXv8FkGOx4cxfOfU+GiQ= - =IOL2 + hF4DzAGzViGx4qcSAQdAXn4Gx8J0SaIVFfg2rZeIbGpKr5xulOYrcaZm6KM67i0w + iLEXiwMZMq9VEu5ImWe7BuJxUEBj/upEOVzriYQHBXRfepzEFQxhcKhrXOuQLjPe + 0lEBHtd5gwLNzi9FJ41v0QTlf3WqJw2b40gBMChTPjzuJqsBnc12Gdgo9q9D/Xx7 + jFmwAlY9jDpZSIFu4Pw/vxyB+/37XSG8pzmr3s61z07LC9U= + =JXIr -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:34:57Z" + - created_at: "2026-03-05T19:18:09Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ/8CF++qAnDorwpU7yXop5a3XelVoVg+Yil0Fx+VLpA88uW - M7Y690IR42/aY8rtjVkAWs53XvtyFErQka9fc+ZDuZgxSCfWGPgCWV8ML3uQ+Q8w - fzI2em7/5P7c29NlRwyRu8H3DbA+JcXAuMc6tReS+tQqW4p6YNPbi7cabbl+or6T - 9r+S9OVFeFD03KVwWhvlWHiYOIpL8Rub08V9uWk3xvBgFSnJHAmgNZggn3WdmTV5 - JzFGjDfan5RY3dNJ0k61STYjiCdi3D6eGBWmbnJwiH6BJgIScmFJQKphx9E1CCun - 0fRisLe/D4huuszhQIyZ5tEoYZoSJolyNNaS4xo4YrRsV6ScQJe32/ae6Rwaz81h - z6SqZmFXix7jKo/3QulK5MIPNV5UeM8fBonvxwOxcYZeFmHa14MjgNEE4Zpl8QcC - NEq+ilJyPVRy5xEd4bE7u8NDQ5gSDIejd/fFXyb7DTizu608ESAhNj9NivNAqXEv - FnaBeFEXlje1m2jT92OOYCZPJKmcRt8V3bMgEpvuf3FDDUlAHV6ZyEau4pcMHw/1 - ID2UNihe8ID235WKxVr1wgvIUNdjdVyAAZxVOnN7oshWlySnvAv9RbDvor2qXExI - tm5zCbIIMGBueCIJXJYMfKnUH4WK9hIikDThZsvMHhE5Egp+Dn3MTFHmI5sltsjU - WwEJAhC5jbHaodeSo0kS91Ox6KSSF8URn1boDFbMaQS0m5R3PVCzBlTakXWTwVtZ - qJ3iqdKmLqA/Hmo8M+U8EZ7FkhhtLnvslVmvWhTTEmX1beRglN5xcoOXa6M= - =mTVi + hQIMA2pVdGTIrZI+AQ/+MtLe6v0jqk9MrQmfzRb0Gq2zBHbEodBHg0BAl327Z4qq + gR7b4KiLqq5NpLEK8BQfrjzX9kehJyFdTtacoH9cezLpkPVU+T2hfllx/tNjqQbw + vlw6vInqknfD61hvSWczSqAbEaTRhV78sQTd3xLnlX9unVsY6IaCEjSgA6YFY26Q + /Twa0zQCMWq2J01cpN9qCAj69+MADSEmzHXrkjOR8DULafYza8trM85HgGF/w/lY + 4WCmmfXV/CNvoGv4vhK2ScE4tL7y1Xy7CVPBYAVe3s7jjQ6wHwTrBD5WPI1dNtoN + w21tD1CLGIwIVBsVGjk96n7PZM/c6uE+w8QNnk/7ZPlOHkseKc0+YvH02bztymtw + GpIadRUoXVklZ/nWRFTZikt7BAvjbg0XqEEZTnT7uE1fTjEJa/lT7dT45zevC67Y + ZSeBetUgTuTHThm8GvAYdeWHgqEKCeX7uc1f1VspbNx0iRIGPbuN+n4B0cSjnaEx + 5ELSQimV3oKC0vooCCRyUjIFgczK1DiAqnDTCT3HD9huVxgOBqdMXzBYQKysr/Cc + ZvAKO9oC9kfcZ32ueqTSf4BUfsr7E1K7/o3kDG1mRxHEp7U6ggu/LNSskQMkCI03 + iDtGNNH6o0KfPZloEbENRG08UoIZX2sA+s1HdrkBRuhGX8Z81jl0++hydY5DigfS + UQG5Ne1LZQLshbxhWIx5HvqjwnvbN1mFo4y131LXAWlzgChWYSo0P5HIuyNr0jfj + qjHzIUKS+IEv7gEcJYt9RuCPw9iykoQ05C0eATcOmqt87w== + =eby7 -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:09Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAxLGboZt4V4LfZtKQEM2ie9EjX5h+WYScvkKoIZNwzn4w + lDhRmMQjgSHBhlVUqAYDHp/x9GOt0XSh8pG2SPubpmLQScA1SbpaDfSNCFQw6zdE + 0lEBASkANDIyzjF8AHzQbnMj+qNI+HgpEPlYrIvoStY2ZUi0NOxHBstLr3cklwI3 + lKGwGgAEr6dD0ukSkYiF4HwIOiZgUgXJ80Thaeca0ZDPD0U= + =os61 + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/netbox.sops.yaml b/inventories/chaosknoten/host_vars/netbox.sops.yaml index 809cf5dc8..c0cd3c045 100644 --- a/inventories/chaosknoten/host_vars/netbox.sops.yaml +++ b/inventories/chaosknoten/host_vars/netbox.sops.yaml @@ -7,204 +7,213 @@ sops: - recipient: age1ss82zwqkj438re78355p886r89csqrrfmkfp8lrrf8v23nza492qza4ey3 enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB1UHZiNVlXMGFjMXpUMGNq - TmkvTGNRelM5cUNKQWZxZUdIazRnSTdtakVFCndScGtDV1Z3bGRYVzR6SmxrcDk4 - TVlpbjJjT1ZQSnIybkFINEdtN1lNS2MKLS0tIE1TTkZLYWlHQ09MZlBkUDA4KzNr - T3pUeUZBQ2JzSUo4MFNNUFdEb3JTVjgKWbh2V4yd32qVEAkA4jDjFsdPEyKbj+Il - 03F2VRu0dOoivqixSQq1Fdgs4+iQg9BY5w1ahMxCy2pKfEvIJRb8Aw== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBLUlNTU3VPRTJPVG9vZmRk + OHp0MXNGK2ZDeUZZMmo5VG8xaEEzYnlZMUh3Ck8yY3dpOUNxM1gyWno3WWw3Wmty + SlBMakx4K1RNUDIyRlJjV2xpeTFPbTQKLS0tIGpQT2lvaVNvcVZtYWVTQmtOU1lj + R2ZmdzY0MWxCUEtIcFFKdFVpVkE5RDAKXhQvJorV5DSWWNIzJ80ofKOtR0IhPKAg + TtF+/AQZq4yXzKE87yScQsTBl3Sy9o+qJk9ElOEgb+9G+xuWBo+MLA== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-07-21T18:08:40Z" mac: ENC[AES256_GCM,data:SvTSvRYd7ljYpQb72yRkQ+fDrDWRMQzFwTrI4RuLglBCzKNxu1g2JFAVFUSNRybWASCYhg0FqtHoC31HRHbs24g43fRFrXrvBB3sCwQ503y7A78/UfX55Bz3VBqYVJfh9w/Fm23Tak0ki1CQoAl53lz88eUHjCJjeyKtY81/PnI=,iv:y4C3RMWPsnTTgkscvfqVEzcgAg6L0QaKinzcBFLOfSg=,tag:kIcvmJXSNhpQDUHy+ZpPyQ==,type:str] pgp: - - created_at: "2026-02-18T08:32:59Z" + - created_at: "2026-03-05T19:18:28Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtARAAp0bAT/HSjnEdWWMSjWbhQXwyqUNFwTclOoPAMNGVbrLr - /fFGTywGOSYScRp6mJ1pUav+OFAtX4joI4Ir/zlJxv17PXSI8kCEaWSygPyo9bgU - QrMSnUWXoGMK+9cfoCBLfTc5C0KwiBANdTMn4j/wND53b+KKA0pz6XpEjcvVUMKl - 84E1F0FoBS56ixOtq8uo3ZaVY2FIgsDRvwXUDMb3BdhmG5TycVV+jJEMk4H8V3dr - UAbtdbXmjhmjRFvQR1j4UPlOiSEN4Spzu0ddeqj2Procx7mDJVOzuBiKih6BTKq/ - M2amy4exe0xHelA3w1s8w6G54EMDjdWAsE6ACZGDxJCBitiyvazCNVLnBLMhmNCb - 8xRu/G65GYPEC3LwnV9Oqic1owj/3i6BUkcIJFNBMy6INrhygufWh2e433KAEDUP - X+50GXsULUU81QGdsE3yuf3Fm41iKXrDOfzMG86T2+mDFctiT3iIs+fm1aN248Xi - BUK/tmKOe23xq8GY0ea4Rk5G9B5s21MprI9mlyvrIAWt/55GpwAAL2oqILh00KGd - WgaJW8m/70yOxP0wbamdhtZ2xUPcJ6H2YHoQKkVQ8MifV/pQmcr43/sWjiAC3Tn7 - DKkndbSwIjeie3Xzs7G74Ryi/deNEyMcl0kd39vhWQ9WJ2BleYvqYS9kcLz5IfTU - ZgEJAhCZf5OCZS1BAlG9VqcDWaY8ONdGxsKqR/XgpBu2ird6fUGH/d+X3CQKc8+A - OQayMgvNs+kwdDFHt3kCZ4SFfSqxRIatbZSKweomxvJm020y2pAA02h41otyUeSL - tWPPcPlNhg== - =coKM + hQIMAxK/JaB2/SdtAQ/+PAKSnSssOU0woKXgbafkteDezWkcgMX7FRm2lVe0/KMT + 9i2mwxXjbEkpc6hvq1oHp5Ax7N5MNOdPeoARkCh6jIscRlv1KzRiiGa/LRMh13J8 + 1vDyvFAtn9Ot3VXs5QyU3gDsXDc+xGdwchibUqb6DCoqDr9aOFWpV9YI2S9GJLUN + dVdiym6GkU1PepOjYrD/e8x8W3aUBJ7fO2kMFAYuG7XVCvJkY7FRrhPDdf02Xyvd + wrXz1UlzJMneVvfjJ41Q2TS3U0G6Nz0YJXd0cQAZQukPRveZ+BJfo3/BPXfdxt4K + WwMi5WhdcqpFnS+td5JIETUqAoS6BIHgs/xE+hzEEiFfkXvky5mBhA3EppSoE0vT + 4cZqI6wQbsWznsqgOTHCtpMD9ny7Ez+KVkDg966GSQZEhYYlct+ZRd7QbLrLm7e6 + /cKCt5RjBoMAA503ibuZXJL8YBJXvuA/qgxVlQWzkZaAWeSOdYvQvSoitC7dC5Uw + QNzGePp6/Dl+8mN21uuDVe7LfnzC3GTG6ZAmedPKVsZbRXocrnpq+BHdi0QgRwJh + JtN1dJ+A+TdHf+tM9Afg/3x5ORzyxayxN6RFlDdTJBR2kuVpeZkRqbLV1lSo57a/ + oW4laXGvUltPCdygJnoahrbmQwq1dkeORk8or6Pv13Egdg7Jp5xerCih8+nuOuXS + XgHQITaLUjlLamYlq+kOm3GzJsdZfQDRY5FW+An5pzUmGmyF4vtM3cTtdgAGVxDw + p3kYndW/qJHa8B3MX96rNn1rEFb91L/t6O4OLoLqEl+fvvpLln8YB32MuiWqiTw= + =kSkw -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:32:59Z" + - created_at: "2026-03-05T19:18:28Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf/ZoBHajPhEzvdUjgyzaSI5Egtn8PJiG9j/X1gvSGowCpG - aExsjZJ2bHcc+aUQ4iwU+JZpWU2B2Elj0R+XyZw7+c7jN3vh22LWm9ceXi53bXCO - gDBHc9r4/lTvs3jiLoGzhL59lqLqs3YawYZ4gFXBnwemaWgLjpqpzyiyZiIeixs4 - E0GDTAaKfen5qYK0oQSfIk12eW3QBs5aw3S7RxjdoYZ7vXgxYmqEL9c52G7Gpqdo - grXW3wtWGIR3gW/qaNHjTYaLE1D0ZsjDCIdYjla7T+N6lkHou9d4tI1hy1JPH45E - JpLSW6QFXwc++GZSNb1NAPW1k2kOpup1dqOraYOPYdJcAWhbvFUFhnTlDV8k+hix - AGivbKoFy6xCI+ofhttb8cRqtGPdxABNSLzYWB0I7dcRPmGcwYzoUhFHwz344RCN - vqgqUzoTkgwnijqvKMwbfZYAaFGyy/lfUPVqQlc= - =NYEL + hQEMA1QflAioE8i3AQf9GnCim9lHwHl4Xs5sepIBhtBnxNX7w/rAXt2p7B6EQAH8 + d74huPB1HoPTRr36MDzmtlzJfpB7ktphyDj7jQ1QDg/HZBD4y3cvfuXPbseMxfxg + lQcgf6QZBRiElykvbxufUlOoI6052RX+ZsCYcVZRrdEb7VtpTvBL0FzCjzY8tlJn + cEl4H/2TLFk4RJ/kGr2pJWlT6+dEFTJ6+2WRHL5jKwch1K5mo647EjgvGNzTWLFH + 4fOlWwVMF/NBveM8l17tzkJSNgryOH6O5l6MqCGeiRNpxljY0XbjmLTArT7Iwoph + xLtpa66y3de2xbs+dxFscQXUO2DUi0FfTtMFGtwPGNJeAXkRHjjAVicSX3IH9/AJ + aZbVPoqROxieJ32QGh9EcM02ywx0TQ8AhrJT9mczUPx+/TVN/lKTD/xLoUjgefG9 + cdmT2ec8exXJ3jucTZtAV2X47zjR/G56C1p5XelIlQ== + =G5Ji -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:32:59Z" + - created_at: "2026-03-05T19:18:28Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJARAA5fmF7y3G7caSZXegzMf0MXoz6mI7QPcXfjtnc9W9LxZp - fpTlajGgkhWeKWgK5L6uGSV0KiyqYm+MTmYlceg+Xb8VZbxqYvpVSp69UHmyLCCL - iDd3uPcp5IFCUITqdEcUefxWIcFR5eFJWpDhzfSwc5V6aGDmB6bCnICaSdcFPy/G - 3Ar8KyJNjz1swE0RBauv/TxVntqwd5uSbpgdiina9/D0M4HhUltRcQcbhRfR5AnD - h3y3HMkTrCPxGprH2T6HxRU0y243sSPdE6CM+NRPAlWidMpPfAp9TNBQI7h9VYT7 - oozoI9n1AoN8dBYxF8c/4Eol/IBCgcI5HEU0I8Hd6Arvs22Dv8oga+lmX9EDqqLT - F2zDprDAxG1sCz66LTmZT7OxE6cM4Wi2gs1YhXPr9sqyo3ss44jhRC0HqDjTj2D4 - XuiVwwn2affdch0T8coi0yzSAItOK8558SMstl6Mvta+jkI7zfqC2ja1oRObnUsp - 7cyCC4xEy7N8I5S+odPQiKNbzKVfHRBNQ3ZSVT2WCEX9I4XaTH1DYfDH1zO9RHR0 - XP9BON+wiO6dqXunbuikOU5n38W/Dck+i6lpy7lu3nboSidfdhnmAgdXGQ8wAH05 - OTAxgu1KHcrZZaGqSlt7vQys7bAJEvLABhcfInZopbVR8NnYzSvYq6Vf8/kEbPzS - XAEROgbj76uX1hZ52wAjoyNG4JxjAifF4AOsrYKqN40AZ+jfj7KDOYqdkTd/ABj/ - L07ag45mHdjh0hCDxqRKABo9+rvhLxKiyVTwswFyGX+Acry1m/2I9BzJ8ux0 - =u/h9 + hQIMAz5uSgHG2iMJARAAggjBKClqgOkYGQ44g7XQfi9inpZ6RSZO6iLnfq+gSi3p + VXpCjHgYDaMc3PK/vhCp9pCffkc2eO6jzhn4Ev5zugWLIdgNqB6SGQ+4ezlweN/M + d/xYxX4I4kLhJI6jqWHjPC4dn2L4+mO9VqTikblWb3qXQuV0l0mP5AC9lntIXmNV + 1aAFDwK/pZo7kXBlNVw8oO4J+KLslT3upVEDD1e0e9I7MANbJ5I3P0tXe1zSXzRm + WPejeq2RW5JMeipJepnREedvPUAlDNF9gGdFeOTj0wyHUiefh+cO2U3Kv4JCsdcr + E8xZBGuOlwoJ7qlesHQBqtg+/J+JsF4dUuI2ZMGcUq23TF4iY4+XsNa3+yXWgjGm + mD0gO4Ny8gbnJJ+gqfTnP2Sg7oSyepGdNVFt4e7/4j/9zyuzqOUlGcuFGRg0wI7R + zamF1wP7PQjX1jY88W9em5nGmKI/e0Np9VfbYRvCxfRoRPI4teUu1LrkGDn3XKDc + nNzJwjcxniQehjsEGB3hSd2Ks+He4eXcN5XN8EkDkEyoNE0I6BGyJ4Rx9TRlYROO + trjDursHKjVggZpEL40VWGV2CKWmP/g3D28VzmsfHaaMP70bdtAt1OcVigHJ0vu7 + 5cSSKrQHkEy1+foSsmY+hocW7xg+VXToK08SQCqm0oJ2OUTrgx8CuT9z1KIJLkfS + XgHrJWFSs1IkWHbMS5Bfu+Hs3neduA3zLr1Z0r2OTU2YgD+r9ZH1onN1QjCRqMnp + HGpMk6SU+kIj6Vk5tfta1wjnZvMVR+9ltW9EJW1OxMW3VCDDaiL+tQ/FK01B5bA= + =nuuv -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:32:59Z" + - created_at: "2026-03-05T19:18:28Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1ARAAkqyxHPBjmKf8f4/JEhRF5E06mOx9tb9W0SJF4xN28qhV - 07IqGfJH80PaShqBDBzz3EUohK3muQ7100VTqqZEGejPpzexrpgZ8eidqC1aKK8j - bS6HaZXhxJXdtGwv1f+7jkwjTUneva8sA7c8W+RTQWgfO5FzihWILy39SRQh+O36 - lwMjw4gyippsjgHpv+meL4ezwOhTZkEVw4C9vsARtCzAw/wFc3J2muH/aBj77HS8 - 6iIGD1ZK8cFIglggv8xlyhCDgjENbu0+oraPiwvSI+TRm1uTEGEVd/DycknXbycV - pZWKSyN9hOx1HbH41dufdLMEiG+yckEnklchorTS28V8q0sdFVsJFH70YslN0NIz - WTJu1DAuuulxYKd69brAK1FHYanhDt1wFOSBPu8nvYZlxDEW74NHuG/9zUBMdjfn - +s/SPMG6exv+LFm2+j/XdqIWLHAeK84yjw9httUOoWF2MQ/OAFu709kp2l/MxyBu - FiLOTEafQxdQ/uu0zE+hfZzTEZ/xUkiecqrorMR5Py57bFkVYBjnq5VHB38aG3ME - OYgvk6NE53f0bElw9+bMFrs7IUhYDvico5AyI/j5mV5PuJxlTbOFl1Y59RCyyBM6 - aGe+zYJDa39Occr+fl5y0ivybACuQo40YNLImsxXgdCSmiGg98xiDrfzQSMAXGzS - XAEJOXqqoT17wHTHV/JhxTiC3Cq0+czW5P8LYyI0ul7Lm1FSPYi/H0gjqjdIlqYi - qk6PhpDP9WaFwsF3+aneWybTnAIzdcPYwNi3PJ2ilToMTto7EhTvARST3HBG - =ROGT + hQIMAw5vwmoEJHQ1AQ/+Pc4g3v48m8CIRMgk4Y4N1fY0Ntw1OhOxyAsMr60ofUSB + TQts5EBnnCpANMV9bz0dDZ7LFHrtMCcsTCEMAyiGRDui99OZAPGiR/nYFixx1iLn + i+6Wd5sJFCrKflmAKLJPTWO7wHVOFLw2/oEW3VrbdIaHMQL9nBOWWr8crLCEFas0 + LchQDNim4A88QfFrJrXGu4DEdHii99v/BW6MTNm/MXA0BWAoNfw3rnWxDzXD+LAg + YE/R4IgpNvI+Z8sbFqY8jc/PkboozuBqr11PZERP5zcc9bvcO99d/TBdzng2efCj + lcpjvHdqCLQ0mNq4PB6Mp3UvKxg4i+bbts8bAuDVY7U/kCZaGN3kV16d38qZecpI + 9+ZrbV/VNe7eSfwxwtlWjwJHc/3aewV03Qn4g5JwODil09WedXRAxt4onzNakYhy + KCYfijNGGaBBPPnQm1dOGvonM5AXWZGK5uvEQnjwveV7BHEgdrlCP0hS/WEjY0xK + kvCs0q4dGsRpl0O1hhrFbONloRuHeXRB0CYwy5zASsTaovidRgZ+zOShtYRjKduH + /5M00zs1SmQC6uvZ8ovt7wN3OKNR9GCzzKD/LF9AoWhGj/1JTpo7Jl8ZQjiJMbw1 + w2bQ2GhZfZ4KewvSyiNxkpLeEjni40xptWWEwDnGRJodPBs9/2guWeXsZB34QOLS + XgGYNuSQGuXZ1/gZ30Ym8KNAzPwiLbfnuMg7bUYfk+/kHVmCyKJ+pa9k0J2aiLfx + 0wkEp7PoTERPnVx1KD9Xr4FJGxRNw/6zL8JVWdKDNT90uEH/qCGUjUigh44PbAo= + =yaHY -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:32:59Z" + - created_at: "2026-03-05T19:18:28Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAhzrvzCAjwO6L4wouNvTca0Uq6LOmNJqnpyWceFtt6gUw - vQvjBhHrMi8a1JEZL3blFso0muCx79PrN8Phu0IG/taGYwts23gSDjrDglr7jbck - 0lwBZkb5bL5mp2s/sbW1gpe0UUVCVeIcvSP4vzdbokTgIAQ7Os3v/dIpLZOgVD9s - IFGuEdP8wtVCFwyXFmhxDk+LuBr8/tJPODx33HVJXdZkC+tJl5VoBywZIPFwWw== - =L5yO + hF4DerEtaFuTeewSAQdAkGfmH8uThMY0y1U11Bs5leHQKOIaSgtgQj8DwM7CFzcw + c3umthtSZ8QnQrFcm+82a3kHuQnAVkh2sS5NFIU+YeizIFyaGUKVUXIqdWK9fUmH + 0l4BreqbDV+bgteEIH1lt3fX5EoA7c5Dl/FumYR/V3sS5eQIzDgc1vlOIj7bqHv0 + 42Sbz5+BwmdINdH6trKt/kteukAIJ9FkDBUxi050e9nWyj8xNgEcZY0HzWIveoBZ + =aUM5 -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:32:59Z" + - created_at: "2026-03-05T19:18:28Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ//Zz5aOqAXMOCiF9sAvjxo5a6h4lgFly2cyYJw2L17st/C - oW4cf2rYgkhQKIDC38nJ543/g7mkOt2T1F17fyOJMq4uuGhzVfg8cKYDlN8JE937 - 4muJ7jdoaAxqGeEHHIZ4eE/S91jyY0PzABL9BSd0PaJg20XZO+2iKeZgLf37RC6a - tPmGsyc9M0h40iXmIXJr+rfEVTlEE/NIwh49x84splMfG1QG1TGLk1ZedeM/HE0N - F0F29ZAVlw7aRxHNofMNqt6cPzFuSH95FWRW3dToHHXro/5KoQ/OTkKBUFevj7Z0 - +LdqqY714HPpbPR0BPU0KW8OdgPsnYBcYMZO0yp5A2yD4POEUDDCZuGcJj+q6HlA - whExKmsVuvjWbU+Bb5Xk2mnQbrfUZ9whewwAjGv0X0btk4HCwugbhyUu+2Wk6unQ - A+NJCVxcJoAELAzSutDOu2hFCZKFopxy2GUj+gcMxJEib2nSo54MrJXauTYEKLib - 37FU6NMAIhmEaJSlR9uJG/F8nbzG8BK5deadVv5nUMJULICYt6lwNho1GyKcwqn8 - HUSxdQSTo4dvuc4cDh405+HOWvv3xU+Ap4gQtCIBentyp6fKBx+zTmnBci/KB8V0 - 5b/BCXRz1Yjp7QxUcW6s3aOwimz4V3IWwEjxnVBL+1VukA07d3qcH1UJY1hNaePS - XAEoCel1oyTqk4OGQmUxhRU+nVFiQksishELZmeNhlrw6WfR8aOmDUcayTdaRYa0 - 40h+LMef3KMy13GHMUKmRYfk8GDInwcK1TSJpHuOhLTAyoS84Pt1FA7X34J/ - =8Pjj + hQIMAxjNhCKPP69fAQ//ZjhIy6/JTsrupji3iXY1LIdQAGmRX7tAVMHfLKL2EPQp + dz1yZMAxcDuKigGMQwXa35bTcNIO/e+YHe4pZh8eh/j6ddbDGF+AgGvepclDsIdf + WgfLsL26CuSZXt1H+XKRYX734Joy3rDBhFbIJOPaxekrxTfDfyfiCo28p0k+xbOw + K7dJb8BSRRSs3ZayFMKbaVI2g1pmOl006hj5YIS5LCnwumbiPRbVH/M/MyyX2+PZ + 5xIxaSr++n6kzB4gJOiO5q5xbBqoSjYtCZYtM2du3F16iLTN9JuSDo6FjIKtJcNL + yD1kQyzGV4acC64Y9+r3qDSbq9DuLnfPkYu/HAUuItxHo7z2XDmnh921svPQuAT5 + tz7B8OnkUSjSpXgq+DJtQCmidKaExpsUK1+1iMhGQL/tNmFCx8ACyqFx0q9BmMLL + 2o5hy1RuKAbDTMA0iD6tKnyBnonC0rGhcd7lfqAUgMo5tVFcpFPVCQAF7thi23El + 6OCqxisf7P1Bar+QSLH+W6zCzz5mKv+6y6Bm0MX/4EAvxjArHxGKiUURpUr+LkKE + oPgTzxgWGohpn0PvqWANfvh1slf0nsYqtKsSflycFilvCxjNVPoGAUYdCxVGWfGH + ovucSqfQkGzIFwSxclm9t2JN706SSYhQSHnvzzD5Hkkkt5rfZ7GwO7GUhamUE5zS + XgEMvaBHAf0z4gJzZgL0Ez9C5M2ORf8jXI5z6QZCt8wKfvz4VEjUXzBil8+xhlFN + n7upKvaq0fdLh5M0Ln7/2VTgepJxxC8GqlYqDf88WaiwcL/WQl6FVQdL7xDspug= + =m7xO -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:32:59Z" + - created_at: "2026-03-05T19:18:28Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoARAAupF2GL+aLjUVkUvICG7GWyLoLpfP8lt3t6vsWeUlcQF3 - vNU57OgWCFi3McMKtitlMxFlNIA5dMs/Yz+Dd4ohw06MHfhQrqw+2Y5n6n1K8e2K - /dyxFFX2KE39AwJXI1EbC+6+tphLwZtQ1QiphbVoSch8yJyaCH3H53p0u4QtNfUt - LKvLuAWK3Yy5/n3TNIKg6L4lBm1CAiALuCyHscx/P9Yj48MRm7TnogsDmUnHusYk - emA6dW5Yl/lpnvuMaR4I4sNyDCfT1I0crdPeDtct6TJMmqEWi3EStbd7r4Xffngg - 079B+nRN9W9LP95ObBjZOQM+KqH0Jf4lafASPlPuI5CSntiI/zZPc1Umz4eIvM6P - Ng97ZoGzr5jCH/nKS95yoi+00u0X/9hxbXqnGqd4er2w4he4kVZAgaZlyOc+qn9E - CYxXGfNWbrI/UbId4TqUMboy5G6irZc/KtlZcifIqhhfMpkvAAh0lZ2OZv7fHaHW - QBDusX8XptGi0FIr9X9asrB5i5lWKsdnY5yR18F5w5zrbZaT4fE2YxSwDlhLcx0l - PfVb2m+w3xVpGp2XcBL4t6caKimjPhFAXY720XnZp5Rrln02lgUxFnLfKhCP1t6F - 89xNDjS45E9tLrhJc5sLv0RKE+o9jEmF8+boQagvgI+9Hj4z78BbKHOWSVtQ4/HS - XAEow9Ftu7S1CQR4yaF/9e0tdDGkbB+Yy0yivh35a8BNxRU+KrMfVmQhC9nHXWNK - hqvh7ykpl34ccx/Y+FqXd8HB0Y08Ts78acjfcmnPYwpQJIGFy2s2Z0RHwCBL - =vd8y + hQIMA1Hthzn+T1OoAQ//fjWD58xt+2RqTZbSmGzs1bsYkMajIC9dkrlVyiCqaNue + tl0h2j2LVb5WoCDlC8e8WZjH2Msc/cMTwVTjHZum7/uLOWlIMTTTQHPhxb1DdgiP + HyodQ0LoYFGNIFoSGxqgwnagDyKCEgwGJfwM0xiXS8CRrKZiAFRPV4+wz5E6QECb + f0Ts3sLNjhrXciD4oL0je/za6c4fqgRzlasGEN16mn8yFCqCXpmYzKFmLqXvxWYw + 9jMz8toFiKjkSfrLKUpXQtuAQWGTXgNE3N+eSuyXVPKPe/BwIc0NJV7T3fh20h7n + I+PBetLl+/15E9lpeJil3mV56TCdCehn601/xzOCO+XqhUv0btc44jV5XU03UcyG + O8pMOQP6dJps8IcFyHwAb2AAecSnVa3Bw4tnnYbak9DAm+CmEv6RwiwRJ7nsvHhn + N3wKLoxNJJSD21RweQomlE8W95xCwTt8bZTrjzJhIX8R15PCWlYewLVxndCZM7Bt + VOamJmsNt6OWKQX3kYqbfp6Tbu5gbo8K/rTA90kp5l1d0AiIjWvwCCx1LHO1jxuh + KmOrwfb9661ykENvD7uaM5vLm2DoYtct+VsA5hewLqTbKcjOkPwO5i9EE0r03oS4 + 7IfqHFLRa5vEgtCnJ1BvxXfh0rveC97YqJaniuIlv2X0GSkDfOhoONXRltVkS+nS + XgGFvGIbnYoD84RWZ2KOgxgCYG+l0WAtHZtmthLKRxMLGx0QeurKqP5bS4R0uh7X + V/Vp5pgsxsfYaATFeSAkLOukGFb8lS44M7sbYEwgJs3PWVQUUgorbP+5qXPRe60= + =fU46 -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:32:59Z" + - created_at: "2026-03-05T19:18:28Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ//ROharANhsLgYqGnBCQ007MnmfZyZUqsGAqTdCwc+DqiP - Vk9ccFYYuZuzVZWgK+sQzvUovj5CQZa7SCAgfQr3fZuTIqUKJ18S8XZKpJlwo+S4 - 8X9Zm/R5f6ECz8GrqRkR4O92Mel7C0t90uu5nYunNjZSTU1/KiaVs5UXlqtomFms - OohlbOOfvvnivZf7NLq1H2n/flLVYeraaDFt4FaAkAL6WLClFbdDBoVEnbOvDWWL - J06nA6JLSYH3Yme/1YH7tqdixPpb1u5M++SzWC3kPlGcCuXC8fkqcem1z+lCqZHW - kkVhc3XiWt+7zvdkLYb9IeodObjomHzZV3tx7n6yOnD+aJ3SG9E+zpmgBR6q7w/6 - VhrnrQwIrr6TDhvGYq7ivingC4jChX8hl1eu/V3c/IR0eWgFGmWFAKcsNqmLVUBy - gUJKUotGJt/4jqFooOOJtYtu4nTDLW6GV2bEZPMM3ivwA/mPKJPl12e4yA1YuNmx - pqwGARK5oJnThvpsaSiyhzuN2K7sqyWvWurLcxyd0bgKkejcoWXFSsXRNg4NRMxx - Y4A/wg6lEd9mZ/qVD7nHNvt1STdIrTj/ttrh0Vi7ASJ8GjZw8y6BT0ix7CSDe45a - ivIewvpGAWKeJAYMZXtypHyXOJtVCa9TANSJ9I9BiB6WAYxbfHCUsF6oD2jYDVjS - XAHtw96cJA4fZ/p8kgcFGQxNIVvTUFvobJnHrkyxpLrMb4h8rrxwyetkhdHbjPhp - wlWAQpHVU6L1EvfX7WY+meaekN55Ny+VltL5JqwOzW6AhWUCPGhoopk62rnZ - =0GHx + hQILA46L6MuPqfJqAQ/4z2acXXIUeETerJ9KRGbbeYw4xf7BTe+rqe0Avd9KmKJK + Vh6ilSdlffd6Ni/SKoEmvYIp6ZAppWqgbog1ca41jTs5qgtUN/96ma+kwYyjiHnj + EuGbTYLhrv3AKAUpwMie97Q4YupButGyM2WYzN3BKkdHTsrWHLDblsf3EgheWrek + d4QYsUeBXs6nF5AKxTmTEvGbhQp0ZfqeyzbQOaRLqUCzCMlcqp4aVUK70HPm7Vjo + o/M/ZIXP5oYu64Mxi4R/sf+57rh3pyPlELRJE3fEO4qgAaALB+6uaorqlG8f5l9e + fSDqnqhqHIiJfPOBC6HVRtvlqLW7Mrmy1orfhsrUxsAdsXM7CBCJ62vome5WzRJM + O3p1orP2CXjoyi+4AuZ+tMu00REyFYLuD4vO1F8uazZ5aytZibpvwJ6N8WfJLq79 + bRPwxw4c9b1c95eHKlrlI6BB93UmGo7t7rxCSIwmt3Qv2mv0utL7gI/9S/Usq8bt + uv0C0rcjw3mEefAnowHOJx5UrFmrVpm333jBQwCRq41KLRGxTWjfYg5+ji3SGiAN + C92v1yAnNxLE3+z/o5WGPpXKOdmr87TPqMShymMkZ2htk1iH/A8qC7lAko3r3a9W + EAcm9XAAzWlBp1iGD/RmYCtu20zrHCReRd7idce7qxaWI44NrvVYgocyo65/LNJe + AYpPdmnNB52qU0ZRL6fgyC5WKEO59r3qeb0Z5EX2FhegZu6F8G78/ZsxXQHZ0EJQ + rdLfEUajthH/NK1TzHGjYx5VBv9QV0KZKXFoZKlkfGicuDGsSyC0js8EFagFWw== + =Tstp -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:32:59Z" + - created_at: "2026-03-05T19:18:28Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAeRGofK5r3YJb5iJX8OP8DmEveEdeJepbpn3ApOBnIXMw - VnzA9sZ5pQQ3cd0go8VhhLtKmB6nj45gDZt8SMTxKOg2Ss7deeHHAVwRHH1YDSFe - 0lwBktvSa8Bb1VHSHsunVzbTDHUsqlcO4S/6zZYbv2d7lStugMpVBlg374rW/TkF - VgoRoz7FvCuRaGZpDeSTf1b+5WNzCaGXJtm9XHkfm08iB1uyru6BKfRuHHIVxQ== - =LCGF + hF4DQrf1tCqiJxoSAQdA8t5XPBc/00zkeREBvVAV0PijlaK3LGcopzNCyuaGAR8w + 6Xh7hR4nR+BDgRT6WL9k1k0JImPjHYZjchg7x9YFQUY4R6Gnq1qJcjVeTyuqyxQu + 0l4BNt3gU+AxYZG2Hrd0/fBQFuP4ntqZpyZcq9l8Xz8veiZ0figslDVupCz4NOyS + PtzbRUiW+5mJc7zc7Q/qkZhPfWPXQuAj/cTfTuZNUI2OhJj5/0+/NVT+1MgucI3y + =EBs8 -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:32:59Z" + - created_at: "2026-03-05T19:18:28Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAzTobRQMDOt6IvSF1wPOSqijYc37LKhgE1XmGtOdSOAIw - /oU5UFngmT9WM+SnXaoIBCdtyF3uZXHrDYM7QgoMF/LiuNSq/HQFG1cAV6i7Pf2L - 0lYBRxHU34zfvqN394qyYQHKQgpIL+zjAPX7fU6yLyCoioxbmcfi6RrjDC2aG39G - YWwPKStySsnyMekm7IRcbm9m4yqfru4+lvv6Q6qWrjM1stRThSkBkw== - =BGKr + hF4DzAGzViGx4qcSAQdAbLeKcKN2BHoDyisdl98d/CkvFO3sYWgPtPalDhSKhwQw + aSG1LRn066sDcL5W276vz9Pr2L3ivN8HH67sSswPckwM76WGbIL7d1vDLHTykq0j + 0lgBl2pXfngwIDBBKU1CSsbu4b94WPSYpOgqcl5pvqJwJHqZ81bxd7uqfjiJJTPq + NA6y7dx1cGdEIWGtNFeOARUeuqSWtxFUXTAiAJ8ugzfSJqRPRlKeBvyn + =XP+N -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:32:59Z" + - created_at: "2026-03-05T19:18:28Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ//b4lqYTHZQNv/IYNhEwSbqq7kZT5otuUKNhf2PNgeizI6 - IjpPL7wvfTqobbqhdLriLpeOpXf60kXuaY8v7udKhdnwiFxABmITI8RRWp/xlFo5 - 5oErfrxVH/SuOlqkakS4GapOiUO9EWb5ygBEO/Awq+zm+pAQ3lL2MjR4JA8DXOAz - gogyJDLSPjt9ueVqlphrtpCcoQcnydxGaXtcZplF8jFAo/by3WnLAQneg+7scbcr - TVSixArznPNIC7ptVzXijcupRVduyzhbc6xzBBaTx19yRi9bMforphuLs/01rAVr - EW7yflbpU4h10pkYmzTDESR20+6jmf/3yaTKi7HX7+pEM00lBhusPZGCTV36OYMJ - rZw7ILe1B6bjglIVH22aaPhEYPadcW0Gmu/ls2aO3RcJ5TMnvTtl4qNQfUBex5wq - udXekNMRI0kHqAWfkOY7LyzG/DKkGudYirutHGKUcAsoU7xSkPBoZFyerb3UQq0X - pod5jwoyigMUIYNlOdwsefNGlW/3mOo+dvKIMS08qd7zU2T/AVuCaznxxO4EuKvQ - g0qYmbu76j/hgwhNwVt7c0IhvS20teqU3ZptRSPf5l/1AHzRA3YThdQijq0/C1uU - sMPKPJUmQNZoF8X+gODp8iVwcn9kpMn6j63Mw+Xt+qV5ZCiZ77pqfRB2y6KRzCnU - ZgEJAhC/4Vz6lMg2PhOPN+YD//tZRDrW0FFvUZDeNWgUd2MR9M5p7edo3DUs+9vI - IFnAqHwtfONP2TgVEOvCF+IMqLDi+CtqxyzeLTs7SZiju595HWgSKnYhlbxWH1+q - B2bVLO4/1A== - =UYZg + hQIMA2pVdGTIrZI+ARAAz/pmR6zYKES6EWku4O297Xk94GNeGLWpS5UHlfWE3Sxx + cY29n3IbjDpeGOPYyP0NHQ3y7fIkTZ4nwZtFbm1DLQnSPHJp2E2lBjUmkdH+qwv7 + UGnWcaEoMD2DUSK6AYUEPso58C/GBAEvr4feVFaLWm4cnucoZNke4XIZbyuMAi72 + 0qj4NQeKiUeYO8Z+9lcnyj6gOjmCjiAhiGQ5lEcu6jRu5g+vzBkcHBVYG6h+QdNd + BO/OrIwaWATSSEWqaG09MefAOXw+itzOVQ2ifv7HvLqk9rTJFoqwd+WL9ibAWDSn + J90afOpa904qRtwSF0lu4ABn8iklbQhHJBtm8AD073RokMk0+kJnftVJktnMdg84 + 5VXD/Itg5VVbIvXvlyqQsqJz/yktv/2ML54ONw3ogbnjly1wWmDFuOyupBsSWH82 + ifYP0w2k7hFBQLRsdQM98OzdOUxymioOHU6Io+6oq6Dcyat8eyp4TpgZx7/Ngs5I + eb6TxNKzVxvZxDt9rvqPGjhwA2LnFBg4kU2fLn/tL1Is+/4VvnFy1ac8jQb02/CY + ZAJDSGWTCIS6fsVhAb09fiLTO2EhQYk7RMscLeF8DJ6ftZ/jJhMnrPZRRJLSLpvL + n0mNduXbJn2cGhuYv0aJdaLFKOPocxRZO/18U1oCM9BGHpdJ8pap+YC5vN2HyYrS + XgGh6jutpqNUqcycXu6qgo55SEiNTBwHN059QJ+uNtU8EYSacRGlHK86s/A45BGb + a6VQIo/FM3qbK0u+UF6ZHM85Y5KXx1YDL8GL/D6BBdzG2kootsvvv6Zscv4Hdg8= + =KI1f -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:28Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAf7RD+jw4eBe+mj4wCVFPjz2lFVlQM4OlWhwGM2If3F0w + lMoUOTeRpjmupMXWVJNs8cdJ3PWsDRzw3aLW5ZrMVGns09O3Jwf0+XAgt2mCyh2L + 0l4Bg42emEufRJcA50qEtOWAybg8EgP1Zbdh6uC0C+UT/fZyaYhasT0GBd5IBbOW + lLbWHKws5zxS7yK5fLNjemssKIM+41lsiP4TlETeptaWe+Zseps6J/FYLH11mfwJ + =1jgt + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.10.2 diff --git a/inventories/chaosknoten/host_vars/ntfy.sops.yaml b/inventories/chaosknoten/host_vars/ntfy.sops.yaml index 24fe82a6a..6db4f7a15 100644 --- a/inventories/chaosknoten/host_vars/ntfy.sops.yaml +++ b/inventories/chaosknoten/host_vars/ntfy.sops.yaml @@ -10,204 +10,213 @@ sops: - recipient: age1dkecypmfuj0tcm2cz8vnvq5drpu2ddhgnfkzxvscs7m4e79gpseqyhr9pg enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAxRm9INklVUGpIQ1NFQUJG - aDJBSkU2VHcvZXBMOWNmM01NcjM3TVJ3VFM4ClgxZmZsNlExOTVsbWtrOUk2eWhT - eUcxaVdwU1krYmYvYVp3UUx3RVZNcmsKLS0tIHZjRm9paGxrM3AyNTJPZ3FpVkVM - STY5akIrYnY5N3EvazZ4OExNZHFOcUkKZNByVyYkSqc1cEUIFFIeDHM060zNK8yl - LAhHyzx2UAm/j3Ysp+XuCJd2cvBxtDRvRloST2tbtIG2QF/WTSwBnw== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBUSjhVTlNsZFdrNjM0NFQ2 + Um0zWXYwVmZwV2ZHUklmOXRXZmJMY2ZPMVRVCkE3eFZsb3g1dk1hMEJ4ZkY1cmNm + ZzJYSkY3dW1iU3Z1RkpMREl4ZUt1RTgKLS0tIFFrbm12bmozT1dKRnpBZkY5N2Fq + T3JSRVZsMVo1a253bEFyLzg2UlVkbm8KlqAxTUin+j4scHRuImN/h8Kt7znh1O8r + zovHVQaSMESAalmgByDm+9f+J65BGxW+vX2Otg8REFmByWkFsaqGbw== -----END AGE ENCRYPTED FILE----- lastmodified: "2026-01-25T18:41:48Z" mac: ENC[AES256_GCM,data:2+628ZxPIto0AUhRExTB0UF/XKD7l0qz/NVncKbk+E5nZ5IRGwnhvY5DPiaDNWxskngaYhSYaQZTJTuvC1TuflCr8+IsZRYobj22mYEsrK2KWbozQvYsuooK2HdSWAkE2U5xKKodev2KqxMT+ZY0AIq8ifCo033ro6t0rnIEVQI=,iv:ncKxlhfZ+04rylNmMtOaWyonCJO4gbsuABMAJfVDDIQ=,tag:6c141UrWXNuGM5giTS7Ecw==,type:str] pgp: - - created_at: "2026-02-18T08:34:02Z" + - created_at: "2026-03-05T19:18:02Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ/7BcFkj/hvHFlUYHCHeNE/eamvKufZChaSNA7yqHNK5l3u - syvwxoi7LTIwzW5aU5+3WTGr9Pnr9NPidKCGOHdtn1Gfm+BTs7JTjf+nsOwkpKN5 - NJusCmFjfyFSxrx3TjGLNQCbZG4NNIbJlrLUYhku0ik/IRN/zHdbcu4Yk6cTz3SQ - J31pdcTfcSZVk7l7Y83MGB9TiiNY7JjS9NweklrQI01pMwWS3K1jz7OpdCjk/5eS - xzxUG3sfyUzSDHreSLgr5sfvD7W4XqXMTsa/H514O4N3VANL1sMQM6KkQU6J+MkG - 3a2DPRW4KFZ+GvM2nnI85hzFIZOsUZAR1vtnMmvwdfnyDe1mr9uzh7gvqhR8CCwS - 1IMhnfZv+i1ESHmmkxZaswAysLtDiPNPInnzMnphFyCJe5Br04CCJ9uMk6jOzZDX - CUfQlbpb+AsUs26hsIOCXzSw6kagFOylmkbKQ2ZNX5l7dXSO1rcTygMkth9W3Rl+ - ndLGyC98lXBC/cxfQcflrNeer2QDZL4GBcn7OWLMp+P5Em5OXrDcseGDpFX1E7MI - 8JXQuMTq5j2OoQf/l9wuUsehKTySFS3IcVm80puy6HiH1WLMqDwxH0vWf0r+EmtK - fnlYJ8WkIuSSvmbljEbLKpf+q3r7cik/toIWB579KaZfMCOEA7nRWYNIdujNIHTU - aAEJAhCnKm9scHz1x12UwLHt0JtBEWHodOcD0VVV4FMjEQXMl/xM1eAGKQq6mfeO - lvm6I9zmQowsmjf9lNDZZKF/pv9oNGALb0/JQ7Pr6mM6cA+EUYm/HxgYQkTzHXxX - o4fQbXRHqA3i - =6A1D + hQIMAxK/JaB2/SdtAQ/9E7E67hksPM6KqpSPqLxhwG+LsNqqsYNVC7HRULMqeRz9 + wlOgISxUbFIUAY4xhqvoHLTjDMCoj9FJXzSaQwR1QIm8B6q+nqcxURm+l8eiiVCZ + lZhHbicDVCt00XQIMAm4KhzRqyq8ZglyNljq7clB0OKtb3E4e3P0Isz9cYW+qwZu + vIvwX52BcZ9cHoam+FA/CoZpaJ40t2aSFExJdWIkyUodc92Q9eoquhOBN23xtp7G + G47a1VQbY58w3h4dMfCKDTnZIef+bB6H9yIaMkIxcPznF1EoZSWuTeHQ+cgIeH0P + hHf6n0+FrgtVbrUwUd2ypvIkv6DZFZH+ZCY0nPcwaxMnfx8klNk7RV4Ojro5T2Ps + WhbBRLAvzAr1m9mm1Fksmybax4UcoY2NYpBxAJh62l/cYDV33kq09INQEICG6+tQ + IUJN3OCYV7oE7gc9yzWAhMkU3gulgil8kR01PzTwo2WrPYAt2TDPKPpMxPUSJsq/ + AgWsrgxuWsL5NGcdMBv63vvXSOvByy331sEiOdAPFiTpL0/cKA2lF6FFAjXOMp+E + ksCKj6wij0/bft60tEIpHnC7yKI82s+4Y/cQkur4coA3l+4qNR4o7Q3eb6S5oZtJ + 07TeQZ2Gjq/f87ho6w2I8nGbpYZrdDVDQpFs6euUw6+wOJMjfB/9ISXWVEMx0Y/S + XgH/dsgHT7F9MyU7rgGDdCDRVAaa6RLy9uG36Kc4yc2yZeJjlwOVP6cvTptE1txr + xy0ilZmlF7vdmsAAvHxdZGmAqgZREEYKTiVYTThlBoBFEVZyokvFrbJaLijGTtA= + =cA5I -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:34:02Z" + - created_at: "2026-03-05T19:18:02Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQgAo12q9+hvtO6Z37f2If2XxcO/1YlQBaDBt4j+6yapBhpq - i/asFBi2HONlI9zwbm4J7Z3qfdDyoolmcsAGgcqFAegW9l21/Ncr5ciJNjoSx9qP - +dYWRsSih9YyD+2ViCO+SAIehuVLQn+WhDQCJS9OSE+xLwpBQiv1qQ07UGtpXYh4 - GuxurZV+mlLMZlb7UfdBUluviP3XLF9aer1How8ej/W9J45mcw4aRfh+conG1ngX - Zib/W4Ae+IbrLsxDnQqaAQmdE13maCAk5lH0DrR5/T47kFzX0ev2smC3eatiuNvH - opd8OOmixPItkYbNLPm+SvlF97t8O1ddOXEWdBUKJdJeAbDEg3pWdWTS0jtyN5x9 - bsGsK4EWlPKMbkKMhcmMrHxldv52OszAifNeJeD+X6YyDqCa5riiB+M+7j/rORmi - am58kQuLchuD+CLZEHuG00ZJEBRtTYigRHUU/efc7Q== - =4EZ/ + hQEMA1QflAioE8i3AQf/XUYwQH3IHuPebzT0g/RyUyWlUOzf2fumTS+runWew4Sd + Hyh5FoNmGirQw5W8UsUb6FfVDVAr7jnsSU6t1K8G36/ChtWR7wNXMj3fjjSLwvcy + yoKd9cGUualKDZR5n1+EhZ1IHtQ1n4evi+WsEra/OJEIGEhgVSSHIGUJfxZQzs5H + QEXeZj76146FwKP39GajTkguHIkkJeL4ekzdPD/hvSnQrpNlWZEoDLLvsIYFqSmS + x3g+z76ORkCFbnSSHRI7dZw0Z7huOQPaicIiqM6GKrvzyKV3A82BSE/m5dHsdKHg + PcYOVJvj3k4zDEK0wuL1/cuqxFtgUrEzOnertiq9r9JeAX8hycJvTKik5URLYp/D + kOsQzqY5NlGTC4arNCOo1pLxoYTRcVGBPrRfDPTV+vxDicfMRoLnqyv+TRTZnwMh + 2zWv8YDJwL3n+Xwuz2btwAFlkly0r9F8y3dAEfuG2A== + =/Uw1 -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:34:02Z" + - created_at: "2026-03-05T19:18:02Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJARAAhbLiWAgQCWWCf6LwtQzZI4NKh9kzoIvXD21qE2YnrbNE - fYNWbcyVIn/U4fCDrVxGZ7ALr6r/8QlE/Rtb0M5Il0XMMILiQmolIUeTtHByl7gO - s5pdb01HweeM2M+rbos8yrAwhKfuvhZwRwkQdSVl5X+rLFJt0UVKjg8TjYZWbAJ0 - eSNFpvJsAK1mKexfetAY6KnOG8M/Fd1FvFBNC6MvFdnIYRnz7Ce2xnEDztTkeCkm - gdB0hSsbcFM2TdH91z+x4dLXDJFzrfMWdlYOUBjLpcwgtxiQ7LBqXQ8B/r9Gn6TZ - uHsDVy5zS3KxlazMGiTnv6zoW9u4yonJTtQiHsKOZt1/SbPva7Go9LxY8LO9DD+v - K4+Gp14Ij2J6/zedx+AP7gb9wmH0yTDzP/I/mo5jR21iv6/K7hEYrSu+Uuqe4q34 - iIvJvb0JyTljX5idh4w5qNKgn0QENPhQUXnQ1ABLqm7+U6LtV3deT8yun0bmuuLb - P5eOx6cowmm58b3pzyhGUU+hCvG4ZchD2AqBkVBkYr0Jso3oe5E8K372iy0vD6KD - fpWYQaapbPtMzsf7jSY9KvbDvs+FxOkg1N+1Xi5Hl8ImVxcUuIypR1qlAYYCqKRU - SLzr51it9l2Ra5E2Iu+e6/hzaieuAIg9pol8OKKeeCG11KRfvUtcP7LunnzScOTS - XgGlG92SlsZdm9aF4fKbeoQtYxomwdOJaGOdUNBbX5s44D4JfVO2OB/en9pjCnIT - qaZkGtYxEo/6z6Hlr5zxm+xBGK3eAsfEHmA1bXs3PSzR6PQz++c7/HPMo+6YCTQ= - =mdFf + hQIMAz5uSgHG2iMJARAA4w+a3rfVO4pbk3LYkC0NF82vzrSzmI4pl3cavEr6kKTp + h9vVqBUUHN6UyYrFxmkXqCGEE/zcqnKrl5NJGVcUDkT5l7P3PUybPEmPUxLDTeoS + KctYhoItWM+6SEJmKMBEoe9a2NFPrUxsseV02U0wdHIN5KblH1gY8lr3MPp7K+0r + 3MSePZXxjAvZikVJSxxS/TALmlNMP2cKtaz4VoAWMzhXr8Y8WVzm1eUTN1e5Qxro + v/P1JTtUPGyppglR3lpwRchaOju6GATwAi6+xkYI5EAHnZmsfioyeRIqlMrOn0y0 + hB2mfcOksv1WoqVCbQ2lWb8Ks3PXw4OHSVKZJFfDo9jICNWM+z1U4zFYwz/KH0Y1 + IVuGNivmDu77vH+NEvj2nAxlC4vecOgTqAjcapg310GwFAI3iW/PSOkKy+esWAwl + xtXZDFBIOdP3d6Zq0GswdLGsaS34nXHh3HPILlJk9jNTxXdJpd540quCH4uxECfp + WYtLjC8xstkXZVzHzwgVsdjXbIaZrvoZWDB7rtp9xKNAl+s+EBT2TO7SQobTKVFe + zgOLa/JE7vAmN9Qn/39Qy/rHWR50rW+mu+QTimp7CPgJSmqLtu7id4kUfa+ZSv7z + lZjOIglbVfs11ni5pK4rUDI88WJ4YOEIb5nKf1uo8CpozbCoCkW6T4OwBSOPpM7S + XgF7+9xFppIZCMgGeikXgkvbhvfoxRB02pSxmM79iVhx7uqG/pdDlZjWVkjngGRo + hZyNHQPBCAvNM2cQlQik4+eDbbSqKlmKT7uhjg8vOz8Y2tqSgBpti2ljPruiFSY= + =ttcO -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:34:02Z" + - created_at: "2026-03-05T19:18:02Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ/+Pi/qQPlkMRGAnd19A99wUqcQGOsWU4YnPH53tuMo0/MM - Hbw8WoU8daIlH5mx22IKW3bTH27LoAALz4k4MGHn/ZTws1NMX3xRGz3neHT2G+48 - tTuRujxSWIxjDIxEVHe/rvpLMFMnPlOzYSSeOytQQnJO37v1aeZhDX2UwRFvnFp1 - iqDxoQNJmF34Er8lyEkG01/+NIJo2dvdkCcyI4ioCtIBUKaKjnWdgIU+YLVWlC5j - ILsw7E4abN26pWoZxAajAEfPtq3cJ0uQ8gxWzDS3QgYABIwh9C06gQL0TaMeJ5iK - 7G4voR5TJK3FPwNIFk7XzcsX9of8VfWH6MXwZ8w8/pvAsK+sfiTdlYVQii7+Z+Bp - nAPWQwKMX749ZAbKAJurVstC3EJroxLJhW2M1wHnf7wrD9jjgdNXO0GR+NCLES43 - Q6P75bLX4WzpphSZYWCaV1Brl1BHLLOPZEZdzPpT1ztck+oEldvhREV3IaEr1uxE - TVwnzmQuQ0a4aUdo2SvLkh5QGaP3cR7swgKUxhrSU5aBvb8+lDVyNOYLoFg/yUcz - ZYCvPJy1owuxb54L4tKkkazFMZuGeplBHdrwLU2mhrGe8oyuoSu0EMe1G2NhqN/A - Q3RDk4UQHq2inAKoW5BYgASGiuwJPdq2prHr+VNwkNkfzWm+CsKrERn0aDUItSbS - XgEXxdxM6fCcHzQtrxVL01F8HLzN9H3PCwQkd04awR3ytg3B2YMsb9+LTz6kFbtl - SH0oplhLBsyKl/+kLezPAp2SU+FDLsjrqSWqI+LqflIzQw+Q0rnVpBqFuKVINoU= - =l9Ds + hQIMAw5vwmoEJHQ1AQ/7B/iGiiD+uZo0qmu9t7yNiIdTeLrgmixASdHpqZAx63cl + zRRlqpGRmLa1pj0zLK2RstpO7zYeiiXUZtftCcawrY2Ow2INXTBIbjKobedQzHND + OY18BeIi9bAJofdIT8okLDXaN42f0Jpb6QIhqkraGZcS56yzkTCtqfcV3u5OspcR + Ou6UlqqeIKUjtjVbL+8cPatyNiJqTm8fDJxr+HnCmWoyeOf4g6uIC+eAVKx8zlEx + 8Zd8I3lCaDNb8tOx6nE91/D2IiTE+N0fMY1YknQryr1lGfQbY+5D7OXCrAtKYgUI + pKglHrjTTWREegCCBcCP0SZIZaJVN4YtX79Ti1Bf+1+VoS6DejoUQmq/NK9Ciz5H + p0aH+hBmR8V4bpOSyfvP5GllNWqkEtyE1pfcNqMum6Z69zUqWgp7s+6IqLT0ujvy + d54tkvIAfpaDUuQqvGsZ+wgruvrkRNSRZpZp9AN3B/o/tY5E4ihYFMO16Lwg9O+z + ufY+vo3qD5sofEci33QeGyNFAVmfwT4z0rR8Im5en9x2OapsiBkEqh4TQ8X8hFXv + jFYPxDnOp57kk3QyQVWdLOShsl4Tl4DLgzYI/vdDdPWaaWQ41urBYqSrEvh7cyT3 + w9UfeGz1OczHEFkr0m8uesxTjJjZMgwHo+D25r/IA/JeTZi3l+OZxbMnLrOpFxXS + XgGAewCboM+rhYLnCwGbDN+8w7AAt0Rh6DBMw0FNcsj2AA7ZD6yILB2RuSWnQoJP + 5WZMpyBU5tfaRNo3WtGDwaUn1xHtGuNmFm90gR3dobz5vvg3UxD+FHNXjdDlmPU= + =oO4K -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:34:02Z" + - created_at: "2026-03-05T19:18:02Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdARbLzQHYNPZJNjhxt3TwJszAk6Uis0YtRPL/V9H3JkH4w - kwDHgm3hK45/JMQd2zVTEohX8NajwYT8rPT2Qh5I/HtTfPdXJ239XVHpshnnT97t - 0l4BujguJHWh5ugwebyYzaLe1ScofW2W5kBzHjShZBHNc/6Am09YbqDBgyvYsUKJ - VDCR87vE4lmgpi3Oiu/qDouOc7pvkDR/b6mtyAYOelwXaQDOGnDzvwiJbZtkd+Ci - =QYe1 + hF4DerEtaFuTeewSAQdA9U9yZ/CD+vR7Ee2I5eencLqk8yzk2d7toI/8U+3taBcw + 5Xi2VB+HnOs0uQZheB6+60FwrrHvoQJ4nzt0BC0RPGdP4d/bdzLsRVv6mhym6vST + 0l4BWd3l77NVJmMoYwLjwTZNVpWTJjRpNm4QowSnRc6ncgR579/4s3lXn0e7b/V4 + BKuNXG5vJXiDESjrL7ZeaonG9R3rqMAKQEZ6R6bthOrBM1n/s0qC1dFhVC5faOem + =omsV -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:34:02Z" + - created_at: "2026-03-05T19:18:02Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ//e3LHrAlZTsovbWnS5+rXtWaUh1hiCU7KLEo2P/qdFbXo - lI2pb1UZq5VnnXGhGic6F6ayjEiTx3BlYg5fqZrFqKrxMVS4f8SK9ovoNKQjnmDo - /7djLdKkNvcuVKGxWY8/IqsRoYNbjEbot4qVxP1PRRkjKo8bcHoX700EX48bznaf - PrXfOXjqaLX10nZ9GurzFBY7/35iM6ch174HLABQjGpcOyHDUOlQINRMkr0787dy - d9cGMr5/YnixPo0clf6ebKEijhgg0v0bCOk0CCXybMC5r4f130FiffvXDkcQ8hbc - eTiHlZS0CKZ9fEko597Z9zCuKBT7fAsBxLyOugm5KNnfbQltEW1jJe3jnXtoOcnd - lNxpQad00cTcuKQIKaz4pidZkS+AZYxBUaKkXrtgYVtGF/eihpLRRaF7A1QbQU3r - Ckt4MrPepeYYraXTR7vxhTJGmkvXWys/QGI4kFpN8dXq/J5uCCDKo/mm4vl5aYkh - A5lpPQ+6PgIaY7c4t2hhvvOuE/tfJ0WM1vhQD1mtLGWdkr+KUvYhUppkDpqEPN7f - 30WQwW2MJ3gisMm9pynax30vgHoE3LbbcyJx58aW+BaXKOpDfnywNjwgiJmj1rxJ - 75cGRc+Y1wZIQ3LvN5Z7yjHJh0I0xmnWYZSO6dFZiYtJ9NFmp7xUZXZiBmJJOmzS - XgFODYRvfcJiH0TuMY5RpHLLibhEwTDGSbPp1plrQmKNoNSHzYv6xBSetu01KCpx - V9PmOooMP34JUi8Mr6zEsN2kXQvX8me57OPHIizZaD9xyGYH50DlaAWeXBz0vvA= - =NqMU + hQIMAxjNhCKPP69fARAAgOY3b+8Fz3p1+RJOqYl8YWqvArljWq9dzMCt2fkwiSmE + 7VL2f3RAY4icqJmJrSpC77+AbAcNuqwHLdOT2i+T3Z9Vwkh2PYFGBTmbZfaF//Uk + pCSbR2P0wlV7amcizyyRmwmKIjTKi+/EYiUuOCOMLvujP7ErP9BJWkpBZekMt4cv + UyKhsgrZ8tS/dA/DKNSPUWCMbikyvfa1DyQPPwua6nbxtRK8o03oiHZVEQYN7VDh + Y2JIzbGeTMJDkUs9C2saBiFAHQH2/P6MCM3mEl9dTNo08NqXzfXe4hGxX99Sdjig + Ut1EAGFY+t4Ktr9SurXvcCNLeWPMEjeQTk+p2jh/8gVYLdQsHYcVGOa3mBJDHvgG + pzgt2qKiFiedoHjAPrfZFyzT9TnQltE0YNpOkoHtw+hUC7VvUwg8iplsF6q2/pdk + ODFtvfOQ3Sje2LsSWgjlgL2sB47VYibNELUdiOaf/aWN0cB4VilnOrcPj9A57zMi + yQfHYvEagrbI/lvP6AGcqw4nYZk9n0vVGZWUGXQD2GlyP33u1Q3W5n6DtuvIGTGY + INY3OnXj+k//a+qNN7JEuqfLs1eDyinmjg9iPjiKEf6QQmAFtkQGv0a6Ouo7HSsK + sT/PWwvyRc4+OjF7CjFXQjawIqUZeeXedDoza8rJ3gGoIrnd8iQBf7taMXMmaErS + XgGXfD81kq14zLil5IlJO0SvfHWLjukqsfVl5we3wfAqVuHXMFSvXVnFapqVXx8c + fKExMfdz2rc7AFI+W7gsoWRLx1BWoSN6N31ygK36RwUNl/VSYp7TC/B+BGTGL0c= + =+A2J -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:34:02Z" + - created_at: "2026-03-05T19:18:02Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ/+ILpA0O/7j+tEG5HltJk7V2bL1p1opcJlKkjAYVT+oKx1 - 76flbSyyzR0IUOgx8ZFheVMIv80h2dg6+dSmjGGoTNZR8hOOaKP2FEKBPbbBmFF8 - up96JXxgf9YrwBwdjXJFTHYC1/DtXC/QnVosbxTzJZ2TxzbRxeev+VDXDMPEG8wU - 2Q/YwAM/fUPKBQgi+YGIRBEwbBaw7Ut1WdPyQ9UnCSwwNoTzeNSMMZGhRG9L1y54 - Lz1xo9tR3XuYMks/iyM4uZiQbuwcr1WNTFvUa6ScsU5+n3Ucm33P/19w9gxDI8NJ - EP3z4G5p44cKPzwciTBGkoTHPM/TSLeRBqXB09qkvcl7DVhcw9zY1DaZeglnTSpf - Srnux2jCsGlhRg0b/+1uvUutnRyqI6J0xVPXDxz1vKmlQpIT7ZpykE2OfuoSFjXm - 08S/r5bvBaXLN9JcvKHf7gCC0Iy+97ftvLeIJfCieByB45vm+jxikuLGa1QzaOFd - n2awMpw8hDlXKbjhLA486eUOXTbjuGWWnGeN/0jkvDsuBBxS8ZbESa0+EeGjrU1K - 46jtwYCfOqn4V15f1wWuXwauD85KqImWtKOLnNI+7Hl4o82r3ceTMH+mMOi9z1Mr - MA1TNO0sTJfgeK2UW91SaCYAgqsmaCRKFViYeioC3s/GY9/m8cmcfxaua78I0eDS - XgGSJ4yYgVD1qoUV2GpNcbhmazr/ygqqn4yfD1ZoPpLfX6D80RLvTGWfUeujeA2r - qOn7T7ZeVeJiZQMhT+YvmkZoO9CnV1RIdTrUkXS133qWbJMDg3E0eq4uHUYhlHs= - =3iZJ + hQIMA1Hthzn+T1OoAQ/+OCt9ZCAlI/5NH+GvVaVs97DFn8c8GvGVMwfl1eSK2U6W + bgrZk0Y7Mt/6Flbj/ud0XJls+YDKuJY8jB1uk+Wrz9NRwX21DPv1DugnS1y66oF5 + EhrmoAaHiac/Rg1VCdjOKIlDi4C5473WLT2SFFxH7DEUjMoTVbzb2wx6Ow2ngumG + ccFis6coYctvYMhdsJs/shGk4dC9CTjebZAjFxdX6hUM2QzOs8yIJh2DJf4Hm+cV + 6/RcFGkTrLXR6cJCMZDbkWfx6wMAYwnMkQ1j2s7BSOOJkg2WTd59P0OrgEXyaZk9 + JgINEG1AcCfqclWyk9TWUaILSdbhRxVnZWBWTieo5fw/r+j+sIcZFfUfD0F8v1e/ + sbShb3ODC+bb7O9iLOjlOJciE7U7pUq6Ob9jXapdoQ+LEPo2SzzzrlAmKJZ2zPFf + LDm07JI5xAy2bePetmxO8WFRpPNIChLgrGU4Ev3i90aXJbP9ddysp1jjt/BAEHj9 + 3uVkfmPbH75eysUgeySlEjknRwHzJ3SJqVA/cTGujJXFhMzx7OWn5tWze5At03ZT + oFiygLO91DUFCm5eDB0Ge6Ov5Y3gHx3lNWdBXvP8CLDJu2Dks80Up8/8voqfTt8B + CZ7oJZaMFXH7zMb51qAeIhavQwelb59mGGSPAgROei2N9hTapxcIftDM5/nM7evS + XgEU+VxYhBzYKnRg4viofMJYLHeJDNjjCWHb/OpUJWRAC2sZjJ6ndqJHaQT+AT3O + 0gU+un0gYS1UiPpgVyv0Nd/n5vlr5Y3MgXcWdQeoJ60/SJiz1jxHGgw+9NgIVSE= + =A2XN -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:34:02Z" + - created_at: "2026-03-05T19:18:02Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqARAAl8ILYY7UWS2HOyio8L7RIHzHs27VF+iS/yrkgkQGgmjX - WeG7MBEYjTsEtivxQzVIBkBV/m4RTH0Tk+Y2lo1ZGSqVOCAcJEbSYdBO006wKzDz - bGno7aj7oCtlGf8PTT+4VfA6WmCiJ4thznp7W0j6X5eAD0+xr0ec2YlLphiko5ns - 8jXiGwY3ieG4HzCCUatYZnj3dBfKhfzsYc5W/jgHI3z+TMx1a2wdQDE2ov70i6CM - JUcEnuOtDvR9s1X3CmWE7PA/7sV4j3DM+hqnRxNe07bxBsXrXiYH2jX1UVJWSLw6 - 3PlqUHiDobgzVERKHWmzneEn8JgkgPqPIC0sQkTvjZ7EnYCPRBjPw0t5e4AHthf7 - ByQ4emWC/f9Wlhznj0OFwDQWe955vAqkA3GR2HZfebQNbOifNejAJBErY8NFZewx - vFEQS2m1J3iR9qoetPw02bbsLJ/nWns6vVI3pjMeTKOXVpHMUWe5K3LrGOgyZI0k - EFZbYL4nyKkmqb2SQEpwMVaKIwji5Yf1a5kDv1mpuUSA7BP6vBcFUsLdItIQe/z1 - TUv9z1KT+h8kvAgnK85q71F6ADBJiki0SeLHLmOKlX8OQaG79dvhdZ4WULCOTrpF - YC/YXt3Hl1Wdp26C8OmZ1PyGsZRFh9JRSx8NsTdPVUkkKjpm+qV8Lm5K79X69VDS - XgGzsXZHA2nP+Pw030IBDp6QBj1apKd8M61un2vAe6HR7rvX7x2D9f2GxQgUc1Ej - egmur27UvfxQQpdl+TX+waxT2bps+ZScxMrT50pyrRhnUL3OOnYg81M99w+X3ak= - =K/KI + hQIMA46L6MuPqfJqAQ//cz/zfM1Tt694ZPvwaGEclTgojnAT1ULmndMA4L2ifd4W + 4l3AAzPBA6Onm6Uie136s9Q7sXTxU7rR48UjrvuLOSLkMXy52mTYgy1Ls82e6AX5 + YZFfoqe2yXFlKIQZgWylgf2VSdVIqKsnyciZaUa2p0YkOU2/CasITOVQipbWonEd + KeTbPGtM6gdSHqvhle5Lz6wIWsLa4+CZ3Bvozar1YFEZWU5CSLKOoznEL4TNZVDv + DIlXAWAs5Pv9dgbPAI0jd669pjiBvppsYgnZRhurknf+w/mEoCFerytYNVpS4LW2 + A2QwDw7+KSgUSIt9BLNxzlvxM4xrl4PV6EhRDfk3vUti7Z1rNyWNSuMVbUh7xrY+ + fN3RFZU/OtJHF1NOMN/bTYWi+UG30NLghuyYi2k+emSWDcRByolxGsnCEl5YVgcG + BqEh6seBi6f98X5Jup7l3sJc+V/903aOqK66BQP6SZGUDmCBHOLmXSm/XAGN6QlN + 4FqCjOO7AoxRVktM3bl/vcSyy2ii5TdCqckvh451DFWIHGFZ+/9UH9oXJ27h0HMZ + 1BnRfTvcMc7BkgM4NUMoeGhShcvi/M0VLbcEr8zsdY4JFpN7Usjw8A8Prp18y7c1 + bDCjf6OsOf5pxshXDlXqGfCNQfcDVtbZYrMCf/3ijaz8FCYrEPUVZ2Sr6E1ZZFvS + XgH4AWqxCAabqXOOnF2fhqoYShERPodQ5bFUXZE1x1vh77LK8b/fxkgsCB/snOnK + TZlEtXdF6UMpZl1EWfewQQXz+UftlijFl2SyPZzB0/RRkTH6urNWvU3RlbLEF+A= + =AXBG -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:34:02Z" + - created_at: "2026-03-05T19:18:02Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdADnTFiHq53K9oTSIsquZ5cMnc9BP+3U3e3Fl7sE2A/low - 8CiSBy9x0namqxaUu6FWomtyVPfvy6wVpeu4iRnoJKOT2fc5YVQIbKx2nK6Uklan - 0l4B6hRtz3vaCJFg3PUtmJO40812zQ+OoSawBfG+PcO8bZ3elJcG1OaBiOHhY0xV - k9Rdkn0YWfucfBJlG3lZijXVdlcKf1B4WVwO9d7DnDkWNM0lyd936557pJ2rLDo2 - =DY4M + hF4DQrf1tCqiJxoSAQdALAYlmotws1ybYVQhy4wLEn2d4IoylPO2XaawYsurAXgw + ncvUfzFnqX79KC4PCeeVrTT2bpe+od9gbbJXuRcS6kR+QpkxBJEilp/6oSrid7iX + 0l4BCAWQXXjUmk0dBwZNj2e778GXk+gA3lELmwYcPAJXaz99D9zN8mjsvE8+Qivi + mGT5id0qp/q8B1bLA6yRram1zxTY9Un/CmsSsK0H4UdJZZrCcx+dQWIhTvjQ2Ptt + =vhje -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:34:02Z" + - created_at: "2026-03-05T19:18:02Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdA7G9RnN/wz8iADoWHAjCPmVUUby+nCHwIcJqwZ3LVsy8w - FlQI9e/DNMALWKoYkvXGuF+WMC1l8jrbcyOrD+ZLCselrIKxdDoVVgtF1jSfta/o - 0lgBlNkjPWGA8jjmUXHfuJXXZ2Iykvkd2wVLqIETi7IvYuwZOtCipJ4weBw4sOzd - q5gqTV4L98HrAsXoZ6625gQW5c6RTu1RQdn6AI9W6R+C7muN2dmlBkWR - =zONg + hF4DzAGzViGx4qcSAQdA6vopaCy/fS6ab/f6FEl+nCm7Xa5LILEKjCx8D2hLhgQw + p1rFwDRZSQwrrjnlkicu2u0xfHTAA+Lzc3kWh36d3U2XiGZZdk51Lk5OkkS4UdQl + 0lgBOBEKcHLKnesBRJfpUBb6HN97flDdVX2T9F2NmLLAlBpXgCWRmt8qv4dghKNC + pWW4k8lpRycJCzPUgA67KfReuliT1oDFkUAwg/bkGv4s5WwjKQCqcM+h + =HwlZ -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:34:02Z" + - created_at: "2026-03-05T19:18:02Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+ARAAjmLtxD9mnJM1h7DggoXQLlEhZfT85Cq8HkS/jPbNEY6J - UL1J68Nw4yOCeV/JaF+H5zUNqD1gfEr4l+NXg986l/CbmUMrt/9KSHWSEUfCQC2L - vtj855ub2afES1AK3HGiFAlY6JksgN8VSnqK/kucGeqPolzyevtduLMQo/aKJo8b - RxiupjxR/smbtb2khlJn4YgueVNwFHjdxTV4mhPY6ADEMM08vWzScRYzny/gTdDS - /rS+b5kJJ8wMuFDI+XuVaoVVjEF6obipIJdmFLNO6Vf5eKHnSBUg0u5dnQ9cVDNI - ilx7ovLnSUMOFSQfbfAG1b9dshDXsuyEfzd3d7J+tj57Zm6ONs2h4X4Pdk2tsWvk - l4fmhe1r8VC6Uru4YGDLIt3YTL5bVx9X19ndl4F94NPtTgAzFD+SJ2h4LHP6Pj2Y - RsVRJuyXg5IP97dOHSCWf3velvjBVVmfujlyrFRJMSOGVAZ5YWOPpHbhAFy+YqbB - bRx6lHNfsRBYiHfDmjBD3ztXm6ZMu8QVjXUq61uErFmRT5im+9OB/twkm26TDT0v - cnG43ecA+uGJTSH8Jr5S1EAtdihBOW+ynbr9HkfpHqOG2QaM3Eq9n87hkiPS90dM - JTQhS+SDeKMZDWrSPQvcUQtNOXhD+B1hrTQ4zMkZuwefNEEZ8EC1g/b3KhFrWjfU - aAEJAhDyH6oSZMtuxzUnIns3X1R7QjkNYOjPhpfjjN2TMX9N5WKvhNTUqkvWQS1E - J1/OeZL94Oxm2tHN+XilWTCVSNEe0DvsAVcPIWvzOB1zI/QxJPg3PySJkB31GjX3 - WEcHZCZ2YfBS - =XaQC + hQIMA2pVdGTIrZI+ARAAl6uF4HbiQMKEueEM6RkFikGVQwIhJJFlVmSyA4sZm6vU + RUU0GvTPJb3mU2+uY/ZjxQWAsBEvIQP6Lae75HAvQ3rh6Bz39W6GeqskJPj/SDpW + HVkYY6eIcXE56Vx5z8Tvyrm9ZyXmR983fofmFN/MLUc/wI/TgqwSh4KzFk1pi5AJ + Q0DDf+KI+DCuOgQK8l4WXIJ0BNu/vsXe/gL27b570qTDcxHm6Diuuuvd4363raJN + /8zSySduVrpn/e0VjNKf1yYdPB4yfH/hi+AAxgNKALxyy3KtpD0+PfdJaqcPXp70 + GT5N42svAO1AL+eIKbTKF3IWkYeawo0FZyhyTfUjszhY4PSsffj9Qu7UxwgXPva7 + zz83Ukrni8oqTYn6ou/hJXBVxrSxxGaUFO2ngSiMeB64C0oYTihSyGNOGLhbFhRT + rEHxzn4nK37TSpnb643DSQQPozKgUyjqBV82vvrnl8b/1DkRS/lw5nOmrFm/SgYE + bawXSBDQKcCb6gP4sU1/duoaQ/RDK5PewVCCpWt/y3b6ocA237/9mP2uLOLVKXaP + Qt/vEzLk9CmL5z9D8waLQ4bnrTDlNC0v71Cb1/C+edyMEl1oBTzg99AH9c6S4K6R + yUvL5yWU5BHOwmBuUqcsUYRS/2zTk2ArcqTUlC7BGuli0RKhuxWHHkce+tNRG5/S + XgHgjx7LXo0qqpiulCrtlf5yW6n2YPTEBpXs2lxZMkkxvM4as8LoYhJJhb+sbkm6 + pej7LRbihZJzR7eSsUw92PpQOXo/ujRlwEws+iMDCFC+IcsArhFCcQboomFYxd0= + =Fnej -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:02Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAH84Fg7dmo/6qcZTeNWtql7s2HEZgRRG+sB2gZIOQxCww + 7e+RoafysizFyukizm/WAkPvjEej/XSDUzcH/n2DSdN78m54lKxoeJPt89V9KvEt + 0l4B6/GYPvs8rXcDrHrvkzPSmlSZDIo1nFodOvCv+tR0ACdfR/EnajoTkJgmuTvq + xCjpZtMIEyEZN0e3JdkirxFP+B6F0ZpbvFHS7eb52Q6SBSGyUdvSseueDxh40vdB + =oQu5 + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/onlyoffice.sops.yaml b/inventories/chaosknoten/host_vars/onlyoffice.sops.yaml index b554b5400..dcd464970 100644 --- a/inventories/chaosknoten/host_vars/onlyoffice.sops.yaml +++ b/inventories/chaosknoten/host_vars/onlyoffice.sops.yaml @@ -5,204 +5,213 @@ sops: - recipient: age1a27euccw8j23wec76ls8vmzp7mntfcn4v8tkyegmg8alzfhk3suqwm6vgv enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBjdWhtbE9lWWZUbDNiZVc1 - anBZSUZRdzV1S21NemE5dHQzc2JQNnk0L2tFCmI3UHJEYzlvSEExVGJZeUJtNHBB - cDdMTkRwR3pGQ0g5ejRwQ1pIank2YzQKLS0tIHlmc2V1Y24xcHNPUDlSdE9rNmpp - RVgyK0RTblpqaFdtZm0vcGlLb1JMclEKm4ZiK4+XHpMtc1GNXRtkMGNdIDezyq3R - FdWqhPzpNYbsyB9sNjzKAMa+G0HEeg8k04hWidqaMyoO0kv59IjPmA== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBDak5YS21qU2w0ODZuVk14 + bVE2QzJaR3MzdUQrQkdCNjk5UWJvQkZITkFvCnBIRURQR2svbzRXenRLY2R2NUtP + MGlpL0tWRDloYk5aWi85OEt5SHJ0WG8KLS0tIHR3S0Q3SnZVQkl0TkVGNW9kanNa + QVRpVFZISHRrL0NtK2ZvVm5UclZOUWsKFlHwzXbNiANHaQPhyFu9L4klDIkTk8vs + F8pRXJGQX19zN9hI2ed+rZdtO8zWhpzmm8uyouIvTE/Y8qs5UISJig== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-14T23:40:23Z" mac: ENC[AES256_GCM,data:T9laVSnqqQRfRK2zdkw/5d0+JS19o6wJBTLj9BqH/B7snV56BNOJjaOZnYFVudQWhCIqP7S2Gj0FO2TCEa0H8aedtlE8g7HXpakxyP5/p2rt624+HiFQBvW1+r5srlru4ebVKB/HMTos6yjl4au2j5UWJe6LtnE+ww4JSg6lt44=,iv:5Is9/DV3qLo9MnY3WQcJ/NNk0Y5/qII+zztUXUDQN6Q=,tag:oklBHWxacS4RUrdCKegbIA==,type:str] pgp: - - created_at: "2026-02-18T08:33:23Z" + - created_at: "2026-03-05T19:18:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtARAAlYb/eVWV5qT91fcQsWvl4I1JuL6+A/BSGKO2bTF8XnI9 - RqCKZFa5of36SJfWvQ/lEQo9xh3CkCYOUh/508OqB6sBPd/IyH5TMnSoAsZOXZf/ - fzwcF8BZZNK/LlWRzHRKCMQoVwYLFCQZFVpkiWXd/tLjPou9+xr0Qzml8SJxx3Lk - eDVcZwQQR3K2X8iWcJtxkBD1XPgmy+yid/OcGO9enqC5wkKjgEseGIlOqx7IfNhN - zEyW/fiBd2AZHmi6RTFB60rBiKt6IohOTt33BC70y04EvdA9RN/fqnTFN7q8k1vj - OOXoBMcrtH3aet8baRmsaZsrRveuYu3UCctOAQD77Avc4z890Q0vr/xs+/fcM0iQ - 5SDiODaA9nUU2NzzvPsDCbPx9BWkFnkL/S4WnL4FEWd54HT6r2AppGfASDYQbjUm - qCJCU0bl6L6/XfYzRyZkrBdqi7WLUmNZpgcTbUELoOfG9qdWZriv9JcSTvTNDtI6 - OFO6eAeXAa2YMLlMd/L4JBDF11YXm67iFdqMSIPm/c72iMq/jJ9JcamMB/xF/GDm - NKeEubOYQBKxTPwH8JuwL8DI/DLE9A1LnwgpdHKVacmqbAZPva6syrfUndkGQNZt - w9IyTqKlVsUA56KlEGQxCcLEbiUdxisLWJhfh2j8mrebZSTyunSdMAa6Vwc4tgDU - aAEJAhCKf2i69sjnwqS620CmOyjR22OBF2abYdmVcdhsNi4DwYlR71CEE8FFmjYi - C3gKxnR17OJtxs83BHLEXySf+HEdwKlfs35EmXVlgyRqz83cMGpPKsONSN7dMth/ - NwBYqUSymjZt - =v5/y + hQIMAxK/JaB2/SdtAQ/7BbW6Ek/aH1tIkxfz3C0FCTr7RPTqJAWYdIL+2dPTmZcN + GuO+0JEA5hQSMBDOxi0axzskL7LH3OyGrZg/On0MjQ6vPHlUrKUJBXPDvIT+b0vu + K4y7fi1OGnZR7HrnwKGIrA4iFx2V1km2Sab6HRpngVUw5SS/7ovdpNWNnbvay0wo + iZH9JIqRwGj2QExzXppHDZ6Cg6DEy8GjmnkVSDgD9QF6wqwNizRK56UI9NjtxBEs + TJ8e+DJQV0AWmkCiW4lmqsc35S1wnFM56BaP01r+BZQ09ChFiA5So6OXFkRiTEbT + kLmpou9LBHldC3dv6mIj2yfawvbqFo8heJXlhIFUSbGTFjBKujSIpj6LoNTZ86fk + dQjUIct8sAiSgZRc+m1aT1hSx4DJuBIb++YKrCwchnVML6ExsODO57fqe3js9IeG + sixc99jFOW3IP10JygioBdxcoqwmIZm2y4y5HyFlknC/c0H9i4AnM+te3j5SE46y + kzqhbtSmPc8S32NrxFENQY5Z7V94l5Z5DL0R1ddXOv5nn7Z4nf/DYcbbcTJ4cf7d + 9qgSxIhaTZqmkjqbW0ffFZ5+ewxlb/aW3GdR24pPGw3wuF2FJOVWXbIHxmOfnEay + +5ZRsltA/cx902mn9eaFs6WPknE3GMqjRLsQ2DTqDPZxEzJfqDORAzBua2bqXNrS + XgGPZcc3R3ND6S0D+S19KYLGZjPZymUZshdcU2jXFbekCG0xyfxnOA6dmn38yqNo + UdpnsMYxxWbSuaLfNcPmcPPdB9tAEoyixZYmThTwkQ6W2plXTOsDB3H+cl5Y6Z0= + =8iGX -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:33:23Z" + - created_at: "2026-03-05T19:18:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf9FJquIwKISEHn43A64a1m0ZOfFuNNOCZUJdpHmaYLSXqw - u2FtendUzg5GZ2YCRvwnpYmFp8oc+LL2zjcsgKl99HIUrRpeQzyetPh+nrCSeCCL - s/uFU5YRlRdCd0EyeasunJ+ybhKhOf/DDBSyX2fEcaY+9l98jzNuFl0cCAAsWg+Q - 0I9dPAghxKUn5QRI0YezoPSXd1isTXtbLGySID7SOjojV7gOwbh+tRGwaLixvp3T - 7zjvUBk5M1o+yOnz2JexWke1w9YQhLdR9AFaZDzQS8TvRelClb+zptrtDN4Gftd4 - p+KoeZPNyRfrm4fRvx9OMnQ6MMEz47ULK23D2E6xWtJeAYzGhUEc2fnlKu4i3Rvu - X+SwnX+IBlzn15zgZ061YqXM6TJo1tiuILSjp5MgwHxHWYmlWYSmVa8cm0s88+hE - FOe0jaiLarRlbV7bTBTm9OWXass+IkZzcqxXpgJwpw== - =AFAw + hQEMA1QflAioE8i3AQgArNR+t5gA2n45rRarMfcyGldy008Q5RLsW/jxf9wg03YU + NqBvB4+M2wVRj2ihRjSwo0NMLYXyD/K3FBVA2vTQlz/UVoRMdOY55P2le/fsA4j7 + Qpz6iFwmAZ3Ds+Ekk689CH/AU0kR3xcxlU/I1V6rskkrnK+IIEzvQcl7jhQCBc3Q + O1csHrGgl8A62+iJcozhL3mu9Rpcj96pNmlQJ58szMTvAhvrzKlk7QSRlPa48oye + u96klFdTujHXP5dgf7RNypFZkhbejJhZ3fEvlo0zAUx/plw49LL4ZHEsOBIlGWdm + 5QzHZC8f+nj6BtuUxX6ci18MGpQWSJmZrkjKK5dyStJeAZtkD4SX2PaAM0z8V2vp + GsO7pC65gEvW2NAxF8NmSAJ/Q3vcRQZrDd6NMalakbCs42mD/X1C7qMspbpq0Rbc + BKdO9v8eAhB0vSgeDot17VAuo8CLb4O0wDMX9NduLQ== + =eL5p -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:33:23Z" + - created_at: "2026-03-05T19:18:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJARAA5V/9JgvkDo926AP/JruluSc6XbBKSbdsnW3QhQOC/g7X - DRMG20mDrtSsv6U1NrfXoh+O3FHoFWbhGpHqoMdshtpElg1wTLEqL2V475tUNqIi - KIU2Nzbfs7zzZGvSZbeyBj1TOZeqVzuPUoUFwi1OEdSCYtElgAweADDrUUjvX90y - baYdA3kbfeKacY6OzYNjAXPF224SOqF28iSHWvYZlgs+gpuBnrQfAPVDpnu63rYU - LdSqkSnhc9YnF3p5EuYoKle/zCP9lnLLrnccqpzV1WmwIO1KZTqHUNdNxoWcCsaj - aQfco1sxwl1vVJ30MMRB/Y6Lo0sgOR7L/WJjvLQTmqjwOCSIfMJwx4hf5Y11VKFQ - YKia/74CepE9mGNf9jgcEB/GMH2EU9gWHgUTpBp0rrS9MPBB5nSX5kb1s6yBknBU - xicjZlKzSjq7Yng3ZznVdNAVkFbxGpOGyk7Ku8Z5fSuCRxrnMdDktGG9jN5VUlil - cvITvK1rmzKKh8b0o0qJvhuwe7KiO6AhhXEQM35Ws4dmKJuBam06ODUtuPx4m2Hm - QV5W5n/keGyimtVNuRDGJpIj3U0P90W0yzD1faDWEyb+KKsASveYSgvQo9gndKdp - xu6YSDm21uXT5AwDt2PMn9r6ZGG/zwSzEZTl+4sKyPrO1e4+MW0UtNTjY+ZSjMPS - XgHycYPcJuqPCANHuZxsnBeweLkhdojJQ7s6JWIg3HFPT4fCtOSvskuYtqaVf6Rr - YwKL3KIImvUR7X7FfohWFJf4hE8a+qbA1yeRnggEgT1Zvc0VP9gDQBPaazek1fw= - =Ro+S + hQIMAz5uSgHG2iMJAQ/9HYAlxyflZV2OgPoNp04HjXT8vqxFJZx6cMUIDpUWAXZk + vHmyDMPQQNEFMXGU9HpiMHaojyEcT67krxDTIWz7X/pHuLoJhYBpxpsUpuroTtC6 + nYta21Nfj+ajFVSEWuWdrUMHN/RqodRqSSBdEoxHOCp6+WGBkKl64WAfculZQeuN + s3ifTxRydOHsx/Do8nnh1suZIjN8PEpKuHjYzeJYBqD0TLasJlZ0tRYoe4VwZLWS + T6kVdx2UpV87mOQvfsomNpFaj8EOiXZ6xAY3lzZQBoKRS1PGu+SUH1MDQxb9HJNw + uOkHG+vqg+nioet8hAbO/2w4HWPCvsVG++WiJIEnLlN0otGtoH1RIwapowIG59dS + SKQ6o6afcqXNwlbFrGDwGd5uOt4l6xHIKPcGop5RsbCnifxmJ4Qc3lWxx+cTjRI2 + fX2w/y2tEZ/5tbrduv5dRBoKk9rojjBN3o5lrXdLYLLEvGoLGSnLkwx8iPMsZCLI + 4fvMDxCAIU1g2LyfaHIbguQziRHxvnaxZDNRTUYTiAxYxoFMt+0bY952i8riCYA9 + WK8KJxJzImbInYLuo9DDHQpZPeZLu+HppTuqxfZ2+7Gv8VKfvs3xUJZwqML5PfBE + zmlIs5nYV8JiG0Eh3BD8oxYX0z3SJlpFpE49+IyJVJKBS5aY3pB/dfJi02QjoSrS + XgFtQZPc9WKi3golKq9f+DHrKXMAhoa01fnIYhYHtagY868+7AAmxC+51qLMWUFr + R1+AMOFOAjw+e5Xf4m8qAST+Sc6dGhHwtv63joW2OgetgWrrEN5ZaPGSyItnoIE= + =WNON -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:33:23Z" + - created_at: "2026-03-05T19:18:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ//Sx+fS5jxS8sNWCWCudNY+TRTdAtgdiBWFWJbI4R5jS7y - zRbUPcJFWeJQt8SI+FG8FaFvNZWJBHb8K88heVQK1V7Ssuk7tJ1rTefsyJBQ5Rwo - ZFU/xSjkfvBExSbU69A2FlvGy83AHI6O0NiLRMduXBlZLNY5MhFoaDITwM2KttYS - aeuQyeplyUVaKfNVQ8jsEJZnyEYA8eznyIV3TRoh71Tf0viOmgl52ITqdBS7WAuq - lRhfappIePqi1O0SvfXy1dWazxcVwvf6b9X2W4I1IVRbfEdGT/QLJfCunTG7cB5l - 7TxD2bqXal0+CpSJvw6bwMu69fyQicLRriAT+5mqpUyJo5ljyLYqbLFI2YKQE9jf - lVhkC/KcRaRdlQIfFIWy2np+4+v8jMErKw+lRIZ/6paiG7E2EhnB2Y00Amy6vJxz - x6RTAa89jpR/AvszlUCd3ayMsaWsJiT4S9Gt2mR279U3kRHDkx1G1cr2kCBGpevA - Q9n+tMu8IGVhY/U8WyFCb/8rtvapCL62EH9vr3bUKXnc8mEzD01FY7etJENFf+TX - E6FaFfw0HMkr02kEsv8xbdu8DWy4YxgVpY2MDYEtmJhnHwm43wRLXxGpSjJ/JtAB - YEe5CgyiBFYbhQnt1Om5IvF9fgkuoSTjpKaGQO0Uh1Hg1i4HZY4ipHLWnk9mJR3S - XgENIgoDzTO+caA8U5eDtbXJtSm9jjQFKiq20NT0Y+x/LMyRy8/5er+Lklt0btC2 - flGUYRBJGOBmprcQZ7RJEi4APW5/BUvZtmLxhTxnTgsD16phCCtgkIVs1anjtbQ= - =jTMA + hQIMAw5vwmoEJHQ1AQ/+OqhE1M1Mx1aIk0rngsXLJf1hpoW+JRvbeAvhdWyg/uTy + 68XsVkoubCKhDqq57DMPwdsjqU8vUGuRAf3yCcBXmLVdUl6oOrd0PmP471M0d+6/ + o/tA/Ke7rHEDgb94DO10elS/L1RvBVHvXtz2Vzpdh2ovi2m0JdoRNY3IZ5zWJfHa + Q3RUUkE0m2tTzMap1LLey12UsgU2IroUcMAxD2b4csZpjWTKplAS4Fu5aluvfCFX + V6qrXznxtnBgXbQLddzA+ZO/0/8CjQ92+rSLKLzVlaoZJah5lLs/aALQlomowgJw + NZqfa7Ik0YinWglF2ZKk2JpnkL5T3PNI0fK5Kb4deyehvUKd4yI2ADdtoZbWy6PC + NoyV22xzlBahPRygH0MLwgp+4+hCRMI+SdIWVH4/NZ4MAHPpjvHcsplaoxzwGIMk + +Ppa1x6POga9JJA80IAtnbRavc7u6hA9isVG1wDEYzPMtRJimhfBJQ/2MVGD0jAM + jDnlVPLxOaKNXUZe8RMgZFwL/NeDgPPPFH4eLg8MMY2N2NpW+358XE3hSrOhnns7 + X9Sk+nezqBAqdv2c0Y9nxyAG5+BCnecEWL3mV6My5Dn0AIdt5oF7zI7tntu4PaHu + HXrUNDAxdsA8IfN3k/UCCMbNeyfmD1ST5kxBQhZQkIQ9+DTdgAW8vOjpahXGhanS + XgH2y/Rq9M1LaItpY/86ws+nkt+zqe5c2TvO6JMZmpTYZgIv5dQPbQyPTl5YhqGm + pFaD22mx69kxGCx4YULauXgMl4/vPYrm7E2cjl5VYUBmA4OiaFzZlVxlMadFieE= + =AxSa -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:33:23Z" + - created_at: "2026-03-05T19:18:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAHW8fozqT0n2QRu0WlaYUtEtV47MiNsjzHcYAYukPhBAw - DMbfrJgR+KCzMLVHvuiemEBP/TGaJBOB60w4EjzDGTsx04d9P8n1OSSY2v1/HTer - 0l4BHQH+VBydYclU4ZMuWcCGpgtE2+NUjOrTKug2EWOw3dvhXS//c/ZXU3iG5uNh - L1Z3HBPrXVBTWQWitS8ltZJarn8aZmvHNM+Rg8hdb/1ZwbzrJurKwisjgmuqIB2k - =nrb1 + hF4DerEtaFuTeewSAQdAKAet/D4YIXBFrC1oXu0OuIxaOpOVDOLd2OF3jtVz3mcw + vTx2G/dI/IV4Xl7IOKTvQGRJZEqo8BUmFu/GLr0xgzPC0y9qZGuThCl6It+Mbq7U + 0l4BHbPvS9tOW/WzH4pGJkziVrMkrWHjRL9Ymm6rUctFEFEeX28ZMvCgmvWqJntQ + JI/abrczgDFnjbQ32p2y76G0vq3zFX95ecm3RqeO82btwPTu1mboA72bH7DM0YSL + =swLQ -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:33:23Z" + - created_at: "2026-03-05T19:18:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQILAxjNhCKPP69fAQ/3Zs8k4t/nGQNdlF/Vkbp3+1VTfXmqk7nrg0CHNT00j6x7 - scYSHBpIFu6qn6Y3rELqhoFdG2K9ekmFSy6d3r1gP3DXpFa9lkEfKO1JC0UazVZx - yKGpeI4rp7m11YXC4E9cOqfjv3lbGtzt3jhDaekVsFMa/4oodFbfnEfGqlmI29jf - /HpXCuBErFW2YaZPMmJLw7gL1FElbmyqzl2AebKeQKXT6Ebt23vxrIEEeDQEuzyG - ZtRajlUP2hdZf6T+wZQt2EqruWD8gdQLQyEEU64VCqLVvuX6d6P0By/ZJaoP7Rdv - mZZ7cuLeyiBsFGUhAbuDFspqXG+IAR6J3+hUbI4ck/EgGrDpteI1mpxAOTbTgyrO - nD+2b/zTI9hlnXe9Gs1RXIdM21GC7quhWtv70VvwZZXDMqL+8eQXjf9PB9AVynwU - X063VCr1EUTyDQ++nlpJEMT8o9QCf7ZscyruCjUyfT3Pmi4svDKmUvuVBr8ES3aL - S5ZFlDQZNcOaQsPjNvON6d2xkXHkFsovYlW0qj5rk2fpeLo6H0mCnLhHN3pa/VpA - cCrkRYWT6+mszzQqO1wNGTd4rB63AYpe6m9p8yTuKl04/VJRXGxoSfSNLkCAJBnS - 7mHyJ27LgH0qZ22hXy5dR0BLrbAN4lTLEDgQ796kz26Xm0smHala1vWbA98PQdJe - ASPz2PCJDCX1EvDvIOXXEZ2OXE+Gk3mdm6c19teADg+VQUs+2x7QRak781NNHoHg - ARppuC15vpGRv/fbqN1qGVLm/pOLv//JAnJzXeiWO/R7wUUl1XWQMmNpnGBRjA== - =OTvy + hQIMAxjNhCKPP69fAQ/9FuIr3QwLtOLzWZdJCK0mP2RjRGokNmcw9SqKQFQyqt4v + 58BeWd6eEqIBl6OfQe+uEr61sXhqbQ1Ogl0mJyGyS1ZBypYeulvHUJtLXEBM1Alm + 4p7XROIAhkSqAv6+zMvRxV2A/Cz0hi3kS8RdPvAfwzVElFHsn4on3rM77Njqd3uj + 88DPJkSjLc1x0tNTjXC2feLoJq20sL4NLJB4AE5foa+AdlQEjfuU+FhqESrmJzXI + gA1pVW8dAJJVxXQ35OIn8knIUbqcORn1Z1Kjk3Xr7K5XVbMQklfoqFplcV/ZNxsh + f+dUU7ynbQcbfhy91vpxjvYlyrbgTEMqhh7+sbanF3F9leTIB6q8n4rOBKcoaAf7 + qIYYVv/nRkOHOvFDvH1pKTXsX/9y0LVAhExovvkwCqPtWouwmtANwXsvEOCSqLtO + DHC5QPIHS7EpB9I3sOK92Y5hxZrK3kXIphMgWY0ogaR/JcMrS1sc6ltRMElfl1qT + 9rA1CAoZ6o739ONCAKDR6H1Gv/Obs8upjR6GEVMVg6fE/kuGrIXPUgMz81hGqJqr + ohngQBDz1fG8hlAi5gyOuMZmb3Dhlo/2i43l2fwzdpGjm663Uc881PplIWzuX0w2 + FQLnDxd4Txfgs94o9CbcZayESq/T0iTdDbsFH63qk0mkeyTTczrddM2+WO8ZqDTS + XgFfj3f4aFCqJUuiEnqJbIQ2yM3XEbFf/18uHWqmm3D4pz9MIySsFR7zF9beVUmR + S9c+nBjZJDX6khqcvi3XBN7DaDrSgbrozJqAITnfsJtYAFkMGY+fsMk0mqUs7S8= + =obon -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:33:23Z" + - created_at: "2026-03-05T19:18:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ//Ua7zE+pAtvW09/PbGder37omWJQqyQ1N7/lX6K7fVIip - Fk9uFqThMyCyngHc+hMJ8hHKl32etV4Ao+SN3/SpbUN5oxITQIoH+I1CcbnOG6BQ - tLj39e4b2pN4wAnoyplJIT77tcAg4o4tj+y6VHTmXYTm0VvCKVwCeGCZ4tk5MqKW - rSkzxGhSDBKMiR+0udMISkD18UR8EKf+JXQNuPmhFkwxCPUD+HjTlDMiCaq585Pj - Rg8FvaE5jJOIO9fkK2G4DTBux7mEO1q21HtUCMnbh6xlD9z68rnK3xnP3yC0tyJa - kuuBRsQFwNMXtLC1PbqUcQwju1UPpZMGfb7EOWGnGL4JIP0dC23S0y/xiAKHwuVO - z1LDdxvPqZmOFCmpvkz2FmjeTOzsbOCJ/sDileDtTScyl1eYj/gBsDNpcVEJHbbh - rQIH4XqGxJUT4yLP1TfeFDE9IGwhGbDc4Fz9lbz/Yih1Eu5KRg18AWHw7kmmWsbr - 9bEAT3vLPaBV+z93k4f5RjVeTPWXXSWb07mWbIxborwsVW75qCjWA0l9e7k8A/+U - Szjx0OVr4tkJrGF2ZACbpc26twS8qPRlaqFLgeKJXsR/0BuZMDbhyX/cO/fAZr+W - 7x6BCNrGKndO+hnQ3TkfN3Vz4Tpo9c56qifYOTIyCOwbIh7Qzw/z8bQLRAVHDFHS - XgHKxiOHwDy4nDgOAY8Y+MmXutwvePE+az6y4COlas57mSkFpYBa1MXj8gQoqLaD - z8comGjGelQ4KgFDtkn6Lijw+mpQ7nIvH4keh/Xz642QdWisSMIlRsi/pwG75sM= - =KZ9o + hQIMA1Hthzn+T1OoAQ/+IkvAzSsPs2f8wMewka6CWezRMHs6H9HVge2YlHyJoSEW + 12pypsfWnmj0qgTpVfuVqTsDrmfl+4/gFw6ONFstbVkzx//VwxyJTX/cSxvZdguo + iDaHVCaYlrQCoi3jLhTV6qoOxho9kqcf92iPF0NKqtGEeNZW+z6/8B+4RvF/K0eZ + mNt9gkcTP8Zj8b7/kBifKLA2hu/2lEzoHdYdi73wtRURDb4e77zANHIG4PmyLjX3 + tqnsDM8Lwhfoqx4tBpYn+BXNfk+LY1LSXVqLzdgNNpPU2Q33HYA4mARfn1Mi9w+1 + z6r5m23Mn6/iVATzMDEkPuxZPA/dOL6w1jufhe5u+FhlkIfZBL5LGWocFFqEz/mz + +kXY7I5VgE1OClKRRXaesTZ2BYCVBX7Uhob7BSsVdQGXPHfZ5Azd0YPD2i1X4AF6 + 1RQtJcnYBggkDf6+UrWBO5jtQs5R3LTiprrj+53DTtr6dBXeBOfx5qEw7eP8Qzwv + VzcgTB/6YSfGe53sNWfoDX+aJ1qJvRAUIsJN3S7HKN9dRKwG/Op6reNCGLMhhEUV + RgGcD5MWfDCMvh1mtPT6+bMkt5mNz+TwZi/H22TqMyn0dTSzNu87l7lDJi6Pt8JQ + /8LH9lciRN98rT/w2jv4TYjJrOCiPW3A66G8VvhWURuxNryHQWshugeI5F8Es43S + XgF9akkhBbB/sSwU+Ao54625tqVzqNw6jaj/YRXcNi3qALceQVd5uhs2+Z401QXL + 6AtrKmhYBC4a7qmA3SSt35dnxjQPVHzkoQ97j7dXmIvwuPNtRVM4jSAzKxyK3Zs= + =HFXu -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:33:23Z" + - created_at: "2026-03-05T19:18:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ/8CksS/NcgVLQVKWhRAQNX3mIRGLvjGfRTiraVzrRZlFQ5 - fKKifzS8CmN9LXdCTewXaRDe9ruUj+O8jBKqRqcGEftNSO/0Bikt0aU+DKlYMNc+ - ATWxUcb2hkIiFzrf3T3s3YpgjaB/wV/zPl3KRtpenOa9q66zuqowqy0gqdfRWzmM - neyx/EBN6vO02x3aNDWGV/NmCRuutHHREpgKqKUUh3HWDWG2CM3XoJWo5Sk8oA92 - /LdREM896RW4Jp/g8nGI9jFhZfWEzWAtOW21XIcF7VbGEe09WGLAX7sZl2NcMVvi - d6ASBExigaZqpauGYI6sJffLYJQbKRtrxuUAH/mFgHF1ez7RVrtDNBfqSLlIH3A2 - VB8Qz3cH0Iv1ORhO58bAhsI46JA263V9N5N5i/Y3K8nQaIIlRBaPLJdykaAfudtt - IG1AtFuDN9Co5OqJGZykVm/wQYPhrl2TP5ITwyJ+injQf2E01emiMwfnOHGQ2UM2 - lK+6k5g1JoIZmRIZYxI8ZV9umlO5CJ9/YJ9aFJMN/kkcvRWLFretKJ4IprOA6Pji - pz9C+vD17T5BdG2CVqskJbUNcOiXngtYDI8rnklN1VA6Hz7fUVtqG18IT9w2r7T1 - jUxRQN5ChjaEtwfCbSx60yT3gy3lx01SjxEKjY343Vr9+3GvEO9SZxfcj1bVWcbS - XgHP6R5EXHiiwvY14GkO6VohS0PHyBsodW6FAo9QoDPpRQqurUhpm4eAPKMf6n8+ - IzoTLj/AsxU6OjTZhQogHQNwzY4EyNoaxqgZhp9XzIg0r3vFVYIV9giISa/ge2E= - =Iae8 + hQIMA46L6MuPqfJqAQ/9GmnXEM1ajMJHgKGLo/5qqcIBumDZwFJ+tV5i8N6ESJhQ + 1aGj+Kge8XChs7wBtE2lUe8o+azgw87eZnhtCAngcgzi0lWgFR4c0eAXOzLhYXZt + pSI4btEhS9vHGLvPJagXVUevOa0h7xyMgOcptiRk8w+eVWu5JhSTqzN/GXPNHTAi + Y7DJ9ZY91Ct2lCFX2zjbWTBD1zElxLUVDpcLakfwdujcu3pKbAK04zrgVstI0sCh + WH5BzmGChwD9i2MgSOgD8kIMb+GZVBw93xd/MXILogBvD7O8TtEFhrCybBtmSkuZ + N8FpMo2PyJGMFKyBdN+KNDqh+u59ol4FqMm4WOphoynCMFawamShScLFLsm3TOt1 + tcwZMAFcTxiV7zzZjALr9DPrfj31xhNAIonm/byYUAyjMdml3QTpuHmn9XhSdlvs + VJtZxx5zQel+gtP7tEwjRTHNBwraKbJIHatWQdKVzMSZ/Ga5a/dgOUk7RLpzq704 + d5sSrowQQfKv4KKMMJm+D77yj+64q1OhQfYG8WYG9433zq/CaEJEz0QI5G6PFDd4 + 6z9CU5WnkJ7YZDGOiUwdPRkf40RVURMKAYlx6pK4qxwRdDxrR2EmzDped+deFTp3 + TuqVIIySS1K/Fhh2ygvEpeptWaN8Y7/XxXf/FBycPaUnIsTTW1sFbagW9FyYqX/S + XgF6zy5Tj9JiLtH3Qjx6NqkctRu6I5X4v15NbWEYUXVQug8U/xLun1/4T5wOsDZg + YmDnL5x7wogZjo2BCqY9S1Wuf2aexiQ0504cyBGn+m+nNd+xyPbZCQJM/55tCO8= + =dgUl -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:33:23Z" + - created_at: "2026-03-05T19:18:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAYOvkUyEwClp2h6S1ONkjcge066Js1pe0g9vFg94jFhIw - FIQqV1wsnnFHla5FZO0KwJ+3EdI8oEUF/4i97HYqTPR400sRACwyMSkD4Am+Ku6I - 0l4BprhZH4OI0KJ5lkstsodFNQo+DEDCFuWXfV9hi9NpEAw7IVvde2vj1072CR3O - iPxpW8jm2AsIqrxh8ryeA003ocSSYl7YSAc9h14V92BONTTAp8oCHfS7YD06amhb - =5qTy + hF4DQrf1tCqiJxoSAQdAXX+5h7CdVFDpn8V3D5wW56xwylXuuFbDgtRI5bT7EWsw + k0Z9njafq5TPlazuNympG+DdbbbmSqRz9yHtnsZtLEyJHoN0cprbjtcsSTo5On3f + 0l4Bz3ig/hHDyx/5keoMqdEVYIlxRmfsEeTBMlRzuxCSaxzw+wV2IFfyH0X/rLAO + wh6gYHo2G5JXiLy9B/PeliFC39OdzT/zm1QLjUGpSoHJFRD9sguDuNLv7AaOiv0p + =d0Ao -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:33:23Z" + - created_at: "2026-03-05T19:18:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAUG+q7E2Oh5JaqQlmc4IuMb7BS488PFak0YCQSW76cncw - dj0wAERRjC9JdGW+KP6PUK4um/t8Tup3iZGsuHFF13BRaHatNOY3+KF5BN1fEo8n - 0lgBWVlN382WG2+WZtjuYcisqGrXFc9OzT5iJeXwsYAc57HvmIyeLXToabbVdbi7 - u+6tPBYjaRLCJ0Yxs02yJvQ8WnZBBfNPEpTxB+YHeZdabQUEmyhfV+q5 - =uXEx + hF4DzAGzViGx4qcSAQdANeEx9uK7B1z5gP6JnY3XueQvJFlQihEt9tQu28YpwlMw + cNxHTuUGEQUoK22TAIDYCqXpnTTPn+UvNxVbMTsw4zHdZbVrJLArtQqhTKUWizHv + 0lgBNmgA8DhzNZReNiRDVoeB8XDoh1i2IZ/PihQj7pJTOxINfRi0mQ3T2fj+8vR7 + epsc4hts6iRgJa3WZYCZxBlXdYvOlnI2BS8CmwHP9uJtErjg77DoB9sF + =ZUKO -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:33:23Z" + - created_at: "2026-03-05T19:18:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ//QhWeR5evdbWZOpkOZSFQZPY+O01eeA9SZwhPD6Et5xc4 - /Hrx4UDkRZCvDxOpiWnCRvwsSwsxf1b8ex32U1lfGiEw7KR4mUdOVYZXPapeND1K - Fuv9PUtKvfiBNo8JGRnF/KQ5GlCvKt5v8txWkSxmVvTbjMZ5fW/zk5Ei3pIvL4Hh - cbe9TSrnW62eZrBJasJ+Yh0AI+sPc7gTwdRxyjQTq3oMdcpXyjqOe29c43G9R97b - phcX3dAJq4nJIm491Zn5IT0YA0lzyfaiTHdkaJCd2K4aFNZ+5wPKokILeXqPvI9i - Y9rXpUOn2YHSjQzg8tdQ35AYo37Z9E9jlwhMGETnHSKybaezDQeAo/j1KGPCdGEK - x2R1q6ZcC6NVEqMaRgRsEIhnguBhI/jLJnI9MllKat3ZCc4IKOi1AcUaoQVMRs2p - wGKejucWJjAT31YiyiJlkeS63uxb0oKrBacIjSGrzXNz7cpYH0r2loQeG9JAKLFx - dFtXVaFl6GlOGIQmke62RMNLChluGi/USYS+XPhwMDsXc6PLgmpI5knbVZYmbbX8 - UMOcbpA8I06o1M+WeT4KTpkXnvDWnPenZyYMxGycQVpJPyrehalVIEPODdygENGu - +hC7i3r4/A+NRVwXRSMy/Vxu/EKWl2mrMjAJODEduYxWm/SuEfHb14ZtwChrSxPU - aAEJAhBU7Li5VZJpeLyxS7t9t+KFeMupQGI0ReUOi7fITuf4KF6zQ7ADOEOnUpZg - jLWdNYIv9etybcP4qyjf8qsN3/So8TRI+0srFXa/uha7rSKjB3/pxYtNmwP4jTYw - gnrYq7JeMcV5 - =Vb1o + hQIMA2pVdGTIrZI+AQ/8DUSM4vdkXAxBsFjk8BwBO502/PGkfKZPs/Rx6Y03VZbj + 4uQ4GLZL2SCgw5VsaiJv2vv2oyMuSIbz2lZvz7GFsV7puFn8rGXShM9dgjoUmzxK + aMt3RepBYGfrGmj7yCCfuJVDMT5rARO13rLYx/B+Is/tyiU5XSjtncSTPUZ3pMqn + zUUa37ySCb6YOea046eW3ELT0nU0arLbXmsSOERn/R5KQtX21i2xi8G0Wakpotzp + WIqe7ugQAn70jlFkSCB1os42Qsqtu3xKvG12J2Pw4m9BqQgTECdFRZdbz0IkzFyE + ijJdNQVBHS5TdFghtSYadWvrNxpC56CPiqPp2nu6Ge/EbNAoQoVHFQrdLlShAzLL + m62J3CRtbDguiNFX1rRvubHv410+qTW50ZKl4cjN8/h0awEuVnQIgIgv1ZVEs+mq + iGYtuMJEJ3w63+QznNzfXYF23ENgvoo0BTFerA2yEwvqGSSxSPAKywlxeKFUpdmx + lmnJzftdVcJCBNRXfx0q7LNRhb4Yf+UsEFxZ4m9xJtecWJFKOpYB1ClLnKRLQ8lX + 61WiGBCr33ZA3ZFn6rhyC0PVNfWuMKaf+SJ15OG4VPiEYN7ukhYnodf27Wpad7TB + 63sXfot9mb/4u7gy24yJJR0gH2+xWEy3CnZ52RN5DKnZ+//TQgSKtXPkA/J2sIjS + XgHgY3BNmuw1cfkOq2hfp80hnW5EUdnPBCLaBvLdubRKRPuaRU6HgZLANSevThnN + rZZ88pnpnrdozMhDT+bZ18RUmr8OFtGeHM7xCyyNaxE3aFZzyDjvFwzWAYYanCU= + =wP2R -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:46Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAGvsuIKkn8ZJMdweTgOlKUefXZOu6LtEeY7jOAOxlJiYw + tTAiUDGIs7s+gMQ7RPYwEhyBz92gv6Rmm9QxsqgH+CR91W4qkelraZToz7687nEG + 0l4BTP2xH8djFaUaA8tI30Apx57Hkyu+THMeDOelElqnIuc21MkDKphLkPsL1NbV + z7YcB0Bzi5ltwqMt+9TfLMa0R9CZVDVyjOo5tFL7OmBuCpfGjb3Qnu8mb50VVDMb + =Rg56 + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.10.2 diff --git a/inventories/chaosknoten/host_vars/pad.sops.yaml b/inventories/chaosknoten/host_vars/pad.sops.yaml index eb19d0852..ae0d3823e 100644 --- a/inventories/chaosknoten/host_vars/pad.sops.yaml +++ b/inventories/chaosknoten/host_vars/pad.sops.yaml @@ -7,204 +7,213 @@ sops: - recipient: age172pk7lyc6p4ewy0f2h6pau5d5sz6z8cq66hm4u4tpzx3an496a2sljx7x5 enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAyb1RteVV2aXMxLzFSem5s - VDJYM240V0VDRThEbEpWbmI5d3R3d0p0NXpRCjgrZmNLWEJ5ZDZUaHVVdHptaXFa - UG1NbWowYmRXSFV5ckZYYXU4bVMzQVUKLS0tIFR5R3NMOVRsOWJwRGhYQmFLaStL - Sk84a0EvSjY0UGdKZ3MvSklBa0E0UlUKjuS3v0ZE6zcV+ldweFg1XnBjJUfkcJsa - iUiWmzV1IKeBRapp41CKIiELOxxRrp+uppCAtgE41QgMqD0m6/Qm1A== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBTQnUzY2ZjaGVnQXFOblFj + WGJkTy9zMmdSZHpJK3p4NFk1dURtQXNqL1NFCmJNN2psOFNBMFR3SVFudWNFZUdI + cENWV3VUTHZKY0lCWEMvRVNDazJaLzgKLS0tIGw0eVpySWRydklWdk9reldFd0xr + SzRBbUNaWUZMb2hXckQ5ekFPQ0hSQ2MKYcb+ylmw46a5xmDZSW5HfxUvwtsH2Aqw + hgMNTkiAKyo9JWjhbAwdkZd75BTsukIB5846Fbblpjo8kGdP10H6vg== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-20T18:59:09Z" mac: ENC[AES256_GCM,data:3BwneKrw8YKmfwIoDyNRo+SG6i6VMW5tECQrhMXiq/mB/14xHHrUcrWRanFknm6JB518Ohv5HEjeHsrYdUehwpzsl1vtCji95osa8JdZY5moAt+4f06viRFTYa6GrfnNKToUR9obZFiPAHlMXcTTx6y0m/nPrtFZhuNtFssOdxg=,iv:4fElvIvapfqSqxRLE/NSiWyun5hAA8JLsai/Eoa5K68=,tag:mPKOquAMj43I0WhK6budLQ==,type:str] pgp: - - created_at: "2026-02-18T08:32:51Z" + - created_at: "2026-03-05T19:18:04Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtARAAhonhm9/TXYG7mei02rfngxePCqSu7AILjWhVRhONd9gH - h4WoJbwrF4JRm3qA+DyzzFxKf3WNWIv0zjmaAnoHPdI8jrrvZ0cqm02t4bAM5hdp - 5Rbu/o198uoQJb/fmcGfp85GM/y/iAu1TEbKjto49zVa2/aXG8RJ4TAqLdzaoum7 - YBRa+jz9dV544lhmTkvE1d1nf0oRqAcP/0dr4aYC6i7zvWPITjjy+4s7IPqiYez8 - Vqnwq4cOf7HnwwHS9WfOJUUoR3c29d9cLwL2sXiwV688k0BBgQ/tBMGuRSdpvJSA - JkWn0ckoE9DFimn0HCStP/HdPn9BSgVDDj21RbzmC6BuG7bXDTZk23eBpBpU1197 - LxEo+5Pxhn4SbAjloL4UxsnbxLz979m/Xgj8g6ex2A4BZmWEg/7LZlWi6mK5Q601 - 8sykgaTfohz2ttLtm2DcXTcJWhyyJcPSwcn2axegZDr8wbr9w0cSNM2JV6WR5RYh - LHZEvYFC+wfqtK7dkfLEJWh6ATPSO3iHiwjkboYcuZohr8enrLJbkNR0WR+qX2zX - wRHl1cCHFXd26T5+IXWDncPIRSrThV6ZEp/OZT1/pwjBx6WS3eCgrvN+3H3IMkHT - dkckDfxlhjqHr4L1U7GJMeI57/+KwYnAuO+FEgqMv8vQIdC8NJSGwDcQf9eQ8tDU - aAEJAhAV1kou6b7eI98a0caDgkpbDtSbHXCqXtOnUgqu3b22gUpCZmN18E7W80ok - Ey+fy0zARdyEi2IYcjCSdrHn5eBfqTtxD+NIj6ucCSN4fcnKRlXm3LWryc5at7G9 - GnviBEyX9ShC - =fZp0 + hQIMAxK/JaB2/SdtAQ//enTP9DIjKYQmXTzuKn7Sjzj+Xz1YAwn6hk5BnFC/lfVu + vT7ein+lHvFHbCIdzLDOSVAqLaKlmRQBEENG5SSugZBbzlgFoEsCEKQ8qfW6E91F + cm8Mu+HrctPkRioPONA0VSuh8KknMhpC3tgTnoRYd5rYlBQn7TBdT7aASssChwH/ + U21XKh5K9O9QfKm/WQdm70R9V2XYF5umiUaiT0nxgJTWPVOtb64Hj0G318p0jt2n + ssJNdXoHAEfcsZjNZ3Yyp6mP/sdjHyMfNVRqvIVDz1Scve2anZ6e5w5O7z/MrAvg + kC3OE9rdVMJpLXV0BtJwLvc6R37BSreUK0jFZqK6OQcVpk0j16xOnY9RNVQmP6lC + HtneEGown3EvtqMCsY2LZ++tIJr0OZorYHI4Poj/WNtX/pY0X5YwcK2RxPXdzLLL + Yy5r+b+OZsVkASxUuDC58+jQpxXCrapp1UrPJLCsSSLOza0ZOTNcbFUxdHIdTJB9 + nGRi553WVgevAX+EXXeLYHMi/gIDdW99uhwZ//0MWAxgdeB7Ro0b/csrZqmqohbz + HGp6BViwe9U1UJMUGUENCBuevI5zqJZHLOuMhrSQsdEsCfYJEmTwa9DPTh3Hc9fR + Hsskn4eiPLFVo8VGWJAvRHo0r9jbp4RrUjC+LY8pFHADeHcBeVofRM1GQZ570G3S + XgFVHSzTBi/d3PR3IY1K74st9EiHaRq9rzZHUqxs9qzyD+tSAGg5CyjBwF7IjGzh + Ec/jV4z8CxhTbRNYy341ANbaZYZmqyx2hSXVdKLCP3XKI7Qv/w1KgGcjI9S9Vyg= + =oy/y -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:32:51Z" + - created_at: "2026-03-05T19:18:04Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQgAkaTaCI/HFxJZInrCqv+NLXe1mi8X1q3zyDW49G88ea2T - 1nOLkQr2BUPEHbj3jcavHi8xlerV6RMqyvN+AHNaFrXPBYUdF1NlKefB7g0DnFaN - sK2dzcdokjiAYQY65PGGP9JjgLS7/+9gGHfMhFVkUYJZKHjKhHxcAMRAa5yoq+7X - Nz5haqvIZG2/ze5lAMvLnfFBOgfh/lAokZ7fZZo08kYlsBP3AIWuDDG+dMyY2gfq - jWPMKo9tuzSEem9AfEE7K1ahrpllkee/S5EqZk01Km/+uhZHieYqHZRQu/yVtMXG - Ckvpt2+HVpSB3n/RuOJBNC8jNLZRG+9GGTzZLVLxfNJeAR4w5vNyy/DawhdtmKc3 - aYWL/N4fGVv5RRl3Uw31V6oNpRntnj/jM/cV1JdOvASsH4gb02ioqgyAc9QWaHmE - SmcjpcFFo8EHCeyVcDqrEUE7UIoFNs9jrOZ4SK98rg== - =or4O + hQEMA1QflAioE8i3AQf/QVlB2zh1xTe1ZMmtZ9oUKHTBieKXwozsjvDiBtJ5LvDL + OHEOZ9qTN3bu4rvGVn0ClfhPFHlahenxfTPpP/LbJYN+PfAV0m5iGL/uJaLqJedB + 917dUS1dwGSBFPDGXbQaOBaxiQPXdOKCY6LyAQC4bfnPzwsJyJVtZ0BC5P+vEmQJ + DML58cLZN2fSqk+eGvapIf0WKit38K7tbmfQOhTz1p11s6mI2JMkS36z2tRkkpXD + zlgEDygg+7Z+srHAUYXbvWozihjlfWppM3sgyBF0WyyP2EfL/NsUzBlES6tg1fEH + NUAN5ZTBQUEUn3iEbLFk7WK8K18ITgrVGqj+6Am1kNJeAQKeJZb3fgBTlX17KWIq + pLyV5rGydgwVHyOVpNpxI4J/h9r7o1ZdjOcxVcI58NZH85zRTpWde/Qg25glrSmT + QeOHCCmf/D/f8/pOiplHE7rerji1Vz2Pg4CiwsdvIA== + =kAr4 -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:32:51Z" + - created_at: "2026-03-05T19:18:04Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ/5AYUGCPMFEIAnQwoSP0jPYRDcfpeu8Z6ho9RS6V4pV3g9 - 6DLzHWoxfK1AQmMfhtyBDf7OyVgPyfh+MlnVjsl18r4W7K6Z4LOxL7unv5HVtoj2 - tXuX71AxW1wmjIyDi37XsMiahPhGJue757of2sXoMHie14F+6r7x7FsxKFmb75kT - jNBitbYMYLCO2l9Gsq2JpU6d1YS/q2DX+P2dAKJZfsI42VCzRZ+YVYOLeqYeZf13 - OrSjNWUVsmg+penSSYKa/6xG0ytQvjPv+BVEU6Qxx/k2gF1a1rLtj7JRmOmr/aZH - wciHTPVgft5DBlFIQred6kUhcbWojIRvu7mF8hISX4Uk0TEZs12+9DLSNJ4fgG5Y - UvLc/zmqyk2i1cTEaVqTJPUzwL+MYTB9IBe8sP5N76IFTmqErGk97bR29nLlEgzh - N0ifnLjveAia4oCXhaAw/pvoEjQGvjiFMT5il0PcvvxuAFomGizA6RGSD9L179Wf - qXcGIc955rVCjFkFRTCOFcqHJBqZQqYvVn3GKI5i8eN9BdNaQfY933H8u5LEPzQs - KUq/OHaD20h56DYjcgco9z8oNJISnenWVHCj128vhI83uFf0wvvWkO344mcywKjI - +8URccsIPzXkATzCc9AjVgvKvUhlTSWyqSnAoZAfcIhXIxBTsjJrliOzb7K6XFLS - XgFlU+qCLSeq+nddT5fiNQlah1K/SUXZHShaw6iRAZWMmWvZZ/Vj1i6/6RqtF/29 - mMBR2SHzuRzUA8p041OKm8pTKbt/SKfzTF3wYzu7T4EB8zFg8V1Wbx7VMBOfXKY= - =n21v + hQIMAz5uSgHG2iMJARAAyRdmy7wOd766GbbuzoHkkFxk5twpHyQmLJokqEFdBR17 + ga1MbA70UR8KEq3XtNnftUd+f01M5mFRrlMJon1316IR1HgdVAaC7fXY9eRFJvG9 + aUDn3avTawvmCTWFxuHSsoebidTJvmd2v8vm9GkR8WBzndKhGBkzjaS+y9K4CTF1 + C0/Nk+v+NSe9QVdTJc9Jy8uLWYMNktW1LAfts+kfwSauUlKk97qIZ/FuG/Xb6FrD + TgiRFsgYSn8FItnKIqB+OZXYT5aIzXCPIaago37sgm1oYJmzuPeS0pzYDgCbcIZP + q2N3a+6Tv92LrfC3jWWKVavrVOMJK8bwq6Lj1X5Oa9zO0ZdGlv2VJflu3gaw0D9z + LnIv2vLzZCTLcAZ0NE9+tWA1jDZvHlx4gsDJH4o7lMLo9Tct4I8V6JNMME/oNat9 + WvF92CUnL1DOWxijK+G51k4BnHpvJeqDwtVOkmLpcWbwSDAH8Oe+5YjwIyxSTbtu + J5o3mYjv3S4SOWWXkgM6CMZmlYfEFVE6EfgIqEUZgAnM2YpXCxf5QjENq994PMuI + 7SQpBQ/mu0H2hKpB4/6tOUTVoqPczVpI9k/ksOXPrUyzZZL941czuvmBhYQmvlh1 + 6c6kds79F4HTsP3agPQzeSs9CpDqE2MxzVbX3hacnV2IDjNt0Su/q6eazxDjbmfS + XgHD8P/SeHHnX82P4tF3UMr6WS69e2wNU3L00UOKzB/UBube5wtvgmZvqa6oUfnf + lyHhiGghFNirHJfXJbdbZnwK7vsSqVWvG1EyjBtnVtwXaVVsy8lcMLSKvcSRk74= + =KA/M -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:32:51Z" + - created_at: "2026-03-05T19:18:04Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ//f7QmQRhTP44R41nUEZF2wIGCRAwyu/QWxjMXkZ6d6SZB - +dk2yhxHpFRrpjRGWoOmRfnRoKGeMPI12W3AyoMRF8RktzX4wAZB5+91SDOmX4j8 - I9iQYIoh6inYjnrtorQ4IXQS00JaFE0OKwkirb38tknVC+LrMC4yBR3WtA7QevbV - 7H5N5HzpLcMibkYjBkOtsSEYQbtdVi2yn2X2x7XSQnIPaPg6pIx5Yjocvb+BCogH - HaRL4nvkLSzk8GH9EPEfXnAVB5IbuHEXe7Dn5qJd4RDq6j6zzG9irCf8fsmlMdHK - oehgO/pySRU3rMRiQoOLyvUy+fgX+u9J6VE2dD7GT8umbRgW9/eNogKieb9G4K3r - eM/Tu8IP+EFSzwnFkSWZGhsBwYYE3UEX5K4G1j9mEX+u9BdpuVxAuh6f5qVpvzKj - 2CnkBxPtAIFuIrVtBbqoPVbuvXFdWsDGFnqRyvBGixh6sfP8NtnIVQny0PSj92xU - kROTYSnjCICc+XTe0BzJBoi8n7qlI8cg9eOGcpe1BGOBewWpARUTZB5u5rtIWz+t - Fsws7XzltMDLwy2FMARyJ/oqlA8dH2BrY5ai6nGH8V5R/b6Dx0sULBOtchTdsn8E - 1kdjsGionxFLWaRIkA85gDj+s2XprDqK05aWWcTRfaEjjX++Gva0aawALXFd4DjS - XgESTvVAnca/d669IKjn5C/lV9Qwoi+HnLwwJkW8C73CF7aZIyqDtobq/LTnQlgd - OYuT1rQMkQkqyRVV1GC2kO693GfGjHPLzWaSNyf3mY5H0oXXfXOT5SEK9amhjZQ= - =zdoP + hQIMAw5vwmoEJHQ1ARAAoNxKB7UDXPXuJzok4iBfKCS7tERVMOeZUQcHq2Bf2BcZ + 02GYPoQoFSXy0EdAmHnWjOCohKoB+OeyjL8mEMVPqRU2ATP3rYCe90XRlCDj8pY4 + vC3Y/7OoeMlhfA8mv/KRd+tzLz5Ta1CaX5vPguy+L6lC7fJzrtff4yR5bzpP4Mha + bPAevThQMZzxfdeHVCMGi+d2c+rSR3SijTUCoO42bWUYOx9sDQ4ZRTKCBdd8PMs3 + LsrEjJcQ4IRQbRyKH4ThG84EMs4JrWZ1rEOZquP7uuVOnjBaLL3KH8kFyYe6JBhB + J6gCjWgQFr1AQwsJ/yQO4bnOou2+aTz1HMq90EBW23eiVDcOuw2ZmnSNMhwJWYDx + xug7yRl1YTVRnRJ7K11rYOXzSIID0swXM/X64W1NYwAnNJw2wFIR0S5c20EcGHR3 + ULKDv9aROAlgZqTDpjyR0Ai98DIbLZP+JeEs55mM2rYvf85zU7imfg+ku87Qu1Xn + psjGs425kR9nxBADfNdFGXG7RqkqKOCm73BKRK3+vmhNFyjiJpV+SKsteIT3ubN5 + v9GrKvyYdBqQheZh9+w2xCpwIg73fUKoT5/nztcv4kxNpn4lt51R0HCelE4NRrua + rIkbNcbyfeMs+ZiWDJIwtVn2VaVppX3HIdgbrBU4Mpwt+BACHDidXEMKyouMdHfS + XgG10yPl+e3mX7SkQeKyOBVVqRr3xA+6jrGyLEp3uqof7nv8R0zoCgdv8HLSHoAc + PzoxvDNbXrOKmEDDtCsIvAJror9n9RSlsAF/jcUsPEkPLYaNy5VW5Q4mvb/vQH0= + =XjM3 -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:32:51Z" + - created_at: "2026-03-05T19:18:04Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAOMCnd0+4/eZfFHK6BibU0JUysxHoBDu8HVhc54u0AEsw - pevLFMRWBRUv7h0NC/YjTHRX2Kl7Qv/XOOwCaSwQvIpYk2JQL3ruQmMZJTqoWARY - 0l4BOb9NeFYQroAu3j5yiHNpmbcymuyiGHAYU6ZTGDM7nOZfuqR5hFTJEbvIyhq+ - 3G52+SIWXiGK+uaqABIHp/hmKbc56LSywEa7En65nXxnjzt9gm5Cj3BVL3/SWmv1 - =pghg + hF4DerEtaFuTeewSAQdA1sb2dmATR26q3wEpzhrDo7/B9N+IUpoGsgFM7Nepr28w + gmECdkiWCvf/yMYVFc4fTr+f5rMBZEFWuIBPJNqBX6P7Y0emU+69wwRKFiY7rasd + 0l4BUO1dzsZetw+81d1JZYdGQKwcvRsBNnAVRDSpld/oy67jq77HQAKJYH7pyxrT + NVGFPj6m3vlDzoGU/jeqAOV+rbEPSs3otjQY8OIWcBDDpTHr16H2JTrcSXAz2eDe + =w4n8 -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:32:51Z" + - created_at: "2026-03-05T19:18:04Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ/+JxVnm1P6M9AG6oiH6txIeXoLRaT42bZs5VT7o35uYFfA - qTqRjZN+TFYU4IjddS/OfzAtpPQWpfMnrlTaKJDsNg24kadC7/Xg1ekdht6Krown - 4fXZKNg1PWNtuqc5FD1UjRQLowvNpT8O7e/xdotGJGShEAYgps4bDLOOaZJ8Dswb - yD7uZQ8GwWS25AxhnJ/JtNck7+ILPL+cVaz0LDVqilqDsc2dNYcgGNTNqWGebMFf - SmllmEbG6MK/gvMaVPOPhci8QpGBfHewTlUXhCl47HuL0Ah6zB79pkFldtBwYTpK - 3Jj2A1PFo17FWf//W0+o3dGlEVI+CSxIIHnaJuRA9mqvCbPVqoLCTS3vA7J2szpp - eqBmuVKZliRfRJ+LCWF5XABJepukIiUrUScU35K1wvujn0Umw5uOBnFXclNwDIzU - L3UD7NDU2u92myJROn70VNPaNt3ubnkXQ/KMF3NSbrGmp/KS9zZnWO6449CdbFMP - S5ed0hpNC/T8IktFSVe4A8DV9/22KK5E1riF2NPKPaHKDL4zlxabVZXkeux/6CSg - pV/SiUzpSPjYdnIcS9aARHDYDrYbgocugucskAMMTJtL43QAyAHCQjdAQJuvr5yY - XRAcjxWYP2wqDdRfH1Y6qfPSi9oCugp0WqlheUhg8MJjqm/HHSBCnPDPtCBmffPS - XgFMbc7aRGoydaOVTSLdw4NvnNXEbwCEqlKvlp7IdA8e8CroHm8I9pTjdIV788jF - 30xAD+KmcFg5i8+Ik9LIqFEeGvxR81xM5wBr1/kVY4BVQ+0UKeZ6BtfGqVq8sS4= - =Xz09 + hQIMAxjNhCKPP69fAQ/+PDYK4T6brpX6LTFtdlFXS7D5Hzl5bratf2bOgS35Ow2Q + 1rNQfH3TwYi+pmXi8AnFTiy/cpt7kzJm2WKHmVcPfnkf0oYISmtoaxY2ML1FLBaO + xTfWjdYdoLCBM4M/e6HD4X4dUH1hMikma/zci5Fxa6XRzB7PIc1tVqWce+0C22/g + 5yfeYN1lUqGHhJKQGy7idasd7ph2SyzC+tW45CvyBoYEMr8FRqUeUj3yLU+rqT+l + 08l2c8JiRMC50dKYU+9mRt6Ema2kvpoKGW+NcHF7OpZOjfD/2CLHEFTf5bInRUF1 + 3IPvKWERs5362kpEkpq/MYboiuzPSP23oAd0MnJaXdnz1FC6aNYl0waaNdZv9ZRn + jormNvnymRXyHK24Jm4FxPycUuGZBJDp/QLBA0ZJVQ/y3oyLsZfdkuTP8fc7hpki + z6BSBu5R9ZoKyGbz0zyYhnWB+6WClYmrb/neTh4JlnJ69phu5C9Ib2DxnHTmr8zg + pfRUCb4v4Ey0HhwONpJZdPK58PXYcNUXRS+iRIvyfhdAWnQE9iAWzp+t9JZpVkMl + aW1xgBfIUHTzpKYN/8aQgntwg/PyO5bisx6Qf+fQJNXxiqSes0G8IGXaf2iu2UZl + jkjSYN9Elq/PX1a1kGxrQaXBrvUcqdddNHeA4LqGgblt8ovKyoFLWPzkXyHN60jS + XgE9gVEdMehkIwIEjomdzgqCeQfHvl+hEU4sA/j70Lyu78Rz2UiBPtQdJ3hMxrE/ + /qIpavXeaS+tVjybKiN5YfNw+/HsiYGchOpLUnexLzGOFFRqnJfUhGthOCOXHGU= + =vXMk -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:32:51Z" + - created_at: "2026-03-05T19:18:04Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoARAAvcah0df6mLs6Hl6dYQCInSh2IVUezX8s2znk/BVdHAmG - ig6f+sAPx7PYDHt+aEDN6m6Hdi6HNvXUybLULhWGdVMKFzOLiugh9ATcpygOMsuT - HaqtIRmWJaZIXwRnzfil/TBZf48jqLEMu0CZKIZLRkVgjo7+0TA3V2KvbTrcTlvA - HT8gF6uU9dO4L85Jp+yQPzgEvKW7iu9DbfFJi9sz6vZbIOkKgN2tDaN7145dynSM - mVxUD0ykMhaR1zVpf/xFgQ+o/mqpyxPMOhn4/DMrSjx2EHJueoawfApeDWSIIKRF - F6zooUfEG8O1Y+0uE72MYOilICRZfrWymgzhs7CR7t+bWolppky7CrvecByZm8xc - hLpJDxhf2WXH7Y69OUlW9SWqLQToheCvbccCoGhM0D7DB8eztf86h5RCk3YacZnm - o/Ss+N1CM2XVZaHNkNv2R9px3XdXWDvpJ+939hU+faCJ8/ty7xKFUhA71aVwlUCd - JPSfQLFHZmzE+2jWuHVT4cbygxtIwCvmn1wPTVxIOdRQTeCH2fsDL7wESOkcXpAb - mpTtdrnaz+4V66S1s1OrxQXFfdGlukHgKDqY166B9pvLalplCw/8Z9jiaQWgy5cr - 1+CgWdzsoZFuOm9NKgU5rzH8m480G2yuYH+S/bDlafolTmopLOezphINVE4/R0XS - XgH7Oz661CAHS8wjC49nEUqXWnTGCN29xjNCKTHXWUQwy/6EgP3CqQbtJHNKOuL4 - roqlyeA9v1O0cLcSsoZZDsncm2cGtlqOD9MiYRxVkxD1n5hNhzrmDAB9guvum3o= - =gRpl + hQIMA1Hthzn+T1OoAQ//SMP4LWK20skxlbJ/TkvKIySio3Q1fBG8iG0mVhujQ57B + s5wLcFozrGkqo/jXFOAUqH4CHuR2DC5ovoI25G101Z39lRgjvYm66lMpJ2xqO+Dp + YOXsy5aRaWxiXjMG0XslaLQAaxqZZ7Bv2T1xM4vh5y2VkoZPuuvjaFffXJLn5isU + 1d5D8vEne5ArDXbwHCaDKHcIBu+rxT3ZDzqefmQJVtS6NRRMCZOKaGpnRCgr3pD2 + p9pldaIEYxvZ/pmfcoVWHxHFRKidM9ojMgQbQ5Ye2FBjNElOxQitni9uC+dmgKWE + gbZj338txKkcfgKqxANnbRG2HBaxLI+ujZdULg9UgHDkJYFzI6u8k56rNwbHu7vv + 7sja6NMuP/m0mNBcS+s2VtnZNkHwk1XDE12ERbBVxYhRdCaaE8Pqe8oKNR6Cu++j + 6xfxSSrRQy4rxX/m/IKnpz4WWrBDHf0urG7Ve18kfkoLvJSVmqAw5oKlBGpg+Zxb + a0qhWP1SISBkZto2U3AHCWWc74x8SwVpVjagyNaw/8dYZ4a+WLQTZ5AgE5FUWL9z + rkhV+tHhQqEsJhS+PZu2kONLVFK7nQMdEdy+qvH4VW64VJNtP4sRD0hM8i3VsJ0F + KYT96T+c7/8LVWLuUo2KeWfGa/x69aZXezWeK1kNba9EVxfuGbVuezrFsXr6RR/S + XgG6FGAfFVIZo09ls9f8G0B5MGet2ZCY324viLkZSzjj6f45VI1p8cJHliLPa/RC + UeJIlZQ/h9Qr9y8lfmWFP59SPVVYf5XXsySX/XYvWL6eIMBGTqqyP2OjYkarckY= + =1NpW -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:32:51Z" + - created_at: "2026-03-05T19:18:04Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqARAAp9Nk6KBklZhYx6y6a7grhw5XSe8Ok4qXCj7b1j2aX0j/ - g7Hih+PG+aGbZ+k/xXPft7OAG28ODWHI3DCCP2BzDqLHT+78LwPd61gj21GBBBa+ - uMJB6RXce5HOpA75ruyDzAi0uTGOqdoXW7sRaYtEknnUUWOgkoa0+iYCWb3suYej - 2ZoFFL5kOtzNkmu04l+axogd1Pmg/tC6Gbb3PVu+1MwcZpxEHDKGDLORH9Za3W3h - Yln0g1Pf8NNLuBvcd5XImRxaxDsulYg7/63tPYlCIt85p4DFK7oE+9D/8K5iZ+fH - y9E/70hkrQmDcJynbVRwW/xLt3UIHlYH2CrgZ14Sd40txIily0nD2W0jf/T9Lqio - j1p+73+Gavro0zTAd23TXgD8oU3Xmt8NcIxF9wshEJk8/60iAEI7EsXovDXt+Ow+ - ztib+VIMQ7gTrm/B//PM2vfqBSLNFsJzrtWBxwG6ZcVZ1+HjZsBZHDLfEz3pPCtB - 7EFlXpb3eEiBwzcZXg9fjoh7+7hpFDT8sTchKjViZtVuyKzz40rjEZIpcAvLQEFn - yt9Es721mdMbbdiooA2patwdztCkf0/OoiOwjdjMAetZ4b2uoDEKtKSCQd/m9Q1d - DBDlFvUMMEWDCZharnjKlesbyf80JLy7xnBIo5YDUiNloOAjn64+HQ2zMRHlQqzS - XgEOe48mmnSFxEyLGbb85DEgfDmDp1nYSLFsKH4CcauxukljOMD8/h049cPLScJA - csg1vdfcQKSCipH1XBSJZ8G8qHhIrxaGvW6OnjFpwTPNdpjW3Yocb32RtJl2L4k= - =8BYN + hQIMA46L6MuPqfJqARAAgC417+GgKVyvEOgVpHo/lxuhU/U3rXABC4xcGoNtwXWH + O43axMMz/G9C+k7SO3o+xfD00LQJSQjwFabpYwtkiRE7rT4L8rZY2pJrAk8FhP4X + 9o6jJhxrzm4KOdxV+UBh6gMwsmCEdBxCwPF+dXDE1OhDfEe3WAScK2FAhpDwE6JC + C1/9Nu3876Qumxt6b1SE5dnkIvVwskik6RqtyJCTmI0Goq313COHUCN8g7NMwy8W + X5ZPbuP8kq0rP9GWexTMl7s0CTzcVyqKAa7NTdVfs9k7sGYQN1lg/Cvq7gQVeydW + AGiDu5W1IffqstIRnLu1cYIi8iZ14tdhn5q1n3uX3M5qayA2hXOgDOyMsNOHzz+E + s9+uXigTqnyvG/IwriLpbxjbk7vHiS0k/4Ol71tDc454u35mqV7aBbFIMNm1rmwf + sftWUhOgUMbwGAhAnNhPTTwRMTRnqbjcSa+vz2zTvIr6H/RxF2kx1w5mFXyiC15g + z26c+abeFXpsd4FLs9eHlGW1C+hBCVMulei03aaHUu4uxYZZdqIsd+cBvs+sa5eY + BOPL3yeGTZmcouhan1LIadYWQ06g/+1QppkBN7Y4F+UjfyE7sBAuAa6SSHYnxo+c + rrK/r32Hsiw5XA9Yum8w9oJDzTSMxckiFtU5ym8/I5SFg13iwnOcW8K7pY9Uq0HS + XgGiQrFc4dZwoouqztV41Fz5eA9uU6PsPgKXdZM2ya6gI/vbEOu1VM4kv/D/5jTO + E6qSUhjpZZk/xDOLBPWwYQmBfzYaf4OtCdyfgUMpXvDDOQkbbMgoHFC4ro7xKAI= + =zxCn -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:32:51Z" + - created_at: "2026-03-05T19:18:04Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAntvfsg9CyzwnkRoH1sf6pGKCvrXP7lHxxQ48uCH2dEsw - K0AsX83+cQ0TSP2y7Qb+MWbyabgmtoE6Bvr+RDL1ZdT3GXuU2lb5v9BNMTe8f2AV - 0l4BKDN88wlAVY+2vjeHyv89Whc/bb+H40nl2aJujOx7qa/FH6+JEMLkwAqzxWke - UEyfHSVR/SLxuNXgncRzaqftfyW9RTbba94x4v4xpB5cgC202o+8YQYy4zNyIwkt - =//73 + hF4DQrf1tCqiJxoSAQdABx1bFOTL51TdN3JWUbJiAReAsKCuIWljohnvBpkCQVgw + M211JW1MolBr/75zZBeEybjHVsO8mrkAhRadrsfKFDrtdJMnxdURWu3VtBpJ0Eoz + 0l4Bm/k1EuDW8xG6Ct7OjTU20Ls8wgT2pZLu6KXEdZNLnNrxzQdCFPCgHxOeUFqG + 4WEXWboRy4QlmzkZ7w7PjVLXCTniIkV+lp1tnj1SX2+WvNqQfGYdPeVXx58WioiK + =4UqY -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:32:51Z" + - created_at: "2026-03-05T19:18:04Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAGyh7q6lSTFHMurCG7wYkdwgSEnvvY0Tp5STkJ51YwCAw - V3o2ZWi1vpHCT5dRpDLAoS0biujFByP9ubhfdES2g2VTeP2ofx+GpjlcldizgkGc - 0lgBbSpQ0cGo7K0OQBns6jM2cYtfdoWh7WMPR+nYaraL07ftF8qOHnFLVW/D1PhT - HG180NJX6DBTu4MnzhhiIug67j8rccaZ+rsh1M3q54gaLTXNKpe2E4iN - =hT9f + hF4DzAGzViGx4qcSAQdAYP9944P4Aq9DQ0DVcyHt6CHlMrAFeXyggwhCbGoUqRow + UvlXQ35Uy1W3Of9HqwM2ZyXyLY7PpTPXmjc8O9RdUnuS0sOvPihzoMQF52r6VQ6m + 0lgBdo1WiZs1VDzJHBk+5pMcrt3TbBA1VRgJELA9N7S92L/iJC89VPghSroCduQf + wT92usIH3fIHXTxpvRbvVnCISP01da00+TemwkqAGf2bBRwuu2AY59Fj + =Kb/p -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:32:51Z" + - created_at: "2026-03-05T19:18:04Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+ARAA1p1e5jUdhMsyyaf7WD3eazil2scy5/Bf0sKexeEnIZTg - J9JbaAprs540jL1XdFsBuhyvlIr7Uz16srYFqtb5w0k++aebZC3PFqMeP2TQesl0 - uivsn6a/zC6eIJtv2x+I9TBgJoUbyj8DH+ov/sX26LFVdoz9+GvS0sGMyYOgrCW2 - /4fY7xcHDVKGJ2JJc28ZW25TJ7ay8RaQwNhlqe2lg0DO3P+jA/ZszzTMWEgLKb8F - UrOsIfYeVZp7y1OaeqFYjJ85WWq9hDfaVAZJfM3erCjxA3Hr6XuMzXFvH/PELEs3 - rrOhzo8fITIHlPyVzP+VMVcwZJn1xxd57MkxXzh3Obv8pqHasyaSuVauUJIP690N - L/vjIPZyy0yVKXDs7iasiHRAPNaYJkeVIr1epDClZQlvtdaba1/wYMUZTP7OUCut - sJQMX1EyYJ0jmAyBt3hjzvboH7LDuFwyL9EzP/iV0EF4szoOofpIOgQOt7WRSu74 - s8pNfI5XlqPE0cBw3Ez9n2pjWMHdM6uLwUIwitIC5GAZ4XUgF/wOCZStCngA/hIH - HMXK1aoKQGBM+qHVrnS+XiBx1zzzJSPOAnal7Dpok183khOnPwFWrpvFv1k4d8Kp - /l6y+ChyToV8h2NvrXDq2PEg/0eiSoBWs96hnQiTF/uNoGWXhkOp3NWujlgkX7nU - aAEJAhA7o6xiPj/RTB8XBOwEPw5cz2Nz7D0ntU58c/B0Btic8NeY5bnt17U0cpmG - OsuLM4GZ5fgTsmfUu8QGxeVB9iML91OQpW2lGpTt7xDBTDd9Oi6Rq+4dqX43LTiT - 3pJyJPw+f09r - =GoG2 + hQIMA2pVdGTIrZI+ARAA1K2RzGkBDkewnJSelv/IP3QjjnA50Wy9jPBKKIHhLwtz + 4gqaJ1QyMkUrJUVPZ7Jpn6+lNnVu6K45Om4N0pjD1RDvs3UWUZQPU7/QbtwL4/is + PeI/MuDrWQLTVfL6PTOzl+VqlOBGyF3pEjIX8SH5GPieRmzkb/NOdMxKvGySvN3R + yDfKoG/gMhJRoEl20vgVDq7mHTmZcXtGTNQXejjy3ElTxgcyqgq8Es+6vvsB5Me7 + o9c3E31Ab//8L+uMXytC0MP3q8mkIv4cQsbDzsPo0vpxslGRCtf7etsNH6WrQJ7L + 9REK/81pkT59GCTdPG4P6HLxR0H6uiI1gmT05AFI3PM29It1QYuSDtapb5ZvImMe + 7+vmR7Bq6TjqOxBLuiOJOa09myg/L7bvaSVq2KSm9l9TmHi1Cb3lD09OvOOhTLA5 + dsyCXoOZoJ85VC4BL7RjdwDU9Cl1nKsxOAOABm+dgOJWFAGNCtzbZzFO4Cm1Cjwc + fHt2zCjgB2jQL3bvHeWeqwXaUCVxty9GtB5p2MZyshnwNFk67fWi3yS3LW6Az8PW + z1pR3dEIvab0hn2GVtfXx7VpJLtiPphwde5VUZvTgFIdDRvVFtXiT1XHC3DTY+kI + YQeRczFJ52bar3yj43SayE6nhGAVc4zB/WPSZO4LoWt+BfwuiNX1w6TL7KgOEWbS + XgGxCXACzwbLNgtLXfVMOqlg+DHrbFIjxfx8yf65VQv5PWDn1xW2S3/8qcX2r2p/ + c+S4bx71xCwq6SRghwoVrLflcHGHl5IPmYjT1+EWr4OmKcJLESl6ae3fuhIpInI= + =pj4L -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:04Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAoELKkyRGc3e3SHnRvws1Hg0mt4wgHyDNTVol6GUAlBkw + EFkil/L60+V+5KtmZxCaiKHO/l+Wc4BdzfojUthkMP2czm044d0pkyf4/giNN1aj + 0l4BT2IeG2jTdBj9jdL0jIAWdg9S+1xJPRmxlgak02y3Qm35SBppZec1su5keFTM + duB8zwOLpiTuvDslh/+kEv20noqUG1Cl4is4w1x9JOPJAeOqSAI769BvAIXyxJlS + =8ipw + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/pretalx.sops.yaml b/inventories/chaosknoten/host_vars/pretalx.sops.yaml index c02b228d7..e5f3132d8 100644 --- a/inventories/chaosknoten/host_vars/pretalx.sops.yaml +++ b/inventories/chaosknoten/host_vars/pretalx.sops.yaml @@ -6,204 +6,213 @@ sops: - recipient: age133wy6sxhgx3kkwxecra6xf9ey2uhnvtjpgwawwfmpvz0jpd0s5dqe385u3 enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBHb1RWS216a1RqZ0JHOW0r - bkxRNWtzK3YrUlRVT0JnL1JrYWNNTEpIbGcwCnQyY1EzMHp3U1dUdVR3MkN0Qm5S - dW43d0JnbU5tUDJnSUdWc1R0MEVHSm8KLS0tIDhqaEpES211TXJPbTlVZEhjK1ow - ek1CYmpQTWpPQ2pzWmVXS216cGs1blUKo+q6xzJVl2eLJrKWGAa/sHyc2ZsBMz0O - kBsuRo/uiOtBuSPw/4JfzVcvJDCfcu1Okfa7tVz75pnUCmax180AKg== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBPT2V4RzBMZkpSMHBhNjlh + VmhBMlI3aitvZmx4RUNvMGxyNkhTT1daejNZClhsQ1EwMnU3YUJESDJEUno3TXdl + czZSNlNHaDMrbkFQNFNBK2xCMFJjSG8KLS0tIHlkWTgrcTJpRFBWRjNnZXlaNzVM + T3BVQmZyVFlyaloxZ1lUdEtlbDYxbkkKdaYhzRq66SVBbhn4iNVSDSoEBk7+zODh + cogERhbBCuz6WXCKBHjFwLDggM6y2cLo/uk3qkG2X7YDXUqO/DMwSA== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-14T23:41:45Z" mac: ENC[AES256_GCM,data:tw/zADjnc9mNcT1sEGDeCFr9RuyPsgj6mtcmDwpYdquhdfmjvccUBwly/NFFdHAwUqmL4l5R2xAFaeKxiEO03DT9nx6jujDvgpKaWyiXqgPnzMvft/9SXdjwx1+4COmT15WQ3LfTQbTXAJH3taGDQeRJBPRYFcykscyw3S5/aU8=,iv:kmCUVVT17MPoV4/tGqxKGeXuf1eIzX9qqJt6HL2ygPQ=,tag:+v+TVU4Nr+ZCqLxWvWWjdA==,type:str] pgp: - - created_at: "2026-02-18T08:34:25Z" + - created_at: "2026-03-05T19:18:39Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ//Qq0RZICEBrOS1eMsGnDWJxZlv0Ul/oW7AUQNpo+2bFGg - N4SyncrKtxdw2Ph6BnRLFRDXoH6WufaOISXgnGkTPHc+IrusdkToYPYhmUbBvJdN - y7E/maWUjJj5C9p3J2wH7itg4fcrSJD3fB5bf8JoXtYxhh0nl8PpnfmLQxROpyQ8 - gWchxbaUavsp2kekD+3PGIr3iQt1raDxtJGxkd3a9nGZ2q8pCAfpr+q4C9JKVjWP - 8uUTeffFnu6kKnHq0zSpbJCIpUw+Pq6qdGZ612lz7oZkIGsP5G64PlafnEZl0tVn - miRtGQFnMxuUN3bJVKfqpuLEQqmxZwS+S01XgRjHfhvf4SNedsm45CEn3ieJ3+rv - hUZIdh95Bv8RQ1zJSX7tfa//y9iLG9Bf3RV0QGKGVwDFd6CsFaq7LSfTjJh1bPML - PMV9q5dV8raZH64SXLNqqD9YAtw83tBfr5mk7yVG/NtIar0CkMzzgX6twqZcX4ce - PRw7vFsrgZh4WCmkeKtOIsyV2EH2IY4qRgg6XV8SYQaNtctRc6NgiCOZcI0+hp8r - /NG5TgIsurLdKHyqYr8bZxgv8cbQDJTXTL4o5Lj0Y0KjOy3M3TrFZNjfVQgeyCAz - DyrJZtfWQZvxIXEgN7jD4H733V40enNIULpRaqqj9AaON6GPABvikwkwYk5BaRTU - aAEJAhAmylieQ5Wf300EKWtH8Desq6SL8g/OSkA2rRgOq+OxxB3Xv8IGpPh5ibXU - xPtwDHnabQXx9oQcRxyRI3ENZFcgTqT5SSmkj1dEpJl1wgjxzaZ2+cVWLeAivqNm - DWmutl2wnn35 - =28/h + hQIMAxK/JaB2/SdtARAAq13EX/H/1JZ3R+e5hrVcHf7dPm1Hjq/GfvEQLAlciloe + 6Gpt4GdXPiV4d0RDl/JBOwEvQyUMPDKYj1gEGbUDmllF1MGa0+eiTRupJJvwvC6n + eQ9W7+S77+gbxejcCnt0gb8c2HU0xxvfssT9ldTal1xxRNzMtKuNF84bb+AMI/+X + ZY54NKhNkqTa05w8LuPr2xnAr0CUkLAHtYWqDtwSzUOjn+amXdRjxtocdCQwA94d + 3D5KWKsHjkKj4Xg637bMbsrlj8NCeiKEHUHC22bZCMvcVAQn43nzO81YORfVLY4d + EucKQ97u5wlztt1LPgak57YSjNjdRK4DPyW/RoyAXD7vfVMUMJfPlC+KIsr23rB1 + 2ShSFK52RLS7Nd4c9oxG9HeFjHzmrL93cg+J7r0c7FDQP6/dgMP45KaroDRvARDv + 6C2XcUkqjNO/2W7m+kSzuKI72Q4fkMu5mMSypsLXg7ZhydX82LQfMtWU7bsXq5qa + plLACiQih+ZV7Q5vJuOvWvy3ajj9hICuBNcyPn1zIuusNALmdNo07T7H/C7Z7UW7 + PoByKlGe8v2pOFn4V+1yN/6JZ0rAM4Hw4iqcfs2qTaZHbM6q6gsJmKxKGKvJqA85 + 4N1Da8Wuj76dFh7ZPoXT0w5/ml+lg6MOm5nTOYTYR6lURiC9clonS4gAWMPXV1bS + XgHNffagtxXcRGVFM3CESeae9DtTZdZ1sBiw0rOsRYd6lhufZPBIugCHW8zK7ZhK + xP8ISMeFc00rJoHltz5R49b815bBwpPZm8pOpFkpTOOBQy65OSdN8WTr1ABDIC0= + =2+Eh -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:34:25Z" + - created_at: "2026-03-05T19:18:39Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf/VrOBZEOI9kt4uE1QOI5Z369nXXIgT77WZRrkiXDFGyI3 - o9spcRTAFHXs0t+d9ltM5hWWXDR1Id4fmxPjDQn+DDsthU3U2S5/oPxjNg6dFspW - D2n1RkUb7sm5DQvh0ZcxiEFNIxcHsKwCTYFsdr/d2r4pdxCgjb/nCfnryNsABZGH - XDdbGQezO2BjvLjuVFxCVO3C26otX4pHVweuP8E2HyGGGPA882gGBqRoIXs1NBVS - j9Wd0clrtu6RB+MCjwk5jBzZP6P0AGbAGb4F93O28F4/Gtk//4+QD56OQ1F51dom - Y/Vn2ELq8E7mgLDJQVgHFnu6XBJzz/ULa1Yj80ddpdJeAWgJsdJRRaW3z2+GeXnH - pqJcu7C7Ujz1lxEuZq+hClhjEP6v7I+rylU0i6EBkHwY8cE95LeFGXcdQMkgGJSq - S3Fk347zugna48Pu3Uv8BxYaiOrD2Py6/2pHdXoZSA== - =8l4B + hQEMA1QflAioE8i3AQgAqnmHh/Gr+bUvT0DnVEC+398MleS6oFbZx4xutx/Wmhxq + 58WQ9I7ffDpC9UwH5na17E8YesExqx5XImz9Fxad1vOm0yg+AIleaaFMdQ/BqW7s + jdNml/IbhuUGyQoWHPN2XbGr+GHAJ4TVcHYlfXlro57Ka5BlAkm4wnlJVCoXHQHo + VW5cA+4MrHoUZzhhHo3y/d4ESdRay2TKHyCqQzap+vb0WXws5kfbS1CTSN81XSx2 + 7MXcq0k48OhsdZOsMm+XY2JTaNTrJI2F96xPmeg6FLg6pj3xKKYgBqe/edOwe7cl + rzTJ6elh+vCv5TJnUJLA2hdY8K6lk5faz+/ZleYMq9JeAZFaqA+AfNu4b6BQmXcY + olU9j7zKavwbaD6udXEkSdtbFu99VVB7Iw833FIL2mJL4FM74CEb5yTKx4DsCax+ + oSCuxopejUAWGXZxeulZ3aZEntZkTW4eQrt+wu5NFA== + =xM5w -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:34:25Z" + - created_at: "2026-03-05T19:18:39Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ//QeaqjjxdGfFfm/aaSnyq3rYqdaYGFtdiDso0aqPefH73 - fmyjFNjd5VwuFvtvvNwduHLHpP+vPziNkwap21xv8gW5W6GlspOCnSSdA0JebpeZ - 3gN4BEBEqyzQLsJ2FvjyiQKI2jFxwoIUz7cEddqw/g1/1jwt88ShQb/lWMYZj8XT - dwpm8Bts0uV9mAcfd6O4RkKWOkAe5dDdV6qQI/qhZSACEniHZ25NeJm0oNeJkMe7 - FMumlrFbx188qTdFaJ8TlbAvJHS9Nni/zXdzZaZcb9nnnXR8HdHWoLooIWH6iOHR - PxihRy1MQjlCfHbd7/oDhJvkcAXqQQMIamHSbbzjOq6G86vM1Pybg6WIpHZ018Z3 - IUz4K0RWWZ1S/KGDhUsEkdPKU+sWkhHRc2vICBheevanbuOvL2EEVKkvoppGeeXd - iJjJUup7VLj4rwT1+nfWanqqk+HXODYiQ4b+IvP9v8W/o05Pts9voj3XCKhtCZSv - SNMxYwC9gF+Kx494Q4T+2+59QfTMnu+Bipdxa8bpxS7TySN/VSQLkXeUMfR3guQ+ - LrvtEjkCI0Pf0AyZ+vzxKKq7/7CRs8o0jTT39bqHTgv8Tmr1N+9OhHJE6fUfk9QL - hSwLduYAz/MW2KYkv8ikabxqYdeo+cwT7I8qSGrz5gN8vrUGhRTz/mGcLSUx1UfS - XgESDCl6IgFVFzYKzt9Qdgx94K+BdwfD02pD4LQGTO/xmHIsWVetrtzEKTjZLWnN - yB+AF+JRGbyjQAt/8En416Pu+RNTULUc9gcSB4atwC3dFtZg7KBsBkinFEXd8Kc= - =Vu53 + hQIMAz5uSgHG2iMJARAAuqjaugFg150RfN7Iq1Mk7hWI1MpSlFOIbNU4gojM6PlS + iyDHrO1Vt+3ui4YVJ0ZH58PZroQP0lL2IIhjgMfbwQw3yT8pWqiX3+YW7DOTAbfR + aFQs0W3uOjInDDAPUr0Wn7OSBwa1O6aXcYUkQjGzoeS8apt2fYEM8eaHd6kGbyyU + xwb9suuxV3vuDPJVM4Xym0U/EYekJzwrVbB2KdJLlqy8DS+UxOW//7mhq2QHRNE8 + wDodLpSdajwxBTRxJzoGqlefhQ7qJiLCzXt3WDfU6JvXMHk9cibUQjuoQWWSDwuP + U/abFnMDqI75mLbGoDGpzTvrtH10CTcHRf+QzhD7WWW/FmhkycN0xboWRT0xR38C + dA59eaS+puWtJF7lS7hUXBR7KvJlmje/WMhKTEkWDRuCUeMJSvD8G89Z5Jxf/vj0 + YelsGi6vHZNgMsQA6aIvklipoGlq7/c5iwxVuTlvN3iXMQ7ADvcogUML+wvyzJUv + x5Ex6GawVerby3/2CUNb3BRerI4lV1fkPw+rIjD3PPoWNrIOEY0YFv1Z1CMkC1MB + 9Ays+wyTPcj92Tmh3S8ZNz3X3GzIXvJCzTkXaYV6muQ4yRFaos3Da5MiSSAHUtTC + u4aGMbLGG27sg0iXIS+bM7nUBSlNMsZ2jJlXqngoVLvJqg6isWXMrQnMJQJ6HEnS + XgHupqMvORYcMJOczHScYKwfXixKE8koHTltXdcq35d/uoL0a2QWvlnln817BNId + WkePmm38ohsp2dq7Mn7pmHmKwnMpmf5lb+EwMw3UEcnpL3VslrzTLEv0QuIp5YY= + =3zNX -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:34:25Z" + - created_at: "2026-03-05T19:18:39Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ/9FLNpkfiENIDXA7KYYL/LfXXSNPDvFa6hAjot5RkA3w5n - NqSw6TkD8033sGYYZVTY3r4aN80nSTNFoIgAGrwyD6EMUA70r+BjDUYCEydU6dsZ - mOx6Cukt5WdxDNO/tPCz8vBDa5o39Vjy+cgV1NmRSgnar6f3QRkONPIbNgdkGoPa - re9V7f7j2nYHVMVmzAirsoIsjqM1Xy2mUk7G6dGToGJH7ZRGxbFzmeM2m0A6cx9S - JJ9ptaYXkc9ZZt2qV+yw7gbbqweQ8+CNuOo9BCInG5bxnflDdh1oR3cegV6PG+lz - R/VH8FHz0c6z2wm8U6hpYYxEiPCuGMztTZ7OvNbqo2ggvVue8LbHFq1kDGZPXjx4 - WbjFR/on3LsRU++fX3vd28VIHtBlvouzIDutHHW6WutVMsm6py5+PBaqFsu6g44H - x3tAk9Uiv+5EliNSrIDs8ZH9XwaQ5Kw75IaMVwRkVs2IZshgTjRCAIbutiOBtI/5 - ZiPmWw+BIw1IeqC4Lt+FfPCZeo9SsZQbw64iOBY/0IjZMbLUFDWNuway2lel8hYN - hTmBX0UssTTEMG0rJ2gV7nt75kge6vQ5TLQVEB3xJeO8eA9YMP7WwIgmlAT5JkkR - FV4JlqDC8QGhcdv4BX1ItK0kQ22CekcfK33SQNXiX0wjrHdyaNIr22VA+ROuJRrS - XgHN/VVElhiEtzoxYuEzWKDzjUMKic6N9XguA6ZPO6gS/pPOdHH74tGEICkXNag+ - 112/+ry+IIBim1JlkQUGTSmYgh/PCCqWInx/2kUR4X+H7rAPVhgeTb2ufB45QLQ= - =tgBy + hQIMAw5vwmoEJHQ1ARAAuH6xK6tUPimWASohAgLP/h/5swxZ7UEEuV+LXrBhbZbm + rFnCqsZT8A+hq5Ft5u8X2JNCIpBLDmtY4PO2G6xxxqQ/OBahEYNqpiWQuwyipFFh + uiriJf+tDh+sOuravtxVJwkW43HHtkqLlcv9Z8vFulp5myTj7nHoqjAXspozgcH7 + /wCbGCNtg1m6BI1n3ZkX3aNH6yfWjr9gPVBhTov7WTb0HDRctVhDqbw5LNglmiS+ + ypWjJo8i31qSmFPdnKhOhhwL+NTnZTDocDtxv/N/pBK0E13z04emccPoRmFW2Bty + EoFybmEmwNKdHQ2H0qnw6rNa1mEXINo7wfkTvZRFEpIHJOcgA5Fza2xAMZHllws3 + uf6hMoW5+qmD1jk1MKFwoZZW4/gL9EK2jcnPtIScLdti+7IeSMrrUnVZYzEZiOXw + nuAI4hHS3yvLIvW+oDzKtiRZgUVtUHy7fGRbo2eXLIeLAPYWg9hosOBwtWhkjmOs + IooedybywPWnQW7HwB8uuZDaWQaLtgVZOZPVucXA1YgZRCfbk1lSj4U4hUk/PXi/ + Lzxk7dEpSKgykSORAkKjMOYXnKHZvHOz8V8AzRRE2h4ZDKqsNTcy3gOg4X8uyMVz + Ncr2UDGvKNA9kqyw6P/gFHoR8JBjZeMSosSKq9Cee2pCmWOln2Zr7Momapal+tvS + XgG0hzIRGA8zjxVR0Dpdto2cXvRngenvZtq80b8kqQ/tNwAqfoaKU79MxKH7M+EL + 48RHHHVyGTmPddn1hLum0XxJ0GumiohLwkVZS3gC4dnY6A6X+/VH7/ONH7vZ130= + =DWfO -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:34:25Z" + - created_at: "2026-03-05T19:18:39Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAVTdKoFelrbkSd7InazDll2gFH3rzYB8EpV18aeCO9g8w - 7HE1WAwCP7GWGBNptedst1q442Bg+O7sfckodpHMLb6YyAlcaE4/YAbGmuUJ49M9 - 0l4BBW7ufS/k9NPWMxl9fmXws8V1mmRXpPz/M9hxiOV9Ro/ivftRIlBJGDEymZex - v++P+uk3i2lVJzMV34fc2uqEotqgW69TB83hBzSTBZDRSdofUrXpYEwkv6k1fzDO - =pwN0 + hF4DerEtaFuTeewSAQdA0RC689KLHYBx0kq6vHIdckdwe6X9suzjqJPZbTj5zG4w + liEw7J2VrjtTpO0/F4GR2s4Lg48neUeTW1Xdj/relEgO6zza09iFBprf3TS1dYAy + 0l4BgHghcjK/ryB31MECmaI/gU2r7bXmSea5X9mRbjm3Jq0razUiKe41RgX/XJr8 + Syb9LdS1Ur0bpIXEmKnj4ztqLnpMs+x7HMNIffkFTvAbytOhcwG/RN1JJjvN3Agd + =CecL -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:34:25Z" + - created_at: "2026-03-05T19:18:39Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fARAAo5I0pU4qeDr1qEKwGhJIqlt3AnUDIWriYORWk2FWWgN/ - 2GsfxPBMllcjnVSrrmpZzoR4f6O38dTXwTRPE4N2gUFFF0on+EjiGU/vV4H1fyc+ - YhdadyBBTMe02wWaZfUi4xARO5cn1IQ3mRwA/U36tDmhvA3zuHcKQdD9bgTus0p5 - N+vx3hIcCoMOkkm7fJglO6NHhoG0vH6MgMGWNyr64c+pAym5IxCUIQjqUYtgebrV - ++xzFavViE6MAN2TDuGNJgtVXBnCGjGX/9XfAA9RPsOzSPpNCENLsi2vuVkeKEDl - 2qUvlwQt/iRK8Jq0/gYvOsDRJ+dkR4LsbTVSlG0Pr98HWjK/V3VvTqVposiuYK3p - OqgDDMt1iQF831dGbSFmO4SsW93haZCI4hSjF8+uPK+36J80+qVudxYEQpRormBf - l8HWgxsrnT1wB3ijKsM1wC65wpHHU5gWB63BwqNQiz0ys52o+4f9sQDjSxq6mXOA - 3ik36s51MLsnvkkEVopyetga/NZ3Nl1KZozMnluZ4TjVOujuTy9rWxWfPZI4imsX - 3xJmnepR7EHcfdZbjSVcwPKuPvgN6h5uguyNxw1iBvHRA4mY5dPZPuEFhARw8iFR - 1m5fXjv1Rn0Nq8P28uoepphaJy8Hp3XzDEfjsC8V8WYbLOSlPXv7FDsbo5BzUz7S - XgGtA4NAgJFQLHZJkdj0WQAPwfevgb8M1kIOH9jH99VZ4YpVgMcGda/mpwRLILtb - fM8g1kMhBBmrtlLJqhiR1uAndmzG5y72y98Hngzbo+CQuMovH7Zllje6JQOODQQ= - =D8sl + hQIMAxjNhCKPP69fAQ//fbtaIyWBCNW+QSIGB9IwhygKfDy9kvb/ZNyZi/pflUdY + qXjvAyhr5ZFf/+tEupYRLEebhNCQz/GUZDCMCG2qyrswMVbyAl69soM4JLyewqK1 + J+72oljKcRSB99YjHOGQCPlGgyiCkaYTKP5p0mUAKU+D4QKH75864XhcqhVAVT9w + Ubjegiw8QXL/gfewH6Wqd8yWFo0SHpgvIIS+YwWsyb2VVv3DBDUNNkft5e8lic6+ + 3c2vJ57yZ1ROtBpz9KNjdUrTcA6xzZ5hrq9HB2Zmo+MqYC+bTfFHUNiTNdNNQ774 + FcHNcFcOnyXMsOyXOjGbjv0LofUm64We+Y/jLdlI4nyY9HJ6ZX4fBngqsINW0Lcw + 4l3B2q6U9NRoIblcteX2jcR8CdC3EcyNDEalOQd/XRCmnE/nLPgAr9CqCznri81N + LV1vqfqkc0MkWKXvm30iL+jeW3kHWtKD1sMAAL6YZS0aIZBRr9D+22jRIfGU6fb5 + 5LsfOuufivfeQuNTV7QIf+Hu5lqcgGbcsvRa4Mds/UwFs530a46aBuGpbM05o9jh + 6hA8wpNupCHsFfMDxFiW6TDPd2mG+kpsZpfAdxFrgoYj/+ZJWrHxuHh/yewuMQ3V + LnJfmtcAi61QaNg4cIERVBuuqZh9y0t5YMcmpPvpABTjhOAl9lIFi0MWmR5e42jS + XgGht7TmcKnkcu+yAPqPWF6YpEtCh5nGyAZ+RhBWaV5Im0pEGesu/mgEGfQwMnag + lRWe7QlrbSa7HAJude40jbUSr106FNNUQQKjTcaT47bDpS7iMo+PeUQMYIOAdWY= + =padH -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:34:25Z" + - created_at: "2026-03-05T19:18:39Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ//WMDbldS3mjoT/4ujV8dxTh7G2hgDV0zP5+WWMJk9D2b4 - oB9oI5nCXYeCHr8KuTpO5pLaAP9OJwjLPhjQb64tFM3EDxkIvzrIiXi6VJGG9VnX - ksAZF31wb3cS5lwkKWbRvYWOrV+4wLKXuJzGazyP92CrEtuJCsTtG9K8+DpiYqPQ - OCpc5eD71I8jsEfiZr4pzHoALXWpVQRss9KMB78C8eTUmDGiZDZFeL+XZztsxiTH - 9PzN4s3ivzl7zwpVO08kfEOAG/EUXJOUtsMd4A2nG3o0UCd7cfdflzciNgFJHlpp - piLx8yh6Hfq088Kn6AC2CMMs4OPWHb5KVCd1NqcXQzG4yAaWj8BiENeCRIoMNVJC - 9Yhkgp3sU3MNJu+qtD267W1piMViVBD3xbHeETyM7ukF1AdOr3PLBlKQvYKkZyWW - ojfy8pW4nVm+iP2GzT2I8gpN1QelWGInGpbdplRF58XQXujfa92eRBnvS6eRqtlv - DwqIasspdskNJixKaBiHlbZLHpuUp6DNynUCaizY0JlYYCbvqc4FsS06O+t3d8jq - foKiinOlmRpn9T6SCYdZkgKPjjy5TcIvPIuHLZW7/R0uk/qr2Jt0UTOPvniEM/Fx - SGdwjVYkZZGdnV+OHs9GDU1Cnf4B+dGV0wGip+X3U2lt+zR38YRXVFHFBazD5LXS - XgHSjbP8Jy51BHcj3GnqJjWo5F7IGnAS/UwzcEZ8oeazOYiShqBzj79XqcJsOZOi - GhoCrZlZAcG2vJZLmS6/VnzOT01Ku0MmNMyIS/k0mRcnlfWog0XvMObMOcmVSz0= - =UIwj + hQIMA1Hthzn+T1OoAQ/+IYVzJZGJRKim72mtwwJ9Me0PLV+7sLL0/R5tJ/ZwJpC6 + 0QJWV8fxVG+8/wKIjdlFAfRtjUrj3FKGzgN7mLXrHiaF8+RPSwXJm+WOkm5mm4Pe + ORu0oiCccDlcL97Q3VuDEsxht4C2HU3gLgPUoWa5c2pDYV0UxbH8d4lhLS78k/QQ + QBIYY9ZUta/EgqvGT6s07cXc1dOgDeyPLzs+apwj7QWkmDPq+LVUUitZqzskgBb5 + z4u/zl/CH3Po48HNIWmjzEIEbkzVn0wknLEl43r8QOGsBH3Zcj3qjkEpxnfevbwZ + aXXqNTtgZnnmhSgTAvHwjz4Nx9EaoQWu0CJIcftFhC97vVcMSmlgxPRFSkXARbjJ + hjNFEJn9T8NsjHZfQkP/07vnl+at1gcbXFoU5MezaMCw7a9jcc/sRKUh8qQ7Ibji + jI8w2m/HRVF5/mQP15rtiIkZh+ketaqXrApXstQcvGwdcFBqV+FYCK0m24SNl2QA + coQCDhGoby0Eg7FxP29NLusqcn5qBQ3J8X57oV4+/h7KH2E5MXJiwCWftq7MttYZ + PUDN2cFQ2Y6YSi6QGeAYhW5bNToQuLGy6+roo9Q81eHq74rmu3FQv1FWQl+RX/uw + 3qz/8ngQBy6uefPNmJiBnF4PCXNpM0zxcp3MhAT42+LCmQ5yO2+zdSgr6WDyMbzS + XgE9MHxAYcPtfxT0Dv1jmfHwuKxE5R4jjXOMbsuBFXWg0imUKHIygjQf2Ci+/p2j + Iu56rMRrb1z3RLOXYkTpx23RCOGp7AS8W/P6WS/ZEq0dknfJ56EEeQozcaWqyZ8= + =rOW9 -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:34:25Z" + - created_at: "2026-03-05T19:18:39Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ/+I1nw0cZHq+QNoXj9M1+YQNw3Mjhn32NtUCqIFjGlbC7A - lsrPy5DPS82yJ5Fv5CJyAlSoWgBltd9zseU5EJrqLVCGVHJPDCT0v1RCDsBHs/oX - uTaUM/6+F71Ef5YCyMxTWMAwwrRa0bN29pIIEgqizLDHOzLIubA7fBd06PqB2WAX - ofrLiSLkmcBXNOoUsg3J5Zac3Y4+y7sHlhN5pj2JShuA/3AVNJ6B7ZpOkN22nT5s - Kmwme6OhDA95NTLLBWsmvpdboeEG/ODunAbwYjqV16KMLGFzsGd9SWkS0MMLomRN - NlWmyPR44Jga5+2lQjvNgr3ImmJ9JKaQmw2i3ZqGvdoTHkiDSpr8ofQsTaYro2S0 - 1Uj9zipkVviQgKue7bC3cvXSNqXoNzhwldsCTvWta50K+YcN4sqEuYawvzolkVCG - qMagiTWBUmRNo7GAQN87oXqZylVq4R0ETuHyJbNT7sLsANk4hNQ4oxMpCO+S+oro - JsZElkdyS3c2glpjKYY50TPzB5xlD0eaGJpSJEYz+uzBquAdZ8c604e2saxvmeVs - xFD+IuMaUX58pPOJ14OG8gvKq3CujZOdFi0e0dEvwN4D2OHTXZ637DdC5wn47Zzx - bCTD1rzRHQ9m3Lxq07RsG16EeRIW9dvOaCc6r5qRoHk4AZ6fjgjZ5152C7md8ojS - XgGvcmvOzY+cP55T87ev+jUF4ZdC00KyL5SUoL+FCzplmKcRYvL36tDJ386NBgBo - nt/R8jk4YiA1yOdcVZ7/DP0PI5Rx9dH9mcCkrn/jplFEKUeemZ7OvSl7v9jY/zU= - =vrLL + hQIMA46L6MuPqfJqAQ//Y/YLV/nhdDBa8ymrDNSPEBSisIKdBwe1zK83hxa2AKc5 + BikOMg9S+x5CqaFCtOFtt+jui4k2jj52HwiOsjDGMqyOgk3dN7hk0Wbj9Ku8lBhG + 42SUU7/rkSjsXd8oxG2DWq4OdA1AP9y6ODCUJb+RmWYQw2gvWZe7TzGzL+EsD1Om + b/h7oDuFo6+PpjBYRHNmnfQJknbNit2k04YYm3J86TJaCLQ2mZGeKsIJi3STNiaF + onugzsrAzqPNx5cCEAUGK4W5dCEsv5SxvxaygDyz9tVmZfYXEbLRgBGSxL9LLnE3 + qmVaEeYWjcNXP+KBHkhAodun5Fb3kmPKYlRgTD89r4J9lMqvIMuOnPn0SR6JEhzo + RLhAquI9LSci5UJWUp40pz16isRrFUlmhXzSjeWZa1vU75UgVHvi8FaGOY84qfPz + l3cSn1+GtNJARVS2cJNW/XL3ZsWcX1IbUY8mZWe1DN53HdZqqQAGIbQzoV8R3IKY + NrEzaByy4EN/Qk/LJvzDSQbq5FRGiwr6ZJELUirJbXmok8VXk1IvW8UkA+aJrE0N + G/61OWTQE2oIgo301Q/rlXF4gsc6nz/eomphOhZUDB953IkRvsSpvqKobPyFX/j9 + ldCiuH0rdpgGLaKDfsAXoqKO3iZO+GxnLuHMRC+JvNRIprL8dZOe5mJjmiFhbJTS + XgGl+pN5Mi2QhgQU26zmrRGjOqrLJwt62DmwWi3pRxoVm1jOSucTlXlAqezArc8a + NG+AcU41tq6Zg47TipJuxEF/LyexVoy8EyeO07f6Z4yPL5rbsjz1p6Kh8mcm8MY= + =vauB -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:34:25Z" + - created_at: "2026-03-05T19:18:39Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAwc3qPj0FD1eRzfQ9u/5c+Lj1nMUuy9YrzXW2ez33uVww - 18RFNXVhBGUR1h7a/1Pcn9ikkxkN8q+76O7kdJvBI976YNTTy9gDmZR3W+QuaCwQ - 0l4BsYWmvhF4/4l3Hgw0Ea5988oFEZ/h0nwxEkgOZ3VMdulOC/lFmCx1nHhfu3n/ - 3X8bO5aI8wyarLiI/VL/9y5AC+rEEA4I5S3bO9S53CllTNdeBO/9BFa22hrerNHu - =HBAV + hF4DQrf1tCqiJxoSAQdAlkdMC2q6Zxyipm40asFWrSJwfzNomlu4dzslMWWdbjIw + CyuqrCdxmVtz3As5aIlvmuslyveu8B3zxFcfqJ9MZ2Ao3dcAhH2s2htTdk4uTMgC + 0l4BmGHWLfQyjiRHf0myHREbbk5J3edZxXVXFVp+udtD97urqWYNgZihICTjNnkF + o8CO+BwjBW+r/9RCfFlU6rs2Mm6tY/Ka/wjM+RPopkZP7fsiE+cNt7SyN1bmmruI + =EVYP -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:34:25Z" + - created_at: "2026-03-05T19:18:39Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAZQ6LdWAL6kF4YYIypsuLwN9OXyyT6ORGyWe+ftF98m0w - hKnZU9eHIaf5RfNap0Bsy99uRX/T97Vz17qVELScqTduOKe6GeRCQw7ndcZslELU - 0lgBtoxcQznZiOKpxBjq2zAK7sNy02OWpMP2qRn/lb8CmpDNaL9Mz4bgd+ukw/ha - e9568ojfIro7x8Iuoy0YBrGGPvDqYvay0B3Q+tf5nP7sZEE7lhKZ+S3F - =EI22 + hF4DzAGzViGx4qcSAQdAGk1LTapYt4dHMH3wNfJKJ18KHsC4xsm2P748ATJQIwAw + xWb9eDTX6NwxFH8shSldQ8htq3yLn0z9De/T4TvPvxNlW9JLUekJ9b3yYoZ2Khin + 0lgB0t1VP3l/zSQ+3FShorhWnny28KPpA7y/3TCTAr3iKrFkSxSFtJLRnZZxWnQb + LkPUnTVhHEfywVoOfnNWnnkNw7dIKpfOFVzxlXwbDd1YYD2HMIfuenW4 + =Lhzq -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:34:25Z" + - created_at: "2026-03-05T19:18:39Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+ARAAjc1Qj1rOBF1SE6FfrztoxrcHaRUesNEbW7tut5gnmEQr - CKkOb/Yfd+GiA0KPOk8+CqgJFeadc0zQwvT9TP4GVb6Ev3cD8fXNf8V3YEdNFydf - i5/b1XzvMgs55J38ST/M4nzYJrrlBQ36qCW8nVcOwvj6aVEJgsLs3ZhBEdTvWTeK - RkLVjpdDXG53Kbu2ISiaXKLp95Gix5tTucR3Ysu1dCbiUSCbA6ujB3oT9a62yIRo - diR4oG8tlm8XMhVNea3Jv++1TIKsZemsUVTUpMnyxfpskAEQxPdCQc13pnUe909b - Tb+pa3ZBcZ2hHl5mP4E/Sd9jRfuVpwALE6T599jzbFb5c2Itz6h+zn7EalafIb/I - IJhP6qrUhtNWahZmO+mqFbROj+6zNbPnwZA+QJAITqpRSwRVlF6VjefUAuDWTBMK - XRl811MaRNkGZX/dARET5rzGqg8D4U9BGCuKfgrVPlEQRZ2mx4oxbOQ4SW6tza6n - PAxix+soJZyjVVCvJgh5+A9mCNRyMjpnk3dFdJr+EgZs3acUZTTyI/mPuIyjx//i - MoWFXAmpQUeTHHrgO94EAVYSZHmuc5vmE7Z0rKy9V9U9Ph+mZiJYmiRbnvvQ8XTo - L3dKQ4ZolJBDT53nzLkdLlkpRDa+f3a2x4XRLaP9LBSYkRRkVYEuisCsgLE3YnTU - aAEJAhD5H5rEmrm0JP7C2jvnJ3XT3cy1Gf+hwuEyAr24alv/Fdk1tIX2158gp3a+ - upygOH8T/d5x7pswMjPpxmcU7cUYddtldKIxU3jYlpbgwDVXdeOw2/ThWadVrWoM - MlUY5y7blX+V - =mgHq + hQIMA2pVdGTIrZI+AQ/8CyHGM8IIC4XPlF4i/hKHX6rdmVbNF1V7hFiaiL8jlwOl + 3a4ztvA1mUXUGT8r19wcBsWevzsoL5WR0N6jjCPsd3NkJQDs8tXz0zUE3iCYFRwU + p59tM1gKeYMx+jwngPDic7NL4smW5Sj5noenHlk0lbJQScH6aPU2HwgB0pQtG37j + P4URQgHqM0uA5rBYs27ReDbNbQ0+kW5or+KsgCM9CB5YlcIZHDXE/WWH61sK19up + MV2Mn/dYNd96tnZLhQ1DOkRu51jX2QHT3Bz7f+L7UBtymlCap0gENTbmJa6ggC/T + sbbi/3UcgZmRJ7KMeYnLZ7v/xHwd58Jhj3Gog80AF/fagjUhGggFWbIcJreci56S + TtXFm6GZaxpVzJimF6xTsc567V5stxNf2/GMXpH6eC0k0Y2TvDUZFN7FCh2u8Pui + LL6CDgVrifRak1fDty5iBZHcFEM4SFnUCMYQXlbTjj5l6Tvu7bF4CtGFawipPH3U + 6M7M12B60LCkxzfAUBN9Cw/iZxP3ywV8RWIBRvBgX/BErVlASUYjh6zIVESWcsKY + 7lFC5XvWnagev85a3dH2kchhVJR8N5rlXGNZ+X4CfEBgwStwCAHGaFJaogGQ7dxN + pYA/NU+ABFJaSyvCO9GU+4N28YMZwR0kQ9T3eB0h2gO98+YKGiCiU1bvvrZs1U/S + XgE7rk8jKd9X75g4y7yUmkPrcyslBYRSm0Op+6dtoZB5DS/xsGhuEZbhZGdmswSD + xyyIR+gNT2H7L+IumcEEFaIJmrXPjlsKcJXQpPPSFbCMYRGBH3gT2zboN35i3xU= + =6yXE -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:39Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAC4DcPKNy9iEFF1TFKMYFOpMTiIAwiU3o2o/2zBDjK0ow + mRy0CDcrmNF5jCa70GRE5e5maN7gFltv3wVTFYw8EEi6fPg556Op19QDvYXPmBwY + 0l4Bzoiq9kCj6LJcs56fw0nBLjfVCxw5vs+31dVhKWgYwNd6UfWFyN8ydUPszGxe + G8bZWNFPFm0cySN4LzY5JWZDHKmj2Xxc7ok167UXbqVGn/Lh0OCjzP1hBlAcsHzv + =uYtx + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.10.2 diff --git a/inventories/chaosknoten/host_vars/public-reverse-proxy.sops.yaml b/inventories/chaosknoten/host_vars/public-reverse-proxy.sops.yaml index 38bad4fd8..91298c75c 100644 --- a/inventories/chaosknoten/host_vars/public-reverse-proxy.sops.yaml +++ b/inventories/chaosknoten/host_vars/public-reverse-proxy.sops.yaml @@ -4,204 +4,213 @@ sops: - recipient: age1p7pxgq5kwcpdkhkh3qq4pvnltrdk4gwf60hdhv8ka0mdxmgnjepqyleyen enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA4MWlDUmNxU3k4Qi96MkxM - UWxUNG9iTlVkWVQxdW1HbFRVSjBWaHBNZGo4CkdUSzgvdGoyaTgrS0E3VktRc1FU - RldtNnZMaUVLZG85S09kR3JPbEtVZU0KLS0tIE9pTzBpSXFBTlFuR0EzcVp5ZzUr - cFhkMklyVUg1bEJFeVNVZVd4SjYrTlEK4zGVQGmEDblkP0TZgl6ZFxvM6kDraMJW - PQxpICWtn2NQHtK+ZiKnCMXRpVS/N4cj+3Cp8XIQT8Vwo5INXs3WLg== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBJN0psTmZkN0xEc0hpcFc2 + SzVQbUdXcDNoZFZzdjVVUlNGUnFva0hKczFVCk9FbHlvOU9TWjVGL2hhR3p3d1B2 + YVUzME9sWE1LV0R6TzQ0VkNXM2w5c3MKLS0tIGdDejZWb3ljL3pUMEowcmJnMm5D + aW9ka3N1UFNkaGhMc0NlTWhxTWhsTWsKJ9u7TFhIOOVFLhOpCm1zIMMg5QOCUs0B + wOjj46u98zSAeROmN2LASdRikqbbnrrFi/26igNDSb51QwQgdawxFQ== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-20T18:59:56Z" mac: ENC[AES256_GCM,data:t+6pVWsdm3aSU7nwXjr9Uf4KRj8ibBEPemfyz+CT1kr+x22TJ97PmHGOag+sQwAl8s4EUCx2O+T1XuhVQ+iB//ZEhbtl+qtqnf/Vxpb4WGGH7gMUrYOqJEWhOxHK/itjttNicG3wAUoBTwbSuGEE9G9YCYVLGAC8UPuKoykwsOg=,iv:U9MrJJwUZ4jrIfonK60JlIToD+00Q1mTtKeFtA7TJew=,tag:bKdtyNrvOk33DbB5r0HcVQ==,type:str] pgp: - - created_at: "2026-02-18T08:33:30Z" + - created_at: "2026-03-05T19:18:16Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ//XCEGxwxbyEpcnXd+CBZUhD1kpf8s3ZUXgmdd5AukMaxb - C46TFJhUw1yR2V1We6N1Db9QvV2fnItbKUymjFpl16yUPIk018vnOJAYScxIMmcf - 0IVYDVpnl7pTObFyzQ9p22oS5VHDgWn7WBhSkyMwAZxNiHqI/U2th7dt3DJd4S/I - wnnwuJpI8FMUvSspR9jN17jsDBNg0oquAtYVpjN6m9chx4g85li1XPia22FPfKZO - q+322eq3xZR/gSWB+nc9trA4bsfRSUHUcfpm9MnvIFCLdRCuNXvwXKiGdcU5wFpW - fdnjpOiSZKkI6Qeb2OLo+I/hK9HUROcoINVLHL2UcKcoM6ijEw2FPOoTrF1gPgNY - p2hcJUJznuqLIMD+ECmSjyjh9z/x4WFwLMK9xs/SxALgCn0cIuOO7spuQToiMcNS - 9ko1FaPq94y8oI/O15CIWIXQhHnkZ7vcnyesRh5Cl0FawqRXI1TKwgG4enu9UAAE - UVonITas+60s3ZbjAyNFcLNCMRHFkbEllHmR167zTvgigpaGSgbXv0UMH3Z0/df+ - 2KsysRJSjXazfy3jjUbJksAYUVCezH1b49p+o0g85OZLZ19xGIAD1iQf3WuLWTbh - hng2IN8yH6ykuDt58SkvdJR8llPFaKKUdoYBUIUlmc0sCdf5ZFHDIjTvQi/49a/U - aAEJAhD7BFSBQ84OAnBHL1KDiIcp5LjbYdaATAR0desfFZH/LjYrxRNpSBZtBKtw - rkJbTcYPunoYVRQbpQWLkO9jQih7fFmDbzR3tdUbMwD8PIcq/mpcKXk2VyDbeZvc - 5R/cwMaxzy6+ - =S4rK + hQIMAxK/JaB2/SdtAQ//Vx/5pkJMr3rTpsng6z++BpZ3hoU5tN0wd6uOeVxSLenL + rLgUvK61dfEnAb0sq9MCObUYbMwZGecTN6Y/1LTlO9tb4HOiis8lecd/Yxu/Issa + 3qA86BbSssNP9vrzAYEdQGy8Kip4pqEvX4s3Lhn6gU0SOlsjif9lkyPkvNDvpQNZ + b4SW5X22FnukjGGw0ASuLr+VfsfPpSjMtlLqu96q7YaIJfUx9E30k713Gl7pp0rb + Zc9CIlYVeY6QoByXnGi3hscrIbJUuayvrzlZ41Iz0qc028ZspjlCyUijO1tT6k6k + FqcvfjWkcUwvMb6lY7IOpL5TVIE6i9mIy8IlT5iICheWHqnQRluuY+wCHfrPPuNf + 4R3Tg52Wf0jzOQiuDLQVHTDiK5Z+sW9grpMzpFkXZ0shhSmLpzVDevmSVXFO1Jzm + vk1cFPHASrt/43V8LPLsG2b5ltH/k0sCy2ABXa1+QMsjACcYqMio6Ajh4sZLvxXJ + 3p8ucwKROuRWMBTmO8+PrGD3kYzs69xp/UCBtoCkz5zEQb9PNquQ+oComyNOFHss + zNZ7M8uqLvV+ufbmRJGp6UsAxTwnBuKMc9vfH2KTH7r9F3QcigjLoRKSSYKXPc1j + MIr1x0tggz1+zSGbiHLQuI3ECbJMtqaMhROoI+GzwSaf36cvivDazq4h6TWvx+jS + XgG4yJ/wcrBCQOjoVNt+mJxZBbYFTojiKsqJAJrT/hvGJEv7C4kN5YEKkYrtdKFk + d+c6I2hIL/scNgyUTMS7cmSCs85qX1r3vq2pJNXnRHmaa1LEzVfho+7OJDQvoAw= + =A10+ -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:33:30Z" + - created_at: "2026-03-05T19:18:16Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQgAhj0clfjlEYy55QLPjVGRijLYzPN+5DcbCL87kGpJwi9A - +weNvPgV7aN3R31yo5lR1YemLZFGn4NBrR9aIM/waG6Ws2FwsgmEHK01YtqrvAOo - gcvQMZAJ0DCE9p/nLKHt0UeJ0Qgm0MCBN+qcwhfZPgI5BvddkgA9nKNfeQd2VLJ1 - Aby2yZbiDeRntUqIRMWU3PBWCOA3H926foqKLWoXFEm3w4/WOVDTaqrU9QA60C3R - 5T8UoA7AuYzhtyGmMs7tv1Qz8dYJ8w63e+cP2RsJPb3hLXcwGhl77/nms85mwkwi - ZXgjHuhC7PZWg2KVq8GOJJREFDaRp8KwEIO6Of+CHdJeAfZTQ3fU3Q26HIA1eanX - TyZEixZZ1RIIFZqxhSYDxeBQvhA2U6V+g7GMOIYOCGKBxd/kuy49PKwYmceB2/kd - +ajD2ct4880//9lHnT7lPV1LPlenoxgSg5+55HH/WA== - =07ko + hQEMA1QflAioE8i3AQf/esbDrspXliL7SudRAb3Z/UnwahJMv4ozx8kdO2obl2cH + oC+rlWNKZY71V/sbL5ASBtZG4Rk/CbwCQhnSc/EY6s+DEVxWOEMeEEtig/e33Ca/ + NgIGzjRW7EQYbHNLv7DnXsrh0nabnb4u/DJoZ53wUPDiM1ZsE6cqGyZ85Fb8+NLu + zF77bXq5PX0Wpc2ekynYRGLZ1EgD+S0PVQdYksrbIRSv1wORS2G3ahdPDisnFbnm + upZqUMimPTkOTSqK5SW3EkNbjSTvwoxk65sBfEwGnBtSCxv/cBLdhdX6waUFKUpR + 7eNkM8bdPlJjJlzjiJtsmrCJOJNGkvmXO52tdEnuONJeAWLqL8C6H6MqYM0GoucT + RF01qcZ8F3hbNFhYLw4qazX7nbFiTYPI9BpEjZLBrksPGJ2V5JXZ3UZnFoa0hiUL + y/eNdHcTE8DjEHE8aJqnS18pzjzOx9FawKGcErgn3A== + =RQau -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:33:30Z" + - created_at: "2026-03-05T19:18:16Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ/9EObA3+QoybM1ng00nYxj3aLtg4ABZid08UZ1jPhZ7wmG - trs3TPt/8F5g5thpAXYevJVOV8rLAKkNa2GwczMG81RkmxENYH1ibqtyx10QJ+sF - 6RqFwZVcfB56NovYA+DQ3JoFcufv+iB9XK6UJIHQWbyKKCJ/icoHuYQeu0UpDUyw - Ygxgxhc/fCPy5PB7fdGHoMO3e3rONsm+UZ5KzoEIo/YuwUih80q2FG6xGX9+vbWh - t4FwL4kiC3oRU6zxxmqW+qyiHqjyl3oQo+6DHZzRD3Axrrtj4pSZfTYRuRFSnmu+ - IQ6LcMVRzVGNxKpVOrFWre/I/ky3QwWdKhhVaG0PWPwZEwsUNyRqvF5ZgpzS4Vjw - pCGkIg73e/wQSiW0g/RbMOYFcYXmXVUGRwq/oZVNqPUonai9AkXcm+fAcm7dsBKG - fnTBxo273KC4G3ANdCDB7e9Jo+xVUOOEGQ6nAWhMlKXutF9O3iUrFZKEUbo1uMD3 - mEWaSzxbfa3xVhNuu5EzItc2dVbRVCeBW62CaT0S9WSes9OmLBPsAmgxO+3mif2m - 9nkUghp3xxOOn89A0tBt2afKdDOA6J8XxNCjWgjkCEBo0udKr/OeFYlicYxWrtWj - 3hfC9dPJ3nhpECY+CPNw+9YoEmB0LhYtkzl7tdq3ZJ0T/oLSSRVHZdz0J2qiL7rS - XgFlcgwiw41fY6w8gt9/yYUxJN2JL3cYzWH9JaihnjCHmm4ECvNQ+8Q9Ko/OXsck - qo8goNqz/C882Y1SQiI4GdvCxOGYFIHGcpOP6dxX+44/yCarVa0L6ajogvxYYMQ= - =lvmo + hQIMAz5uSgHG2iMJARAAgCNW+G1twuqwOunfimk7FxUDTzZ3SbP1Gw9UJ5JEVhJX + JgMh1Hw+dsEzi59IJZbIM0/IOtfjnz85q1sd40V/YaIBzexw8ThBxoOS2h2Qefft + +kIo6VOTNYG5z15H8mG72vU8k62ZzyGDc+IwLo1l+/EXZKtBLKmJhO/p9hu4d3/Y + HAX6LyIoEt9MLjhxtJCA64CCWciOD0NJVLzwOkinab9B0SJLu8/xTGWjW+NQKPA1 + Csq93xi727G/HWq8mfj+3tBAj9tfKgbdq5yV6R0hsvAoOJhX/XTvrcZPY8ZNwVPo + lQfY2P5gSUW9GXYQP+sSuii7/XkhX3IkBQcoUoLaQ2DA7x2lT2d/dHf5i4YZmchm + PO5pyOgEPhNZXtSDNqeXHohj0CyI+QFn05BaLrb/psBBxQrHYuJ9UdW7E4nAFdzU + 2f0wkUvbAHy5t6cjCUEn08bKKIxG7MmZQcwd6YiHHVbbCOLrMQLbRy7zLs65M+aA + 90JbWmtntAb93YmSBj3/uxn1e1G6ytCgG5wRg2nswIc1Q29cT2Ch/8E73EUiYGAd + WQtKaYwSyXbbLOoA93OMfkFNRy+Er6cakWhzF20Ai7zLTNK1dYGyxAXY6wIGj3ou + SXwSOy0U0/Yorhhz2vaJkcqqgLii/2jvTN88ohoFkjWFY4yAozMwl88YzVJY5t/S + XgHlJWeXNE5rpjIEOqzr1IVkn/aRNIXTKOyyct+3R05Xr5GU3olZqLEhDRUkuw0i + tPV/9TpeP2hEvxMKPMaN1UANScGOmw9aZkux5trGfBq3WIYMLvKcgXsopxj4WmI= + =tUPi -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:33:30Z" + - created_at: "2026-03-05T19:18:16Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1ARAAvOB5sg7F5HdxMNNQLrHyWTrds6HGyXwtk4DZQziYmr8e - /ko0kbW6morL1dBItG/9HpVJjaDS1f7hgUcInBUZ0XotrDSMkqo+p0juwSMGMmtF - s1+5bvTUYBLo+QeXLnvqgN182y3Qi7xpHNiCXm/rQMOVahlgRws4HbvVqjLzVU8M - zUdsMCFhNHJ8Z92NuDIJu4SAVkERFAsCfv7UbTBs4B4B9utdR1n0LsFkja6Hgacb - jzpnQoWXPCPysssJFBzj0eL4YN3FS1SD/XowWFKyEE/8PCaywaoSmd+uCihZFOS+ - 6kfwg1Tc7eoYUqN2ENHrFPdXaS350asaZGpwnshHRrdiLjqkGH+QKlnLqzc7Tv44 - VfIMtffl3RkZso1ovnH+DcJvNVP554zsE4SofkYuM0eoyru4zPMyCCtN7De4OLuX - IgXSjZLJFABfLrzArvB5QgGoeBzqTOGNISSCfqy/YN2btaLoI1ngBllhAFH/XhBF - xwDhCuL7VBlPncZ7TW3Ym6oj2PV60EEjNFN8GWcFHQbxPrMM5IIvXJR72gooOGub - ILUtE5WcV9EEDsAiTDG4Eam29W0gZORK9QMWqXXmkWoYz4JN5w87YKEMP7Qm2EVG - 9Bz4BSU+FC5w8ycY3o3rbEHzskKwKyn6O3Jts4rpMsDsEgCcbKDXe4MQECLk57fS - XgFIY434jcELlVW3q0LCOTgExBDfgL0xb66n+UTpirNnLeDjJA6ewoDXsYWlogN9 - AamQhfw9FRKQtX8M7bTVybqV92859QCXMHDzMbNYF13FoNRuNKRXtEDoJnkLz3I= - =6z6G + hQIMAw5vwmoEJHQ1ARAAk2IQL7O06prWZOizSpM8Jlivg/ySeb9IlI8tued+bOoJ + rcxMfa5D+qFIAgoFQFQStNpEDnSBaFPwbw1lxewuDhxyeAQsQ281CwAIe6ZP0GAg + iDYkTzy/uc/jaaH2bTjrcRrW19Q83zZg0L7js+YWL/AXCUIwyykctKqBfE3va1kq + jlFnb0zwPBUbKCR78mAIngT1KrZgNsivHBOgBykSw52QEPmnvUd7FQht4sshOYiD + ZHR6BLqYBxJHLr+gK+QxzzHH5TDUNm7E0SVM9h09irK03fRV9iBPVe8hdbcSeeok + fu4ZKdIUg01pkXKYJuiX6+twjPU1aXqw3W8nYE1MydFsgw2VxGO3WQH/KLgeMZHx + bO5sJ2+I4k+IDHTC1PF5YZReOwonK86cyjHmgRBf/y70IphfjnAuC2S1MOFiznH8 + C+WYDKs9XECXNInXTqcC5fhnr6Jasy6keEmZatgW5KWJ41kwGevmTuLtj1uYWwJQ + yBVE2sGT+IOsAZOOVpdAB2rzrHRVHn4fPNy3JMQJOeXmSvpBLxSqSDt5MgE++noV + D0bYjp6rESx+6/LLsKwAHIyWlwul+5Mc8W7JXBNeZj+296+aafBpDnY8YXpXmrFG + smWtt2JY2NEmJw6WrE0v7orQDK4maoblH59QqakQ6vFdDGMW7XoAUKPjkWSHoxTS + XgH51HpkJzzDOLT9rs6qYx+iFNfr77rK3mQrMy0yA+PiEO+6z+/UgFwnq6WMw8Eg + X2hXVj1vPgt0W//CYDFZ4GWodfHldQFEvQuhr4ANu5zR/I/RPsZ4lsqm0qhJ8gM= + =+Huc -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:33:30Z" + - created_at: "2026-03-05T19:18:16Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAx8rVXNZHs5XeuTNc+hAwg6ALkCuLoyfEt9uv/lgOmDgw - qXYCPouJxOe0dSpmkSUYYnRnN2NKydUEMpeF57gopANuIIjWaVu4sSLcYOWoA0qA - 0l4BGETNNUtE4C5GBoo0I1+tWwlgs10gOY86gH33wybVc0aqBrc5/eoPbqcIYo12 - VQe57oUy2pYeVL3FrQP/gHJcIxEApObrULe2IStoJ55v/TNlCnT9LO4CBZhOUu0s - =tg22 + hF4DerEtaFuTeewSAQdAl2Ggiz+S3yVFlVFbTRMxNGX0afmgGzwPEfqUxVObT2cw + GM2HttqCucNn/yreDasLBgssYhc9PD3XllMBcM4Y5NRTil4Fq6yZTRaBUKhwlELO + 0l4BrX3+xzIyslKltKBsX9DbqnbCRzUgZNzevo7FKOCkKtKVG7/BYQDR1/i71XS/ + iJ76aVwzA5VoNqTTNFItowbnIXyC+F5k7qQ37/GtcFauPH4HjLygl9uSEzB6JL45 + =mNng -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:33:30Z" + - created_at: "2026-03-05T19:18:16Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ/9Ei6OAZlbJUUiwRtAXBxJtqLC5gDR0zysgEX8KoEWaVe8 - 09Sh1/wO/Mo31eHtCuRRfbMi9hjlAyFdEuPsNi/ksFmTXh0LuJvdNWkWZ4a7JHhI - TEqmCdK9g0cNMC/hS7bEO31KHWYuvAlNkcL5s7jZVcx4/Pl4v+HBFHrInq6NbhX7 - AYKqruulPcc2MN+wHmsd99arDWcAUMX5A/UL9VFDi9k6u/zfsl8+gPC/GbkkAfwx - ojoakmtnw7jPH8+8J8URZAxwpcUIL1FiJkQM2wlH5d+eeRy50n11fnr+q8ORXC+I - tUSa0ACzaxKVVknoaS3e36LZFGHyLV7xf7eDZQlydAIINL7zGyYlczVf8wZxdKjC - N79iA1gOzSo7y8hklpDcdxOk2KCZWT/DtB4wBaK4CUlZKXbPEmOaMOufhUC3AHdk - FvHzWL1SOOu5RgMX7DoXs/ztdu85rST63XvTtdu5VAPa/k31MnrhPHJweyt6gW55 - UxecU7Z6doc/V8yu2GqjcMVA3/E1w80avYorEWnVohJI2sF0Kn9UJOxnT4eU+CxY - B5B7WXeM4U24eES1Z1Al/lHHAJsR6/Ba6WU3tUuP6tpVP1CtCcY7tMPH2U9YbBA1 - NRLLqy+hhYEVfxoCvFhaolGzxppSttU0Fa9Ql1szkjI8mYaYjGFZ76ycp39+vyzS - XgEDn+iOJKWCm/h22dd/Yo+70KLyYECYISDL2+pyi/kLwfzy5p9nYBoz/QiWHopG - W99fTqHim4MZNEbJBX0JhGNEX5dQvzAq/g+L/hH3sp0J0Fpd1QfTUHETE3BQpSA= - =neCF + hQIMAxjNhCKPP69fAQ//UwQF0YWALIt6hkGqts2TI/rq9Oz05+fwJHHLQSdY/a4A + 6dVDyadqWISRx2EMDMr9mQlti79Poq4Ak9U/WhujuJTUQLDZkwWdlkz4zC4gbTh0 + fy4dm12bimaSehSrkwTNR7eCapPTyjUJigsF1iPT6AUH5nlEXiYd7JAvasrA6ETg + Fm66kBoH0c1VAAKYNtOcHmEsZ9Hn8x4KnpFBBs3oBpMwAYmYpBXcEL5KuQiGxDeJ + p6/sI40ESMRiCmza2fA8LuY7NMSIQiD8r1JtX4Y7Fd0HSMSFQf9yhGl9hc59b8ZG + K9jvFlZ9b5wcbW60MX6LQWRn3FnPyb/EHzrkTjp8ka+QOb0oW2qTdsDj6XcdR+Zn + LK2tM6k17s6fGhJGwGQEg1EvR7QQSd8ewBXhnm5J7oy5B3MQ+MiU9FumMMZJgSSl + 3wnQi9ivimr4NbjwyZdXwV5v2uvzf0eWCP9Y4WeSea97ROimQDrOlhRq2SXh4JX6 + wVfAuwDdzUGhD4dq9D5ulIjrc0BgtrwR51ov6irHirixoCzswqquLp1jhvTKH4Rb + D6JbUKHckWt6ijqT9qGdMlPl6kuK4kXBLOrltACHHe4b6uJExn7YjhswDYfdYY2X + EXAMXMDquaHGa83u0LhDBsg5JUcWaxg1FlHEUktn5tOHSfHsWxowin3Z17mdTVDS + XgGcg8xRIMG9tsXVodTPrPMBCxonyJl2atn3TEuUKmArRuXllNu4Gr61Tu2/4S5V + 3R5gq85a4TJue6t2/OHoV12uKaA6P1K54EQ8PzXoN06fhgND0bGlk8noQ+pvlV8= + =fs8R -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:33:30Z" + - created_at: "2026-03-05T19:18:16Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoARAAglwI3lzbGzX20MNF9NORqUhL21943xwewVdeJN0XAr1S - s/tVQM6nU92cIHz7wK6+0EGlkKkBX77At6n3jeNkkw5tU+E4TJb+kwBlnlRUSzrh - 10IG6Y7UeH6UzdG1b1FR+AvnpHpihswnx82scT2MTrZb9jq7aTWmrImsfptIAN1E - F4HsUKbc+AmDCxOnfgJGrbsdAFEkOMknlrHsObftB/7g0TzxJaoVFobFdkU4PnIQ - gj4SRyTkHHpu7OZONfrRKaukbylhUxkGaljBeU7LJUJFsHHrqeZHGrEqFGH4frUx - +oaiKuu9yITuQakV+GQnOhSug6BUncyYa4yTTlS8f1WHbzxSNUi5o0GaWlvFtJ+P - NKS8Cmq2FyyHZ0ZdJJ8qmGmr87YldCQLwx1eM4rMC6uGVIQGWFIVQErmcen7kiAP - 7t77X9tPytCwhyN0m23/A331Szf8O0O0GJhP3TUwKmPEvMJS/ZRZ3IIJ3YeP4Kub - afoULhm0d5jHOzJwP7Fm8L7vWQN2NH9dVRZtsrufS+EAmFtmrRdBtbXTz/6G5C2y - dubvuF4S0nF0Jf186RmXDMOErmVnXkUOfhfCXUq3OSCxjRo9i2FT+p3K6Edq7QYt - TB0Zuw0C19vN7f4l/GUcKMrQvluDm304GqPNlPh3U2I2Nb+eL6bbbsr+p8HUEc7S - XgHFCfuw6OUWAPNY2/G9IzymnFKfH/Z2jfpui/5JP0WAJ+KjlQDnjvuY6Jya5i4D - naXXxT0hpBPsGXyrYzN0EoMgjuVCAtD2YsZdg1VX4szQpkyrDUM7HjSNxjzP+pE= - =V4Sc + hQIMA1Hthzn+T1OoAQ/+JXgWBms9wbNeADjiTz9jAzQYM9G8LHySVY5+j4ao8Gnk + X0u18nq/yOOgiUx7wjINUtOeGchHO/5DTuePyrcl61T1V4xetj84QtWB4wJb/OoU + TqzT7SL4huanQnrTWCwfLhDZRkoUVsqwnUxY1CSkq+X04Gd+XynyBfxvvi3xcetd + nhwZTpapCn3bBvJiCSFukkwBOgv2tSqll2l22pYMnSvHboObthsNdmDPPqOXWdHm + XlJGZ6K+4BLri4o/wMrxWmGMrby0sUU4X9VlYK1knFSfk3kjSt1tf9Alys5lwZpa + wT2wwoDUSThw527mYi7LXdT7N1j6gojsL3DehBi32Kotcz/hpPth/62JCJyZPNKv + hkSFRyfGT6LbWQUtoUNepUQBhuvRMoNI/P8OT4EuVrYu60JMFkgNqxUwB4w+3mIT + cezvNPr9dSS/sGglKmUJqN+qRm3I4lNt6xZprHD8YpV6lGUWd7dAcK+wQ7Lt4JcX + RMltFOkNgAu5w6dlXkc5LyNpth7g881sw3GjGhcpnyMh1OD9EcrYHjh8xk87Z0Nn + 8uQrI7EebYhPX9j28229uiFKjB5vHr1a2ksNzXz5aTj5lLQyDnE7wRdvVg43a21g + mFTaqo/U173ADg4Gm8aT+CTHaBH43awONUjGTVkHNTP3wGqzl2+ROxqJTxzit9PS + XgFfwhTgVKdsSN6rZIpGFz4yJ1e9JA7huI9TU9+N8oCH5XQeEPzGEwG7yx0uBxik + iAPu8z+SHbeFucXlBnM57DDu/7a5oCNWFh4ZK3oLKYTwHWlC4GENPICIQ5rBxBI= + =+cRz -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:33:30Z" + - created_at: "2026-03-05T19:18:16Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ//Qkbkad0AN3W6pUnvfkvM70bbr0C3z/aCyU1DJyTi+hgr - QB4GEDc7bL7BQQK6OLri0ol3+eek15nJQJnVAYdPxcqAQkrv29inTGyItYuNvOrU - efhynuFfXdouqA3kMf/CiSGjYLfAeA/NMDqBkwvkIXLRhJksSDl6sX395fHRK+4v - 8T095dFpkOGfsscjul3fSL397wMg2aPWNWQ5unM8xl/JotUrikiWsAuBOZp4h3vT - twNZkEHkZnQmo/sR8gwi5dbn+qSKxl0AMlOmiIFUfHrWJIuSMi61EL4AKTV99+Fd - a+ldTALMNw/E12fysxJVkElD8/790k9zmdMmwVV9tjHFBe93YmyGZEAShVATELZM - DBrJSAnHcZ+AU2odnkVeFdPs+xP3AvUDD5JbOaNwDo46UAkKS6HD3QoMDicV3+rN - 4ibCGIi0brD8SBtSI7gUm7RA0UkDKI5M8nCNLhDHG6+eaJv3FcBPYUXfTeIMmFdW - Q034wBDzCgy5Iy5vDqzjj5zDPAJRdvXZrsPZDf8qhxKNmezNIHcMz2rEzAQncrgp - 0a1qQMI90SArDDH/S5CNCu7D6+aCEGjqfiIuGSmw01NmjJDdB/7HBFz856Fris/6 - maZwlowc/SwC6H4cGmgG86PLi+mLcZn09iw3BNKu017T2WmmosVgeJGI9iLvYK3S - XgHk6ePtQcwMLtM/MLuSV8/TM/X0vclFVF6a4uHCdXu4Tc8iGKxQ3awBNt9HO0Sn - Oe1WDdc699JEVZi1F3Djl6rrkDsVDv7UJslxIbBTInFF1YfFI9uB4m1J4jGvClI= - =pmJN + hQIMA46L6MuPqfJqARAAu3Bcf3WSkzehAIq3feIIybapgY5ilCRUciIt3VgomuaW + vn+PZiCrhEyiEZ+m1ibaM8eVlZOjIx2OfVwVgvauveSx+iTRosLn0CKRWJAfXEL0 + Lh2l8PQe1lrzKdQa9eW76ljuIBa4LP3kFmqDXP8ACbjwLwZZQN2mAYaf044EFuko + 2YPMvwzVgT3y3+koKlW2vEWwF09YN11ugJD5KHoUyu9uWXnzMvIqt/QZgxfOZ+9J + ICY+KUaVFhyUFmNL8Zs8JUuXwmR9dEvhPRdiT7JmHSEElHd4sLEhkMJhZI0zChWN + 5FOYTRgBW2H5fFzUiQ/9OwJJNnZCL5weRqcfXIy5f3ikyB93LQOrTFa19mozcqYN + 8nWIRyIce0g8Un/laCABABEZY0UrGH7rUk9fSg8RcJGtwN9fkBPbo9w5KtIZGpm8 + Nc1P1zoMxRqSLd8iUXFaYFLWM2rky5LeooqHYUte+5qGj51Kv49533i1bRsF5f3A + WQmLnGbaZeiKYwrIHs59Bx+fpZgzI1oMDhPdP0QHErcEym/yIgzZzyqtA9riDHt7 + yS9VWhtsAVVej5YUXvFQ9FBqv6RGIyyAOzBBO9/Avy9aZ7t/6Y0GnR6SULRl33r+ + KuaQChZgq9u5dDXJU7ZI12PVZFdsb3iJ6QUAW4lS7lhjq2cNTEqnF/ovayP6eVjS + XgFElyyCqW1QXYXDD399XjaZhPCZWUI/aywlPnGUO40g2bNfjNT5UOmPPm3XkAGg + OeNfkc4DMhsf/vz90YlCR1ARe70bUdpFiKgkv5ow4/ZUb6wNaP6M31fCRNuJAEg= + =E6pK -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:33:30Z" + - created_at: "2026-03-05T19:18:16Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdA3OQEh5k7f15OhwLnbF1q7FRxHOpE80cs8V3AdhYW9Vkw - cNIr8r+8ZYh0NAEt1/cwseD8j4irU7UUZrF31npGpQnv84EuFb210Db1YEReg6Ja - 0l4BpYNVpeZwwtlv+o+b9HBUSnRvBXRRTLIYZQlJfqz+a7Mhm4xE2h6pNnopxg5P - 4GoXpWlhH44EsbJvIhEOZRzoVacYzFZ7Xb7Lyrce0zlyNDVVAR3FT6nwjw/ozvD8 - =NmOf + hF4DQrf1tCqiJxoSAQdAd0BF0MpX492erFYV+DXY9TduATvEt1oI1A4iq1f3lkAw + fv8AJvqrNRQZfvkneUDok+0N1xOZyKySuld+Cq6RoZOYvikumg5joAjf3AMO1Fh8 + 0l4B93kbesd6Z2tT1/a8ztl9XFdXhsY6wO8JSyPGOfkNkM+A1t0RJwwKZCDWG3w2 + gLRz2trUmGGEXG9RR3VFKTxkzDod6QsGr/nf4JAaKObYUJVFKos01nlzkWB20bFx + =wqo9 -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:33:30Z" + - created_at: "2026-03-05T19:18:16Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdA8JsYSgLCm0GOCbQdSWDWgTEOnI183ngmfF6ngbTlyTUw - Zwmu0bZYENCMpcyWQNQuaVYTOR0vfPOpdTOWT5TPJnd8COgP8MkAOi9YGmetj7p7 - 0lgB0Rsm/ZYvB+QlYzn30iEw9ekgg74RJwdXLWoZHLhOpNqOCfDaFUpDp5r48Zu7 - 7EGFjvm62bxRFnQnKVjRxNmBbofubE7zdffpVr+vd1cuAGA67v1xExw3 - =esZ6 + hF4DzAGzViGx4qcSAQdAFPib89nKfS+v7b0+KfBQQxJkfzfr1RlEMjNh0CpuM00w + 58n10PCPXShmmgFB4AMvVn86D0K0rpbMgYk1sEuqbhZ86c0KfLGaMhMEMUfDfjVG + 0lgBNmaNy2uua3fTY+0aOfOpXAaKymIUfXZfkRsL8es2e62O9WDaUfIIdk5DGuFG + zVZauN8AtHpA1ghtec/E47IYEm13fST4P/kP9LQ/zOURKFDvto3WnZK+ + =mg8B -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:33:30Z" + - created_at: "2026-03-05T19:18:16Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ//UFW3M+tYlsWtjJ8KJ4ACazgOD8wery0OCOeSdj3eutvt - EugnKskvNITJ8fJ/LzwEwQAeuuL+rZ51HkVsTJVrKhJenHuaPdZddxwViw02ZL3S - OHKOMoK3kuKBr2ua1WrGfjSLgazN1zUO39run/OTaV0MP6mSjg1n1G0DOmDM8x4j - uuJydEh0nR9sdlxn0MubAcYoA35KNRr3CuN3yIlykn5P78pE1o6tusX46v67zwDa - Keyqu/0SxUaeH1K6Y7QBaw/3O4i6wDeP0Hf/sQA/N198/Pw89OXr/vkhU+PuPmrq - mHJHjodggEuszM/OA0nHtIDkYe60/6ViS77hPMyNJRGrR4cHdLAW+VcT4Za7A8g+ - BpAr462uDAl4i+LJeiJaKusxcyW4Fqk6HO8hCpp0IVmTbCyo27bNdOp5KtgfJWbd - ayDjnjLAtvniMSvPtshiYCqJITnyFLXkOLXTOi/+U9MLQMbONlV0Z2eztxBHpJP/ - yzkdvxPBhpACGduyPnMpPr9EwpRp3RMe1zAeeW562bUlNCgVFNc+mriIipbQFV8I - b9OcwBPZele4DXSFI3EfEb2AJ7uevkqaYj5d2Txi/e+Vz7qIGyv8eevVhE7vE+yV - lARmmGDaXyWkeqaFDI0mwO4KVzmsyXyYszVsJQiJj4jisTNmckuCJWoDiRppMJDU - aAEJAhAZ2wQEVBYOSVMtOaNUSgbBe5hWPI+omz2iXdPXHLkzjm2kE4eO9BmxHJ9e - 52h1fictGfYA8w0xM0qtzd5dsD5fRYe1kRc0ycFxU6+4RiK5vKyeTBVeSTtkLiQH - 58xshx8etjsE - =MsXz + hQIMA2pVdGTIrZI+AQ//ZYySYjaOY14oo9fox2pOdex4OQKzR+391Z+d8ZuQp88H + QqLPrjzaDiS3TdefcR0ol/xSmycGCApRGmEyyM/+2gj7MFl+bCv/1FX5LUaGaMcK + xUPEi71kB9VONEV/Cbea3O0XqUnOjmW7z8HGUx6eTutMnR50FKrhN+8KDq7h3dYT + PsDGOhh1ttQKNGoWHS/Oz8TAWhty1gcIUtUIjwtbozVcQ41DPqW9w7o42xVPVDAh + cNKRMznDO3d6e7gyn77pel8jWDN9q2BEEGAK0LhdFp29rIO4xY3GWTLcD/tMbOjU + XgGk0mHE5NVzAa2mDeTMOTgy5BzGSTP4U0QK+/oGpBLV2iiwWIMlBR8yv4PpzjR2 + vcU/eKBCpZGKZsQ6VkyIZ8Y7HI920wqyVhNQJ5WqUt9zfMqEhEnaL13xr1sHIL1e + airXdS6uIWkvNbXX496SpoZgVM0OZNpcfuQKtm/FXkT8XMLd9G/ipRswYPa1oE1V + AbelEx7F4y8n0XTX6yr5my7PHLoRDVbczKJTX2hfojQEqKPkH3aj429aMcDHu5C8 + dUhxM678VVzygU8FrMkIwt+Ye0rzlShAjx9wftBU/VLp7GbBeDy9R+tTx5cauC1V + +6jS+nfZOvFrcBlr5bz0cT479FiUfHiai/BYSQzgYIymy+nSix4IvNpTYofudQnS + XgEo9TlK7l3L3lki1S2VHhYVJ3EkdYeQFhj48uO6wk5FesaUfpFt7DsDVfbLATYI + GR16IiSVXLlmgUiseWhg5nexWWq3I82swfegFjGV+nuLRKAryrTfhliF/8xXqS0= + =Z+8H -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:16Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAhDxMZ9xx3fNlzs7AdELNLBLc75FRC9+fSBt3VA1HLmYw + gbDhnTmSbRzVK99Me991abj5xt8qlU/YkmC5WmUEc7cd9anPmzJPfdSBMARFRnOc + 0l4BBNyuQiR3/220MNNeT9ao2YwjXeUESq93rqUgN3DyI7DrzCoiMxvfQgeXegLq + U+l9SQFcp3VUyJdfbeeajRrul/z79p6bTXC0Djk3RIyiRrnWKLCkkTYrrxrOjtpb + =v5n9 + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/renovate.sops.yaml b/inventories/chaosknoten/host_vars/renovate.sops.yaml index 83a6ee9c4..7814f99f4 100644 --- a/inventories/chaosknoten/host_vars/renovate.sops.yaml +++ b/inventories/chaosknoten/host_vars/renovate.sops.yaml @@ -6,204 +6,213 @@ sops: - recipient: age18qam683rva3ee3wgue7r0ey4ws4jttz4a4dpe3q8kq8lmrp97ezq2cns8d enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA5dXY3cTZjN01xUXZJK2x4 - WHUzTUhBYThJQ0hKanhwc251blVEMnJLaWswCkdhRVlVRXNMZTgxcmRpQWRDZEx1 - WVdYUUc5VnBlVlg1NUdxNnN2MUtKVlkKLS0tIDRZN3lBQ0IxL2pwVjdiT1NTQjZ4 - R21sWjVQUW9jeEE2dVBHeG1wZDhEK1EKOfz7zrhK2ab81kk45Sj682IKoB0uYwVh - 5V48S1IILG7Mugde4IplpUZkowbUvAFJqAolHXqn1CyPipfnNfl8Lg== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBscExmMm5DOFU0b28zcy9Z + TFhxRFRkMS9RV0dtS2tsc2lFcHBKQ2ovM0YwCmJGVGdwNDJRa0ZvTnlKS2RnUFhl + SllndEwyWjBQakkyeG5hbVBKWHFnc1EKLS0tIExjNUFObTdWL1RxWVF6L0dLZ2F4 + YzNlZW90MUlHei9CMVVlcXQ0REhHSGMKWy1saYjH2Z1BVj4Ivtk4ZBuzt0PSZ0kg + K9dS+ZEv3G8vw+yfBgedrdp5qWRwmzq/mB4v2Z4Vm44tRUKVK495Pw== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-16T23:16:54Z" mac: ENC[AES256_GCM,data:62IDMR52Sno73D8KNBHhXLVAm3TaXYKc0A06Uzi2i7Fw6Zr/mQWk8DTrPsiFVR9THUfX+HrJAo0ChD6hjt+Aeb+KF4nn5iZ7NO1hgnMpjBFc7FtpiLMQyKedWv4PDZafzPq9IERQJP7ThAPcg/1B0FhUw7Q2STkOucFQHWJ/UQI=,iv:ABhwB0GAolUcmJjqWhdwL1+2I22WpWZhaEAe6AOs498=,tag:V+RN4Edj8Z2Fk13RpiSwtg==,type:str] pgp: - - created_at: "2026-02-18T08:34:33Z" + - created_at: "2026-03-05T19:18:33Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ//ejXad3f9oZ37RLrrq5ENE+rIV2Gq31enE+ajcytod8Ux - qkYAN07vmrh9wViBeH9XBvje97heBawiXVfuYfrBjhJ0PKDnByDFvaaEClOMwHXF - WPDLkGmkRADISBS7mmF0UBC81zZs3QWUSc8jkuPPCrYpHNIjwJ4ViIJeedVpeVox - ENIwJDavagNcjx19xI3d0VTmP54HIr3kOlabcCvS6qfrv2lbPdowjMdgR/Ry7plA - tkn2PMpUCmORA86uhdReQ7u9oc3nC771xojdw18dDFEqH/8DGsPK3d9+CG+sq1Xs - 3kB8bDsa5/YNabEkm7AYiVPOzblejBXWrhyd2r8wkiFGFdu63Vb+HvIvq0dxmUoq - qw5O4w1xfIYLiWiMy0ji5bBM36f2Er9D15gFZUJN8SNDLrTQPhx6LIkPr5eQ6znc - 4a9Wq6GhOn4BLo4FfB7tEsV403WF6P4CqVcZx2fSKFAyxgiqq5hEwJwoT/EqjTtq - u4o/37l3EFWDvPAgYWIopJ8jvrP/dLnqeDgMbJtEs84QS6mhVeikIXOpZJVAmo4d - DVmc/lrWgQ7nHYqpWpRB0EZR9UaeREg4bsBEx0EMsOpsUrwnBThhDHVSbt7PEiqf - 2/7KKh02JZGt/A8gKiueFo68U18HTrF+I3IuQ4BLsNc8pOaNJ7ahysEFdYrm8VjU - ZgEJAhD/CQkZLYcu9PJlDwixMxEec6Xou0wHYfpe2tKb3MAxXvIN9ujmBSR5Aghl - R+soYeZpIqAxoFdscv/PSisjryTRqnZFHJHtF93EoH19X8bTJKiNFCr8wkkVtRdf - +6NFNQWvBQ== - =d1Nn + hQIMAxK/JaB2/SdtAQ/+L6Uedj2YqdTn6gKUn20L8iFhzwx+PlSIAEsR7KlnJbwH + /FRb6lWzK421d3Hw5m08N01zoFkmOwWACS667k2bS8LE4dAD0XrL4ZJAibG9LJXb + rVvSX3GH7uDe8oeZu23A94QRi3DpQPHJmiSuo/GfhtaN+lyRPrQaa08zTcQQh6z9 + Kvs5px2Oj18Fp/ZH9rTp05XvnhK0/MtGD17uM8qM82xqWoftdA/2z3cXXeiUPjhn + hdg7IMjCZjIq01Pc1w2zSq1mSZItrbDmxUjcQ67MkrJz1SXpAZluwH7UAfE+p3mL + 6ytKRmZx31Fl4BDo8ZyCc2SwPj5d30aBafrpL+DHgrn+uGecAluogzJC/V3qG5m1 + aTPmOhGNWEabBp0QQlCnmJXPzJ2elnD038SRqpkwYc2PIj63YPGMiZ76C3KuA4at + 1oQhuFL2taiJU3fMsGKVCg6gDFQQq7fvkEuUkgwG5yRcsEW7o19FcAY6HBNA5jU6 + NRs6EKsGMY0Qi4VsoXqyWguu2FZKF5h4z/mhDqNc4Xd4UOaW6jjzJojJgNlW0Ohl + sKAlApca5c9ddoyRgVN/pfb39c/pZJ3lpNozfc4cFbbNZ/vyhqyihV2TxVtZs009 + NZGipENkgNYA8s5Onix2rpNL9+Bxqa3m1KVbLWBm0bYLq/IR1Frwq8sjqMANZgvS + XAHnry+gg50p3bOI28AdartG/GBrKVPyEnRCPkfElcgWRx79dtGmaEL45E//0jda + cKfW83ZQ0QQviSwN8LIMT1JL+J8nW6u+e27Zu8j2m2YItAhAhCoscVyMhkMc + =xO4o -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:34:33Z" + - created_at: "2026-03-05T19:18:33Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf/fpNa6A9sHipVqu5RfxLa1D2xuYGAwmcCVoH0B91SQJLk - iv6HVCEkgBJsUN1f+poDo5fm+0OA7uWvXJE32f+hoHbynSOKiFW8Mm46IWHRKB4V - OIABODLP8sHOhzGixMQffEs0OyfPB43i99zfKUW5olAyPrj/ivOdXIX/tvTp6oRS - 6+Wso4pn4KnCBqQTxNIvdAqAFWPCQWch0+FRERkA4gkUN1VCAU9XTH1ujzpjg2hy - ZLOWfcB3GaALhVaKAdovUPiJwDYmiWON8UPe3xKLO0P1D5Qudq1Gvu7w+998EnoO - is/RJNBrlrOVNhbw1Lt0enGtEioUO+vyGNcLE+qon9JcAYRbFU61GFd0vRBMed2A - PFC4F+xFMxph9lkqdWs+zwGGjKqFLEPtXNjMo4NZQuhLsl+Qyf955nd0wmTyOXAX - A4BDu8kAaMtIo7PESfwgjMgldfTAfzdqzVxGxU0= - =7GH+ + hQEMA1QflAioE8i3AQf+OErOjcnjnyt21V0DtRgytCw0BmjpPUJ0XBAXszrBbH2J + dlvNxDhzWIoQGoMXFvSMS/zsd1b2XPJbdkn8d9xVaFbJ262jUscCiww9DZbO2Dne + XYIPT6rAM4yuKGtwNyaI8cwuFm4mQapAzc9KwS3ZgVmVVq5K7IN2vgrSMdkk0xnB + S+m4DTX5vP+O4kzgCWbzlUuGPZu35JsmZuJxitwttvckeiVkQWRQzfe0PLTpxYK7 + mvfASyc8wZSe6pVAGYXO65GaYFUOpPbPpdSCmhyyHyYwE0bluVePAwu08saWpcdm + VjnCKjuRT13a8+evToFgPTiqQiwHSXWRtfVbdCPy5NJcAUiJeSgk9jrCZqyt+fH6 + z7F7kkQhcJyEE9UAa16D/NswiVf9OJPrVsANGhcrOyUb228x1nLco9eHhI8A4c50 + vY05TnLfnAuXhpzRJ0BF0il2jGSOLJmUpDDuU34= + =zLGo -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:34:33Z" + - created_at: "2026-03-05T19:18:33Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJARAAn6+VqRY506NG1oATgV2AeU3mhc8XoVQCYAbqlR9ZPYqO - ZAEoi6UB5gR+Unhib89Dis5sQqGBkG4zm/X+5of3C+xbt9j+B8Pe07ski6Gpia5R - MByOHpQsEff4Qu1XEFn2iceGrO44xckJKWplc7KodI/dDPwE7xPSBvD2NDhM8xne - FIM4xSw0L3+UfW78jNh5o98uWCFaWyORJ354lTFR4WhqnudLUUjzv7KrUA+jQxIP - NhGUZ43sgJ/YnaP1mzptIgrdCBpkVV0Oi6J7aI4P36w5QaYnXE4v5LFPhgz2S0vp - cZngUBhm4KhKziXBV2TH8/YVXNJDWNmk5bYKsV/C/MdzyHTFeNETpd1Q9YyIqWrq - D1lJxYY+VZDSvDCM++dEzgSy+eeZVfR5gV7jJHXnT01eCQeC5mVAUhvi6tmFcHrr - WhSx9KpykNFKf+yTI4adgsM/+3HEZ5C/brsZgmGleCBvfjntsn7PqPVCZJL/Az1k - 6bgDpUS9+4Co1+jSC+uMxoFnMY6WxRz1C3YxYlGXjVDUMRi2Pm7CvCGamixsKdk1 - BZf8EQeZq8GW4g8bVOirlk2NmUOEBD4As3L4rsp+iFa3jhL+HrkahgeChqnJ435+ - OWegtANCfO9saLC7MLHrfC9laokJ+FH5aF8LYWdqDKAGdMXWqzW2jO+ih2SOcbrS - XAEb8BupyaLjjf77e39a845xXxKJcf8RHUuqTbR8HICrw6/TNhPoRVdItWniQ5Ip - TadOamOUKlmLo7eA1KX6KdeTrAHjxku03uV3xH7GssoX4cfnTWq+2xN83zoq - =CtOA + hQIMAz5uSgHG2iMJAQ/9HM5wdslzV5mvpBrJ9t1eU+v/x5xZPJ0zQe+7yIYxIti/ + O8duBbIWo2oiwgbnfk0qfm8IFaSRmpqadXfnyFZP8Uhxwfv8RN7AD+BYJDgw5qJt + Sb99avZP4tHr8VMeMqZwgvatOO2LQgPReoTn6j/XTmgNcCPftxWXyi/xurGJfTnG + asNOObagGrmFE2Tug+26haAQrrTz3dcEVaJ/0PniQ4zOYcvp+IBSMdyYKNGslWCq + MYywTYmK9+0dLFSo5H7jxvMrqjnCYd9N6zZW5lwYpb+tW9zE/RLXGYDj7d6Shmm9 + YZ6gVsriZGBBpKoehcJ1BykLQWdZ80fQzDb5GNzULd2I397KwZXZ1ZWXne6fb7Gc + NyncyOftdnFZshzO2n5ZdIAUZYVo8YFAMcG4YPAhKTNKuCzRxkFfpxKmUXgWYrL+ + mgWRC4dHPLw7RPdyp7wSG7u4rSUwawj01VE3WAipw9/IE8FC6J5vfxxccVJkhTQu + ied4KMCp25icvTS5Dj10W6xB31BUJ5NzBCD4khAh1F38HcAIfP3XPGHEQ3ynGbBD + 5g0cPhZ3P825bO1hrdd0QxhKeJXwk9gX5kIHT1thoH4AwLIM+E0c70degddnDbil + Pt/tY0X8NNLpR/lgrLlF18IB/FQzym3Y8l9Fs6Zj6/KKHJyAT1weDgtxSAg1ewvS + XAFruKyEw9Lz7mUUzAR+sWqiBvE/90Q7jKYsTvXZeIa+IQaxO5K9CRHxdsDvZeMm + ycDt+vO0OZKNx38O8VW6OLSgxQFyE095CRjyjnOjcLP0vjkCTvTPLgPJooJ4 + =FEXl -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:34:33Z" + - created_at: "2026-03-05T19:18:33Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1ARAAjeUCEalx6I5s/CeXW7ClJn8VnE5Jx9Nbf20HhrZqdQpB - TiIzIpgB2jou9e5nJdZq9UXknLK8MPoERV2bE3zB2pOSlnxq0i3Lss0ZIWQYgeoU - 6hX0qa3gIZnQdHZJfD/Wwd/suOYiUDKg09HC0SrHLQ3bwzpnJMIhCNd74lsT8jwj - ziAshsJ3oSd/4Oaa+Zz7eYclrKhRM7KRJgDRoM8CSn01SrbspdgQSr9D1QVilNIP - 4JDqoSjJZQ5tnzxv5YV/MJchnFtX+t+z6p4pyV+dZWoThrcDqwp+0YK31t0Bc4Ci - T4Q063KA99q28AFYN8V6JbvXExZaXRPUi6jaSDFYnF/DdV6EYUfFBN8h57ZBnP2A - KocHTI6qUDl2/Om4bAlCzSTKiBYGrU57dYRfzTEtd49iGokau5Nt2X2zfeInVnzu - 0mhtUz/Ow1d7mgbABzxeNJnyEvpb1XPJeMPCoFwvGmn7EVTBHGTcoXrdWJY9uWQC - ttLsZ/q9dfT1oMQDbBO8Qsefk4yhteOcxX82z8F/1+I6qoiy3I8Z4y4cDIRzeXbE - Z6jkoXcFEyOKP0uVOBzCboLpI0AYwAlZm9hu7VxIXkhglPBamcRsTW01jh7SV50S - VyAIL/9H1+coDlwYUPRXT1Ti2VXcjEx4cm5TZxekBVem2SnMX7mmLPjLIzTTqznS - XAHBGizfXvPACDAvafKaFOkPdhH4CoR9fcinBtnnStiRu2WT0DKHjpfhnuQh56TE - 5AqZDaVWZkiU7i2436gdMIgXOXczVRSO5SnFu/YiQ0Dl7l0KAEQ6xgV3uQtk - =lfif + hQIMAw5vwmoEJHQ1AQ/+PHFy9mx36DDsczc/nPo6gFvV4JkJSXU2Qz/twIPR+o7B + Pa/WWnKjeHImE8vwntotPhRc+UC9AI44Uvza47l2GCS7a5+33GKsdwuGZaJpDIsM + hCmPXI1e/VqW7JRkIRGZgWZyTPzZLrjHmTfGJP0x0lyGJZyf8Y0pRbQB4Xshq2X4 + kAXcAMumG9CUcSO0bJth5HVEqk+RczpPJEfKbmzGilbXbk3rFjTCWjkChhj8Oa1O + /zT6PGXtlUyA8XY+SJ3JlMY673GInIGrNcdWvZqPQHnpY8VcWESYpYvy83ZCuCGg + NvBR8Uc+bk9nCOTdTSqXeVspYqipisWsK+jCbz4ERzZsjYdHfYyS1Ml3gCTNcDCE + Gjw5Rgt1vOLuM8QbCDmGmcic0p86EhgRt+7HiJxZSD0siRIui0ccpaFq+1V1sapI + mn2TjpSm9f3I3JSZ5NhOnb1YK/gWqHlIRirL5DrZaOzAle8toH+I8cQE5L087YWC + PLm/NgRPne5fhaTfOM5EhP6eGSOej47AdV88VNEe5Dc4xQSWn4jhnOTGb0bUotOd + rV/SXKeSIl2R1CI8byH++36TIewcgtEVhm5+QB9Ve6q6k35KitG4y0QoJ4y86tFw + T0zD+aqqjx4Rk/Xcqmst16ieFQSKYEWC39XkXbeXexuK1h1WqbweX4FbGnC0rEvS + XAEf+jvbbzE8WVR+3U+7GDum2WKWolTfCSHXj7JqmcLk2JNvN59TRK/kubyds/Dk + MQfjTDhvhzn/wqFaKOcP5Exeuy+gSfZJauY5LC+5wMrhsQ4lkrnh/Md9TCye + =uh4/ -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:34:33Z" + - created_at: "2026-03-05T19:18:33Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAaFyMcBIfffcpgJiiu6IReI2BkOQD1Zt8oecSM9xC91Uw - SE6AeFUHH+mLf43UFtqBBrVuS34Civb6vWod11icwSFO6GlsMncfG1S0psIlTAH1 - 0lwB4cViq1tJYkK8FMqDK2WYfh75dLDEhWIdvfEoLgmAFaxijpg+Pozoakk/kOcz - tqt05IRHxg5Q/3SVWcPuNlrm8l3qW0YYdoqG11ziNq69TRbSoFhkYVkF/9UauQ== - =+50+ + hF4DerEtaFuTeewSAQdAnt4ouzxKyHF10xroYyi3wQKcYbI8kA9HXor9sisyaRww + opIYgLBrHyyywF8CWglOvEt++lHwp+I5CuF+if4aOkDqYnE6vIIgBLAIMZ/QDMa2 + 0lwBoSZ5wcOY6s6yCkMIrtLIa72xferlVwc0GRazHvmKbeFmoOwvEkXqM3sLfQYE + /ACp8w909IsUzHT9SmteXI5m/s9cmf2pZ1TSTQ7HhbW09XktlzuZGsKouC22jg== + =Z2nS -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:34:33Z" + - created_at: "2026-03-05T19:18:33Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ//VNDBsMHsUYMX6ZqvajDwrqW8bDVBUfC1xf9qlzwF9NyQ - OCNoFN0b+5iO0MI4fTvOT7yChKjXEHc6exG3H5eY5T4XxuiBEOMOfE5li/rd5TDr - RrMASfQYpRXY9mCRbW+aDJiXLq4SVdQ8yLYnDgCb3biEkjuq7TwuLTjbwN/cgMxG - 0SDadNiNJvSBbjK/ffExQn4Aa7a976mFh+Lcg+rDs1UK5Pp3TnRUYt4JOmB2T/Sd - 5r7ymXx95PWagkda4NECv1Fc7w67T2tamnJ9n4klx3g5aCZDeEQVpHCHoB3MeRHz - J3tx2JxuG2pQoNtgvaXAUkIWg/8XkIfvNCovWjUfkMnyqZQ67VfjudB0UiQDhquS - 4BB+tzR1L7nz0uXlyxzs1IrMNxpZpyBqsrR+imB9gMJ4UiSHw5Usx+s/p5jV/69Q - BL9nO/kWxOfEqyq8TZ8wpkYUBL+Hm9H9vq8uNtkT9MRjVkIqHx8CIUsgynAR9+Qq - ITUb3YXyUDZUykRfMytHGW0i81zLx8tioVwBAJg0gbZCEkZDOoq06TQyadVooiz5 - ehsEeDfx6hTHuEMeQLTOMg1bD7al406BI84p6T3l/zPeRDH8HqXJsG1u/MfP3DBS - ncoXIQ2TprF+1TKozTw1wMkxrZlPkRJGMNiHOXq4SZBGfiBgETaoMFXL5QfcZU3S - XAGoRtRcR7DGE3N7PEO+iFiL1H2p5xCNaXwTejCWfhhPlF7LTfCER7yK2Ki+Pr0G - da8+6YGWfT9bezpITwrRKUOyG5ljyVh0Nc2bATmzl18YzL7YapZP6aIYkMUc - =ieHG + hQIMAxjNhCKPP69fAQ//ctnZmbnOtLAotsirKvseJEuPjNND+UrKjk0Zdxv4f4kY + i/E6/ZLAH3gJCD1PGj6UNcdWk2q70kPNWmrrueZ3/Xr2eQSVPueGAHnl1bZNVbfZ + XNlBThDZD32uV7vq1+E2lcIYSZEq2Q3faAIy4PP3goyFLPb3t4PjPQnC6I6rqpsW + JEXFPE5tLXZJpEWza/6loF/zZWaLwQaMwxhmsZYiE3bmmWOgPVb3jZZXhPYEcYr4 + 2Xf6Ibh0qc9qdMhrkHKMl7xvUodnebSogXdnaOZbhJPgsT6yad/FBw2YqHSBzwbR + 5MBtTeKZPvIBR08fIN0wzMy70ap+oKZ1AchAjIeuPAn0RS589wsIbp82/nOHdJur + +gN/svrQipyWOn7m62dwxsy/NVoAYCMsiay8c7HIoN9eUxmLNsJi9AzbO6rv/z+J + +polaI54QwliBPkgG6CM1BbMGGKxI2aoQFQhjniduuO9/UThTdpDHI4MOftfjtvZ + 1G11UnszI2xZhVZFMYF4O9DJEyDaSIKW4m3wxgplkuBJ0j0kK8eINfGNSUh7x4Uk + RpxC2qSizrCMVsGJbkb1yxggObEnk6a1BGRTMKvO6syH4EgxaiP+JD59tGFTJoD6 + 850p9mlgV3y4zmhjC9m5V1Mwfy85PKl/P3DuObQ4odCz11n6q8yAehg2oDivMgrS + XAEezwxJHs0FHWj4/gXe0geSUX3aDCgCti8iv+bAubHgGM15UaBz+AnuVprNoltk + HB3w32vrEZw1zwzeZ3X8yl2pvxaYwtStoOv9eMaRCobFhaJC3O7UuGUhavUk + =t9Yu -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:34:33Z" + - created_at: "2026-03-05T19:18:33Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ/+P0xI7Ze6a14jFwGhS//0ZOVkusfANEmk07HEe2Gmyr/D - fq4lVO1PfzoSIUjFOSYdNXq5rM6ONK036k3ExShPJHI0wTxrOp4fEaLenpe4+9lv - v2hwamtBLWEw6RpemCkVU3VAgz4sYN5BNVB7DdVVAnA2KJSgCcgDP11cV42BGqZj - c2YyWUuCTp1ZshpoLgIQpMWUgmTe+NBun6Arqir51yrNx95PzMpF0RBAlkD2bMgy - qSB/Iqn0UyrPkgfcm6+nHazaxklLmyuxWTHgWOR4VPYu3peA0YgZOx1j+Oh5/iwt - 3unLLoCaIJQXS2ZypT0ERZ6gJDSG/SbtjgyRdahYRAIROmKlvrdfE7gpCvOy8K4B - nXCTJY2w8VPxO1nT3yCxLCz/1kdxV4Fx5H39QMwhSHGdmm0d6YUTSsjrg+Hc5qmn - pQx3jToVom3t7Yol3SUXcNhlN2qit+Uhui+waNtUUB537/TZRTqMajRpNl+1Y9TI - IwfzX6WNUOQ00YAzqYaAmNdCQeekIG+MFUaHsYfftdSzbC/SxG82tDtDfpWIUcSo - DATZgiSKS9cjWrsYyUfG1KRjRS3Kl+GQ4BJhf0Yz+RFFDC83SShWkzBZMM3s81Ot - hchcqucukKy1FRx9KjWH+pViUX3ow/wtNu+TO08bJYoc5bLVllIhgutEWNU9nkLS - XAF5viSqNhUQT6dhmonmuwYGEYqGAY85quEVv5BttMydIjCFNac7Jawfwtp3FiCf - Y0IREEazji8TqUc3sQ1U6I6O2x/ekM8RH+w5PYVbGDIHkgT/pqL6HkGy1Dd1 - =hCjU + hQIMA1Hthzn+T1OoAQ/+MgXMekOQjfFMHtqW/3v23K7p7STEuVkLphvBapNQO/nd + xWHAjYMTx0ysyksn1+MzX41c2X1VV/NYkp+aKUJk7zaD43hWJqkrhBKkkyd81Tp5 + G5gxNlBshzsrAs4ousevydYVZCpbOrgnSMHp5OyDDAXcqw744kQtCsrgYjUS2b32 + 2gTD1q8rtkkxDGHo/bwyPBbJsDXeVeVHNbPq1n7/XN9qRi6jflk3S3qKUpVdAGyR + pMCg9OSDWfNFIF9A5XS8KlA+Jj/o5u2HilrPvQS4dC0KlMzFYq2f6dEukRBi22jZ + 3rS2Pr7UcDy9Y8fVnN2yjMoFNO73pupSHGYYQUL0c4e3WgHHXtap7olHBKxBCNvB + ICmJi5sZ1UZCcwmkj1vRRVUSJzeuzQmbYFfdEFnRd4OVrFCE8cfjZ28GjnjL+bxJ + N45LVwB97pPW2VqnT2nOUmWEXwUP71JGCFB6FTxBkYY1m4Bnq41svx/3df81kiCM + gIeeeJTKuROfbA9P70m8OrHEDfK883t7doGFQk9hKYy24DyXXG4VpDx5JntwT4ED + rrS0434jw/kxrlAZ378+nueajP6UsC+Tg87xoF3B25LIp6N4fTRw8NLZuQQwOK62 + MTkDTGPRsRfsCflw2emPulzHfgUwlNUlFqjG4xudVRj+whZG60yERQww1f/6/bnS + XAFWZg/1OTglERNx3dfOOpaYeO0KkUk+o0QpHOjCWnELHmvOtdWHmxkzlXjXUJvo + 7zEeQU2S7+U38b4ifZ5xhM7IA3MZifsYLHGRsV6GHq+xoNdIeZNQAHkylzJU + =S0ja -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:34:33Z" + - created_at: "2026-03-05T19:18:33Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ/9EoBbKsS5yPnJsYM35WnqFft9elYMZ7g+NBRYTqChwvao - wkgT2Q2gFqPe3NPHQ1phdcpBwlCFpirnDRY8yXlI0JMuzTY0Mto/aNI4cZvDuS5b - SCPiwl9RS5Z2kffguYr/AU8VinHnSGvU/gC3u4jqoPg+Cy0ppcC461U0FJAtIbZm - XaqFwk1xkol87LubmRDCLDoV8iNCwqWdFge2MCqr9ftF8q6641BicF76W0/DFuFB - DdlAeIS1BD6Vz5s1rjStVshYSivtKD3FZBdfeR014APpPppir6teWA0o3U99nqRN - Vw6VqWVPuxRjhrjg0luG3fL/vYeJK2WcRwQQnalQLl9S7Sl9ktgbUtxHOyBEL6DD - cuu0fejFpu9ctNFNp9AL6WCaciJMsYNI0b9n7j52Mtz3gH8xXBGk25JrHC5B5S9W - a6m3h6bglYmVWDN6jYtCG8ZxshnntesHos2DdFFyi3WNGe7/NEy0SLpxK1e51a2T - ThgZFy2PQa2RzYBWIEc1d4k/cJ671THa3bf3VPzxB0e8BzF3dQCR3PIK0wmCipp5 - 9qngfDSTl1qqxzcqqpgmOQ6WMHBLdBW6wGA0kzfunh1W72wzVhuoGIWZN8c4KKVh - 9afEkjYCCwLse4dawNlNRAzAunnqUwOLuCxRVqmHtNZQH07qRP7ZlA2QNOOu9o/S - XAH+6OHpN+18HjhVIZ7pCGF0Y9mA0y6XlHiZHQwtl5naBmxq6JZZLkSAIzqKE8m3 - B95byFwaHki6EcesYurD4NRdg9WsJUGbhRyR1eOHGT9qpkdcpNveHyfIwOqM - =HH28 + hQIMA46L6MuPqfJqAQ//d5Jr/1V4aKEX0346sCiAAb6mn4Cdjw1s70tkZz8wX2q9 + zyarLMks8n/UhFiRa2jCqbnV+mc9tA3uA//4s5cwziggbyXxDhjSblswNfFedM6w + res+w5vWWXaAw4sQuwaV/1u0+etgff+f7+O6OkigouqDkUvP8Wq3NCiTItqOURcq + JaYXwPy7UzapSG21JLhiY4/g3nTcpQGIHtbdcDiGbfsfXK1Zx2iBTQayHJmTrw+r + 5yswmtl1c4LCDQxhAGQyg0Y180uXMhrsR96OR2DD52qQ27pVxVCShHz/AgLchtvD + a82m7RN/JaVxoYAoY4FQtzp3+D4+fy20Bef2k1trJQpmO61RALpn3yIcPas59JKN + vVBotw8WXGzef50KUAczc5bakuhmAQWmJ1TD0xwkHJR0fWD4hZjPwf0cGtqqIwdJ + PJwdAjxdRmkTGAZztityXgaXQdb8UryHgSnhKMXnk636k8Ln5C0nYSP9qfGHL6HK + AAzuPbmKrWNmwqAWDGjuWEomLf6Gq6o5V7RtgpGQMA+aOtaGTAvSVO2bYqEq4O77 + G/qVGQNBxe4sMFoqWFSJcgQCYQ9S3oqdzkrx0AToz4AFot+lpLvjNvTQn4NO8h3L + YOXtICdrcq8c1GbqyOOFJ+hFvSQoe/bvi/S2vxM2jRshKSAu7keJR/a4U2rW9zzS + XAE2XX5yqNpJ8v+pmq1gu9a58beb9hRL2uLdC9obQCQwymXZYYuRGVaQMm4zMpeQ + v/Gv3d4bVTlnqT4nVuvU4An2Au4uKMWfiiaXxXL/PrCMZmIZUEAAf0RW+L9m + =E0eo -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:34:33Z" + - created_at: "2026-03-05T19:18:33Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAzy6CDBJDMRmZ4YnKHIAq/a+gwFxzeT0X6tpW9d7bAR0w - SNXE/A8LW2yEYGCM9SSI4b5+sI5fuwWP+kX5uJ3q9GNcnAyhapSZHJTQ8wkOiPNz - 0lwBybMbZdioLcJjqeOMyZ8dRgihvyrBvWRl1NYa6Prg7rvmVoVquzULTaEz+yO0 - IPqLUs8r+GcwUIC/ASUCMoXQYxVMSgf0JziAnlFH5ZVOJ9w15Rrrc9N6tJsPkg== - =1cSX + hF4DQrf1tCqiJxoSAQdAlxEzbbRT/qlU5YHCOi5cuT7w+cRGz7MpDghvvqITQXow + Nt/rz042ytRyTrNxXjALl1oVUW1hLSJxOd2fEpS9gxnZhg8JxabBBWwiW3RwYK+R + 0lwBtc9SyiVWuqc8d3SCWMxCw/CTpkRkSZyh4k0gnjtJPjEGh8S3uSyvKb59Lgpr + Zcq1pdpb6og/rmvRehwZBGjE/pDoiPUB0IdRVvEjDgO5eYX3RQvI+dKeLkT8fw== + =iokj -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:34:33Z" + - created_at: "2026-03-05T19:18:33Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAPEaHT1nTYH0uEifdmZO44BkFrk/ACOkf6bfmmvOX/2Ew - 33YgVUp5dIZfcy8kYXoxG3ij/ek7N1XXWoT0P5aVUlb6a6VyR5vDX9OiNxBOKt9U - 0lYBRWQZLqF1a9SJd46Svjc+w24mmnxDbaZY2UBl1zF2HZ20CfwDjvXfnFYf0fwA - e5hYHwobFbazL/xqapxaZSPQOOHELe31X0eFw6ca3jyOQ9gLgSrSwQ== - =N1UX + hF4DzAGzViGx4qcSAQdAABWrphJeM7B1dK6Cl12VfDlrjyGV2zk5L3QdxHst1A4w + WGWAjpbns0cB6/nSNC9ILX55yzGXaukPzYDRNCMPD4q6caZKoWWd82w7xkLR6GYk + 0lYBOo67q6Qh1G2oINGXY357D1AhK7N2CRPqPu196qTz8SYJR4OyoXdAhxft0/5R + HWGKjyX7WugFFO/tkJfg5xHudkfufYcs+vRS4TjMLHiz1v8E22NW/g== + =mKLJ -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:34:33Z" + - created_at: "2026-03-05T19:18:33Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ/8CZKauDAP4HOEDW+Qh9f3e47ZkDS6IUGs6BFidE1rO7Fe - Dgca8p/crNOzeTI8NiAxhlUzNC34xswUGFEv5psS3NSEoPUrQ/XbieJ8UYZtZstY - Wten4BnB8ugoYobXUqZR6kBNxYc1B9UTfDQTiHW+0UEKevGDXKkiWnM8+dGE8HOr - V7ml30vx7lZqREL2ylXMrLGGXNFNcjovHtz+DB55eJrqIB/oPinaSdW/ceIL9+n9 - iCJAWirJ0cPPYrzZbCtB0f50v1jEI3JUR5TKsSnK1p5O7IVGqIYj+kjNaGtRkajJ - 9NFiJxHjxmuF7QwA4fD5rRmq7Sol12VejM5QN195YD1zysiMimvfYsRQWCIJhLsE - mvJX6ouYmMKWuG1NHsyq4kmivAxUPYQOpjrJASHtJI8c0II5OCC794xa9CxC69BG - 0G1kwsGL+t9IZBVOXig9Kszb6cS2Spr3A6yqdXJjAdFM3DaIjmIio7xqcYYd8OaF - dug8ylkvGc6l3FXpr1jheadb+B5G3noaYaDxvy6GW5AnLxCmIM/HMDxTJQPK03uf - Ra0O6fWb22ZiebxnhyFs7A1hw4VPD7lqwo8rMFD+gjS7fTh7UO1ErwKMGDc55f7w - Fvzpl2f1FLUKUpyeh+1XdqKv/BX0KwY8LQIRfdxrUDMFWFK520Oz0ds0V+4ZWCnU - ZgEJAhCQIljvgxmsPBkqylDccJ0m+1hAAdwKR2J4xSzV4ZDpagHW2hMtns0M4sWd - z2YZyfJqEaYikcA3BCfBqHBLdGxbnGdEa2PsuU/F9QR1D0xLOXefQRhQJDp+H4tP - KtFYECfrNw== - =T2i0 + hQIMA2pVdGTIrZI+AQ//RjbgY8mZTYA510JsOgSyCiDnm+Ot+jBuZr7tVzr86k7P + nXYAV80fO5MJM/rlTZZ7bX4cKSth+myO5yDAlJ5h3vIdAHEcGaAqN2vnOgGFY4v7 + 0IWvFPUrDP2RH3t9/dUJWQ1FEq7i4OjRunwkLMvnJ+LLWgIRazaeTOCzwE+3afxd + 0KE0omDY3Zl0FZOmT2Ai5VP7G7laDRSvJC3MWA09vR1v8UtVAZLgFHEk0X4L9mHM + Y//5oMKE3WVwvqMutgGy01WvIz/dwZegfaXcMOaSt2NgoTDvPp+hKFc27e5Yg7jw + 88FAVwz6HcUZCrJjAo8B5a5k5JhyX3u1HY9RfBGj/oCRbKJlC4WkoMxIr4AI7T2W + pOzC/zE7P1Ied/npSGqLfOWvxwC1b5u7zQYz6SkJc9IPb8L5GTEQgSHzsjh19NHp + AcjfzuhwdpXT0azW4Q5rxBmnhUBRZqYpR00ZZyvIXY9KfEJkC8RZB9+wR8QIZ5aF + tFS7SDnl/rdnASy5QU+KJ/YkjHs5DCkUmaPPi7yrcxyigeQf5UZqxb1XvNd1Lwe8 + LnoNyPz7IDFy/v/xpBGcJ80NrAUnbp5fyi6ZosZRzAqBjCs+UH/KMnNO/HWEWFm3 + MZb8wDHgqU1pmzn/kZ5tpwQ2ntsDICMXUyi4goyHiwVV5I6YvCUnJv5ng7H4YKzS + XAHT5LiMGD/SPDgkOj1vMbRicPBnACZF1VYKBJml6YtivlETwfKahM4qT6AGffhy + oMoJjlyuW2ValBQMHTFSBi3THJ6N5rig8cAbf+pDq2fepCOka6Sde35Cb5vO + =RExN -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:33Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAfjzpYqCQEXv0U9N2p7p8ehUZsGvxJiKa6FtB9aUiHHgw + x4zgUIqeskfw4lA+OmwXP6NM/tApbuy1elAhVy3IhIbBU/B4o93j/SsTWPQkv/AI + 0lwBOwZ8xC0e+pmZgYkQsnsx1dB05DOcYgeLli4ZKSehTfGEbz2IhsfklKLxWlM7 + QKdcp7tKh9MaVMI4XAnVqas/IKWwjmt8KTcbdop4hgPXh9emnTKEMxExjyCAEw== + =R2VU + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.10.2 diff --git a/inventories/chaosknoten/host_vars/spaceapiccc.sops.yaml b/inventories/chaosknoten/host_vars/spaceapiccc.sops.yaml index ce6f46768..7c21579ac 100644 --- a/inventories/chaosknoten/host_vars/spaceapiccc.sops.yaml +++ b/inventories/chaosknoten/host_vars/spaceapiccc.sops.yaml @@ -7,204 +7,213 @@ sops: - recipient: age1mdtnk78aeqnwqadjqje5pfha04wu92d3ecchyqajjmy434kwq98qksq2wa enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBNQW5NenJIQ1VOMmJxWUti - Uk03ejlHOXU4bFFtQ3F2THd1djc3anp1YURNCmh0b2ZtTzZKM29PZ2ZBTDlEYnZK - aWU4OGtlMXpSdVM4bXlDODVEWk1jOHcKLS0tIFRVQk1kdG1hdEZJZ1FDRkVHbkhH - bndMbXBPa1NxcklyNzlWK3F2RnRBNjQKVgNRU6FqnlP9eJAgLhuLbYMv2AG24UBE - KXadOGhRiXIQR2I7s6Z8bgCxqIjZ8fsE6VpgjfM0ZxpnENdVMzCIjw== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBGTVBKbmN4QU0wa09KUmFt + YnN4TzRKS1ZZYkpnTXl2NjJEZXZZVHp4SVJRCmVQRnlNdG1IT0dsdnoxeURpUm40 + Q0piNmo5QlpkWm5oUmcreldhTGFlc0EKLS0tIDZiaDVNUk1NbDdDUUNLK1Q4ZUJy + M0F0OUtORWhFdG1jQkk3WFdBS1hnT0kKvQETeg8e+ZOiG6TG887axhN0RJ7FZfSp + woTVVIWrWdfUZZOZR6Y4lucAptYhMDWgyYSD+3V4GZ/hbKdk23q9Fw== -----END AGE ENCRYPTED FILE----- lastmodified: "2026-01-25T11:18:43Z" mac: ENC[AES256_GCM,data:4s5GiYhU/+kieEGUY9bS5W0MAQ/AUS3TbvLezSypH8Div5HRoM7YfMeqgLq4jC+TjUL9d+ZfusjAmsOEG9PjHbIH051gg8U5TvB38wzmw3RpJxnpDtmiFrRh9QbXl+Fz8V/Oigf6hhXbgu01zZpZY9jy6YLNtUZc6AoqAQh27us=,iv:YUS/vGXcbgQPM1CKcK8YjOH5+KPlzBXcOtx3jmUblqA=,tag:jYzqaMfHv4Tyv2NelSSVvQ==,type:str] pgp: - - created_at: "2026-02-18T08:34:49Z" + - created_at: "2026-03-05T19:18:13Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ//TZg4MvfwvpqYRD16lpQnusjZky0JQv2RNp4OWil/VqvU - +AGXFvwtHnz1Q67XRsIneKydY6fFp0JDErIBuashzoE8OVO3BP7mC4P89mWDSrJN - pfzTXTTi6nfNR3ZftWvZ46J3YpTQyyO4xuTxqabarTNmwsFQ8EEIbyNcCL7TVuhP - ykzwgCCooETHO+qdOQOuNJ1liPcMAC4R+9M4LRwn7k5S2mRcR+Laus7ZiUHSKFWV - xGKdZMPnShcrHlw6a9NTSSKMKdC5JsVT7yLewN++gZzYuGr3fguGll+Lai/DLUoz - sl68hxOg2VT9GHjKYbRCKkj+mgGj99xcfhfrxsrRShnq1g8LJX5HsNtUJN/Vx2B1 - ttAd2NW+LF0RxHEQ0OKURt8pdhc2o/P7cZITBZ1NjANmop53v6bCPD/dJm61Rjw4 - H/X6Qoh+093XyLEoOArGBxYGD3Pibz8qfy50BuIZ7xpwZtZ74GYkeLE/oV5QbiI+ - iKrBicyUfBT7Z4Xy4xMDQ8gWinJhgEViF094tOaBSPjWzVJ7QKXAGtKostt2+jkr - bUersywCG8eIhNj9Pvug175y2MAA92fcc7jTpMffAkLXSR9/koNrQYIVemxpCBfO - UkfLoCmqUPM31FsYkT5XM2irQ0UP1rP7TcVyh7x+mWQjCqWCcWyK3bRArddGWgLU - aAEJAhBKBGI/eGotjXP1+4rih9uQBDi6jQIySHqLJcLuyyGUfzg6VQctsQrVE+I+ - ex958H2p9ZQ79oVwkQuTNCybkPis8vMa/YGs3ve0ByOHgfnsW4j5eSMkd1OvvaKw - 3xkQIM5kQ7Jc - =77MM + hQIMAxK/JaB2/SdtARAAjIfgHYnpNYn3KrOhew9rdtpT15Dot1XQ+gHpv5eirjhT + qnZhNOMAUFNuxXNG9O4g+1U8ddn2SyAaw4cTXVoPYsZv8ROQ3DUTvKpQl1h59Y31 + 7IehkYko7jwLYF0yV9/B1LH3b7cIIymSXqHf8DCGCC18zXVXwgTnthnObUigoGtl + k6cDpxdN/O04axnzVatsqTwP/kBqlVAwDaV9fpX7Qqvgr1x8m/uhMdWsP5KzOFKi + sXacnWQ3ksnkpyi+Oa9xv3XPWkHPyiqb84x7I8NpbEA7w+Dz9grnFTRNzwXLdnvL + 1CRN/bZ+juxi6QFfIF90VVGa0DYz6gPeK84DFsx0F886+aVbpAUCJLzze1kP3wQh + 1pnWZAo97N0j/kFSnnAv7yJCL6gNPf0gXcZvtOoSrs+cuaAa70n1rJ4Rb7pkaq6L + +HaoEFAryABnJmx81GjzntjAtdB+g6UYiibFKI8Gn7wQnw/h8/piqL2CMy0sVo0K + nFv5/6Emk2ZibghV5qHB+Xo7tz0YKXGncwMOioZBmAZVcdRyNvhIpXQ9KWEWm64x + 7gq8A+lhwO0HcLn0ZoNxVOzelHPBbgteFXVbCHf49Q7/kvMcQzO9FlpYnInoz5jy + Fibalwn6pbmm/BiWHRKzp9bCB/wvTBamYEkVi94Sm2KI17tmBkRLzlfnJXY2MUTS + XgGZP016Vc1ob0nXahDZs4T4Wgii4DxcjXmc926UWNpbK5J4OExKW4sRLaCH/+vx + fBTkrZwgurHm6Nl1XLgBxr8rYTfYdWG0MZYL+ry20DM0zqkPTC7C/5IEJXBH2Ag= + =FTR9 -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:34:49Z" + - created_at: "2026-03-05T19:18:13Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf/RPegBlPXUv/Lt6hHtcYhx2xkmuOIl58OZNWq5AevakSk - 0KTSPSQqz8uYWPIcXIG1MP+dSmz2UnZGcDgwK+atBf1DsohGAaQGisiT/QLJBLFW - jE4Gy+crdBDOvCoAA6tkmV6dlzA0DidD+D/RAhOdj9Beu4lryZL/Ndehjq1DLaWl - 9JsSEqc+nC86FMgEaOM2KFrrfrbiCcTjqwkGwW3GdJfRcbxOKSKkZtHT8eu9bnR3 - qwUJSZhT7Md2ME2q4p4eAbgUx1e7MFATX/NjZk7qiJIdVBzt0XaAamRAMViwU+BE - VivMteT+Bj31sZ29ZNIkPwHWmWvAz7mKVU8FhIR1qdJeAY+B8VF5+5Bz91vYbN90 - Bz4MnmDWtc6IV9jIQdwbMzOMLE7PS5S8TBadBE0fAEp7CooA5RR8L/5IMHfYT4Z3 - xxcPGCpFPddo9kJ2hl8rv4A5yXmp4MCcoTLWYFZBmg== - =H+wE + hQEMA1QflAioE8i3AQf+Liy5nzVTqACiZORBzVC6kSlNfp7yq9s0RiiVmFmIxqCc + mNJQ2aLtlZMhUV7/7ZVY6X2FBosL9GyfS72gPLo3aavODx/3XnnfXALRneO7Ehn7 + 7wDg05ElZTeRgDTwMKkQTSaKJrNM3fv26npEVqZD5Y9paoGTzJxpRqiHtxwqdJvU + l0dKbJJTSyI3RL/GpMbI66Gi9XX3e6jxBiOUQSOgXfNoFPmNjzy84yBs4Hy+Vmiu + LEysMg7nFCpvkcxssr/3XJP6I8I1SI7fq4hWgvKAb/lL0DfDonCQiTts5RCFwG02 + tW+Uwn/0ySMSAAmf7k92kEMZgyveAgvE1yztd5drAtJeAZQROMNOwI7yfVmAcAQX + MT5+U+eIzjZfxhrQFc+dJeSs5WBq0zTbJDPBfC7wXHnZTBZN/SdyyvQjVgr6Z/xK + cHr+CzULC6rfQB7j47ovPYj4TMnu02U/+QDsbKpgRg== + =WUPh -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:34:49Z" + - created_at: "2026-03-05T19:18:13Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJARAAgoecrDnwKT7W1dq4DjlNFR6cisPfDzNDf35S6HmfTtYD - wvXRhlC+SF9GFxTkXe2iMs469OdTZ6HKEKHoK5OrNxtFR5ycyCGM483yrrBRjCjg - kyX+OSy0/9oPZEkt98Df9+m3SzVgJNPWi+uoGwDhNfHz4slMaSfCyRQpBOm2eYtw - zLCXm0GVcLZhE4cBUUvsl4ZFAqXfATT6U1ZFI4jlqLvSiVPjgMLbbS1pDnhsUqj5 - J/JgLSFUJGbf+Q9+upwpaqfLwbHrgPQGyr8gpo0CWqDrKXYF8RK7WBFa/7nfHFDc - /ZAiuxqFmhGLK3tASvU7u0xuUHW08sFtVVRjQK0dHaMtG+o08ibDZEA9dcW5cyrq - lE0HOzvUPpqA7eSwHl0ta95jjBxc4BgtVMR7FHnFnuGktCdts24JvqE0pngNQ5uc - FID+r+h6DJfqab1UIS2s08lna/VKrOg+VpGMLLl/9jODXTAFg6UxaaVK53BeQWew - AAETbXj3ibOltEvlcpSI3UhdTfN1ZXz8j3OeZ3+vDom0J3k1fwS/IBx+WoDVX83A - dbuK4zNADLo8tA/MdWw/ubnF4AsdkmUZjkiS+LapP1yJTjsjTNLTC1/oIjuM6/ZE - u9ABhamJ3XZDMaWTy5649Zyxdx8pQV+Y1y/vYLzhW575+O2VIbUIlq94q3y7q6TS - XgFDV/JJxljczMrxoYxN4ZILfZkOY0ZInO2C1uG4ONyXD1OL44YGdpJqUrBqCS/x - FobzhCBI2vu5Bm5bVdxabDGZ8GvNUmsQYjV1ndFoL3JrX0vJJW6qWNiXWjU1c2M= - =JCLg + hQIMAz5uSgHG2iMJAQ/8Da1DIBxNI65hgkMGxmNS0h06n7AUP2cokPghHznkDs3w + NtZrNe6IZzjExGAMvrmE/Zod0p6dhSZu0D+snp1zQ0ojjtZK/yyjP/T0ZAG/pwcR + 4Yu8GlHoBR5xWcBjNxbeIqNNMyE+7Zg1XjB0q3pWzXjR/6tVI8wDJjALaN7oPZ+r + d9xxMjwOCLyPhxKNisKchzJpM8rZr07ufAKewV8i3lqOopcQdmdWSXnl+NohbFRK + VAWe/NwRKT/IcrDLDmhOmT2vFmceEgbghbTdCQ+K32dmbW5BeQY711LlkcGTOJIG + Yzfkc2x7SKooRRBW5+WzMFwz06MugREL9W416Bxqe5NR6CFkxbn/MqFPaYHClphu + YFDDOaFHs9dUi8ZNzFkRwS8R0luBj1+SrKsZZ+TY1Kdh4LksBIiHgJ2pc5TFQsU8 + ulyUxKHVkEb/qci+8M12v2rTbAbBMWzl0481fVpVx4OFKveOKOUGO9nGgO4ceG6I + XRfK7RoR4Uk2tt9d6G4tZD+UKFtNEllqtwC7KiQEd7t4vqsGHNvNnCR0/f1gF0e3 + mRgNZFT92LiTHXM1Xk5gEKaXEfWZc0jY5eYBDPQnW9cOdu3n0XUhGsrGmom8Guxh + OIpmQZr2hDcfbAN6tRrvd/1Zn1ZL9BochVgOqW+LPCY8tRjoxYnxnmYyLjGY6jfS + XgHa3KVpsGOd5eR2kZZIT03OAAikXjiet/0gg/z0TLAG+U6qgXM9nvw3ePZJwRyH + qY9X5HiGsK3fPZbeBIsUrLLb2UX73CjP4141CWWn5xYHgaSyVCAb/mZRlJSU6rg= + =YIP/ -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:34:49Z" + - created_at: "2026-03-05T19:18:13Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ/+K7pPaj6D1snRCNBvt5Jiy9oS0uVAV2xf/5wszw9sVRiK - 7W2qTgqyTu3mQcSukJN1c4B0xvIsC2HCBB2CBAzzRjSDrhvqTYjIQG7pOPvEDCQB - BqFPK6rzC3hYKySt7Znc2UnygAgt8RD+0V9RJm/lxhalVlnG5LsQeKCnDRzNUE+o - Lxw8hrUCvfYbYxMbPPB17KmdnsJ4pk8Jxh1Rmo3AP9ywBSzgFU7gB6LyfYPAfPc3 - HqF8tNGXf89XlaISKwzRax6JbO5IAQHpJTTC+c0w4VPXoofRSB7cI4LJS4a4+L8b - yfnCCgN2WnX2Pin1BquA9G0L2+M4+VASswhDYEilEeak26VBWbWp9O7I7/eE/0QD - hBW+1zXgKBT06ubrwCgv96G5mXbIZAgaZeqBpmlpP1axxViBJrAsQiNT2Vj2EiHs - EFpQmT8pWMlrw5i/R0F4QCuLkhTM0J//2nts31lC8v3qoi+keosbqPUmJlTHgA9h - pNlot2wrMPW9lfMZOyKGsmotqFAF1nd/ThfOsMzooHVaPrSlexs9CB+cn5HFebQz - J11dBmV2CCeQKyncWNQTyfS8u5w/BrxOqsIVWJOd93BqTCoJ8vKLAuUBwdm58ZH+ - J9fpcHkkcR5N8R+TYL01X3TLegVo6Jl7Y68SVzJ6FEMPj0OZxPowCu5Wq1mI4PbS - XgEV8seIbYA5DTPTN4hEbEY7KL8FlScPZrDemtJG6LfNMPIxDIoKUqx3uDMkK+v4 - fb2dPpCJIXRWps5iXQrvZWvvUKxkpKSn3qqRZsGo+YV996b7gn5szos5oVgmckc= - =1Ehz + hQIMAw5vwmoEJHQ1ARAAp84rNKtCsR8usRZEejxg/QPYuZZVGvPNlI7pfiAcnOwB + unuklF6G3AhO7I+aaT06CJD/4q9Z0tEsyxMqWO1VyA1uik+LrJOud2I7JQqmwh11 + PeHQtmRCYt9Iq3kA/XGAhGaHmPlT/33zJgytFW4UUSsjbx2Jx+lAon08W9xk7W+9 + +qsobS68l7PRpLQDgqjBZCsddXseQDm1QAVrb7ZtQj7M/jpwLPxhodcNJylMJ4Ul + qoT8KvdaIpk0nS9ZEllp4KaHjnWgd++Ys8FfLs6uQpl0szupYrK6tYG6wSGjRQPy + VGHotI0PDK4rKV6ezEnR8wEz15DD/eOFDrmf6lHxXi5iBYs+KHhtSM3NapsKXxUM + /7QnbIXL9Lu0p/k3ouOn1cTWB9/hLhFJbF6m4My0MPp6/jTuEVpcFAei9B/0aOQh + B2Yv4UC9R7WiJpnnj4CCd/+AtJW2wv4SIExSa1yMUEIChtZvr+mixtQ5yqSbtMzK + p9gS7W6WYvs5xi6Xhc5Ns+67sQy0wECjh0n1ZLz5uZht6jhGBRh8mMX5clzkQQMC + gMeVrq6HPZ1dCPaK1WIMjTLPm20qZNgTP1kSsyOU7035qsGsN04Bc5bxXc/Qe066 + w2ysxGvpNNausLWTivK6jFhTHLkajvZCq+KMrIfwPPJ/oyk6+Qtv6Pok5TH9NzbS + XgFOM+40g0B5OD5979bi6yQoGptKKqJOXqGHJCdAW18fxxt8gzCMXOqdWWfUZTfU + yeNL5IA/jyX2VZAc5uYTL17LhbonX9kbN2ZD1gDnGbRQ/vEJeQmXlbkrdk8smUI= + =dZOJ -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:34:49Z" + - created_at: "2026-03-05T19:18:13Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAcHzsHdN1c+vEBATNIPK9sB5hXgIqdZNMVRgZ+przvB0w - 4Z4QSzYRTGxTmKW6Gorfljgl7/N+aqRBUfuAonozuV9PX7dgSkVJEk5trSP7c8n9 - 0l4BGx2W+f8CU6bD4MROkMPGpiL5Am+8xe/93aQkefgKYlfDc8kHaBp1jM+Oa6nb - gyfpQFOmAFlvOYO65w8GDyW3v2AefwsYyzEoFlnaNJis5MuGvXDX4tX1pbDN6nbi - =qJlk + hF4DerEtaFuTeewSAQdAH0pz0B+kSZOJvCW4T+MWfmrfTMCn0p9ANbUssG4JXAww + AfjSo1yFjc9CmXQIIoISQsT/qlenPw32FNVh8SdX6+4kHhxdBs+RK2Le9GdcZ/uI + 0l4Bh+ZpfbHvpsw3Cd/OVlGLQzqs4/b9H73nbZVCAg2RHEd269Ge5PhPbgj7RD8q + DgiOGw8l+NUpXSccmxKo+Veo59aOkxkwLlQ0AmhDXSJDvQQDHhqeQR0m3QsAJgyd + =p/fZ -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:34:49Z" + - created_at: "2026-03-05T19:18:13Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ//f4B8mXqh56N5kqMhQowZ7Hc/SaQa0arOHp293jIQxuOL - YY8kXrNulr51P+ugk/kHTaaqfjzL39a+hcBVReydJiyVpMNre6FuwZDt/0Q5ZpT0 - UdabWoojJ4qCJXK8+1DwtiFOoGeJdFHiQCA3fC2Ra52xddw2fdlb57z7IXLGm9E4 - TYYg7chIuC4gD5YL0ZFU8GEMg5WkJRtxFYB/jHsSXZlAss6qufLp+O1cGoXau0up - BNZWhDga6OsjQufwFlSj8YQhClBWQleefYRUOREKpOp6pJ4GsuCmFXzvOlNc9nLR - +e2q8I7YdPY2vcfSVvmrQ8rOTWG+yWFWoGs7kYamDCRP/16WqZvMaB2mfchjcOmS - U8Y9a3JZqCndRZO/WpSTNv3vN63VJzUdxA35PPtMeYXStv07utRyqAgszLZSsRLv - cvimOasRt9UDGRXPITlz6TsJcj6ThlGlf028qOQ25s0FxhFsWdYsegv//54kS5bA - so4BZ3jeB8h36IGIzXq/grL5RIL1fyBvEphodBvp1O6VEMUGmoAfyGn6e/Jhxewv - Ko/rQcKg4QaTMJ+xtm8S6KMjX2eJ+bO/Br0VH5bewrKxTTqeOKUAiRu0DisdnnZ7 - 8YmRXFZR1N9NdfMMOs413F95N8G1ee4HatnJG5bTVKvHaDL6s7j/tvirtXIF30rS - XgGoVwOYrpEzDjPAk3vV4v83ZqDpiK+NfsN613uxRVvTgV7GSjDvyGXW+S5RW5nv - e6vMkr2ao75sIJwrHDwTQyIxkZuFzaDmzj3Ou5Bf7ednTNq0NX/BJvjb7xzKIAY= - =Us1E + hQIMAxjNhCKPP69fAQ//dNGFESIfCL9M/WBRaLalCDmaUFG0Cq8pjr9t6KbO0lwr + iVDSachlqffJOnXOW3yHs/tib3pU+Ho1qJOAfUr4HAeXsxOcPn91jEVXRu6ViAoi + BKsKX7CL/vhvFqUgTuXduX1fQWRHowZsK+T7YG7CazeE6WbryqqQuc5e7GbN6o6j + l5tUhjrbiDNh1wnaN1hlYtGGEl7dY0+AXWUHAn7kggK+r59oZTVeROwNKd5Psg5m + T/1jKJwhkhgKKW/b2Dek/HrbzX2MG1hxAJrVKd4h3gNGPI0FMIcZF89JZkoDvFGf + rhb+2OHxCHWvP4GoIQgvkjhu4xBCr9h1oBJodA3zNgeterM9FimCn7MyNTmhvgwM + XsdqjmryhNG3SsjXC4MqOf9nybK/v+634tXSBRI2H2KZWghP6fy9RdyGYXlP7FIY + YhJqOXuscG0VF+nF9lWgkKsYKUBEgGSuJz6KQeZgecdq5HkWM2fTKsSQ+jgknfbG + 8AxJLVqO7xtbGhFz2FsLC7v4s3DH3ee531n9dR3jk+EN9pjzUFSMofA/96rvJhWZ + EJnAo4N2Wfn03vnB9HOewMg37Qrqucx+5ghIWnX0WNiidTVaql7qcBsFOcXQ/Eld + TP5AUEMKHRXWpZbNAZCvYFmzmmClRAnu0naCE8c7AJ0jpuEL3pi4wE2SB9Gei27S + XgHBxL41zi2OhUK5XrUj7naNyt1ncK5EP0JuhVXsJxofCzIWnLVkY3AAVhoMtzko + m0/eB5htpH3fqTvvG/0z5yJyY1BykXDvCcc5lBws4GTyJcsMKiMMHhpRxz+tDiI= + =NBqz -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:34:49Z" + - created_at: "2026-03-05T19:18:13Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ/9HiAliSj73b31Dpwj/NRusqwrMU/g32GoyGw2t15YIJ2g - WPiGXk8pQ7wvbHf/VgOeeF3vDcto4g8KFPa7QTRjlVULPxs7SDqVT1jdwEpBwslk - B7gyO1facKJ+rZhgZ6DdcFkqEj05gWz6Jh6qZtp91X0hA/q85znnLrIzWovn+gLN - hBZ/O0Y93F1ybL5k83fHeQZGLnVS8f6xkDkPhTgj10Vw/ZYghPbctlSwfMcpeahg - Gi8iDcPfSa0+3qg9U6B6d34A55T8+dSU172qW27PWOskDor6u0Nuxz14hr//wX1T - SKVk4TVS18iQvQbGHAOpPTwUbs1KZHoGRT7eRxiWhR/hKypXrLI5AS+vqy492TTC - kQcZjOniaU+8adUfZxpieE2kNxtz0btsRe7PSGRSZQOuLRsPsOQok2mm4JWwC5qG - WgnyLE6CiP8YxLME6a/6ripX371rNvxlJI4qSUPfeRjM/OTMfaQ+ZJe/+b2BY6y0 - lqeGPOi7pegBRjHtJsErUEKCkgx5F3DgU6WoQFlY4tEIZxYQelvVN2YPJCAKag5H - Lo8T/YQWuMGtmhBRJcWixV9gNvxeC9+dOC2QmMNeraM44gmMu/Q/p+XwjE+p9xKe - mva5YjtUUOswJ396mcmpF8tS1vVWb+gOFVi7wRY/MDvma6t2P/An72dbyY1+CErS - XgF/2VBX1rNULtusdsSptaTkxZ+n9ZOyDMILI/LajDmmoZAj39gVOdprVCW3/I1S - rsr/cUa7GkMRQt/HV67DqgMtexSy87U/Roj1967g0keD/CGHycxIYA5bs2VbNm0= - =slKO + hQIMA1Hthzn+T1OoAQ/9HP7WaLEldd5c/D6MK7WSoW8Ybu/lRzTjEbFYOlT0kVA3 + xcLYQMG3lKsNJUrQmMlFi5+dqwa/YamPwONIiPBwEbrYkQacA5Q1R87hg2HtaPuG + iEfoebFqkclRsLO8TB48plEvevf2bbK1pYqZB+SSsNh7miXQXtz0VguuBjl2auiT + VWTF+3iP32cnKoCo6OK8qC3RgTvRacO0SABvqUnJ5HDMOabxNpSL8mI0d0cIXHm4 + 0ryB5I5KytTHKeWF9nCqE/FVARKMa9jr6L4TSRO4xHvzp/VaLtwthshXAJk0psrW + jmpZnCLK+yKS1nr28CkZgn3FIk21eG6mbGrkx8imhStdDlBqoP51IsxkP+kHDf6I + uGPpYq2zgL2TXpicV4GlyPwhEUMAWfnbL3V4tyffGzkHsCj0/mgBVBCQMqU/DwQ3 + QwR9eKF+gHqECggQPNR2OTLJrdfUZ2EoOlZsHvY3QFTdLoXA1m+HV54CG/7UQ9js + nMStnrMD9iM331VLF/7PHt9C5hb/NsD8a6MhOBaQNp3MPdo/vU3F046lK4ObtxSi + a0kKV4ocz2QzGJOOd8IbmC22+K2QN+U1twbE8TQ5vDr0d3HLvdylkGDG8PqcQHCn + OFmjaDd0LRZnz/DC4I85FD9XSY5foRBXUcqE2cfzHka365QdRf10nS91HMPY2oDS + XgFzbmcoKO/DMNCZUP9iKSC7P3mkZ/CdvLfSzCSzyeBwsNWLUFFgQmVGy+E6Ifg4 + 6IyLGNXwfKz5tDfizjW8S6ybNTeB1BejU1MWJp8QUPLJgmVc8w8szg+DWTb+y64= + =jKLD -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:34:49Z" + - created_at: "2026-03-05T19:18:13Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ/9ERIQymIqmNLb9I+EFnIvRGBZ/PPEgkM8WEak9cTu8a1P - FrJHfVPTup9fhORno9DQJAwhlWww+kIl5T6bajTaQ07sWGyZMzsRmZxn0XdM217I - xdIzmQ/F/k2AfDwS5LhKWzN3QQAPkZY3vzU69wYVUsW/senxLmTrb7QRiDEws6qx - W4QlC6semEPI/vorwI46voH1MZfzzoxkzgm0tjBV9YZIvlfits+uAgh1KxxJ4cjx - /7B9qvUfWk7/ftmmLxPvZZsI+Wpo+MjzmXGSyEk1h+XkucSEpfIB5cVCqBs5/5dY - 9xGxUHWHVRoUHexHtXDz9wXltF8V0oYIVL7UiYUbiQEw/KGm8nA/TMhAMi+7+qIG - 3jIzPcWsjqJ+jzuY4FkbWL6iGx1htlI7h/wbDuiNkuOkRF5Am3YV9jj2muizPFRv - UVWCI5TfEKFLEPDsniU68zRpVYRwLbR55Ukra+G8CAs6BpKJ5rwXVJbX1FMaEMZq - +kGxalYuoBA5vGuj1jZSjRfM4RaHsQK0HhpEFrEg6kUgO+KSPVVStjd3rEbvvlwh - 8k5DudpgcPAnkMRotWebKdrgtGdDqKRWd1dt7GbIamURm5ePFmOdHFhciBB+4Poc - sX2AAk42Go9UX+f53gRRElkm530K5r3pUCGkZ4Dh6eHxYLjO5dCqM3uG2waW4crS - XgHdd/iggA9US1lXp3wyP4tLxiBUfvqwphZmYbOo0BqXFk2cSGuMhVSJ8q3LIKKn - k//YW4XkGQbEGkrXNNNNDl65oDjK7uTSjzlwCr/O6RLz4chUYeZIwRq8uLBAEdI= - =EJqA + hQIMA46L6MuPqfJqAQ//VNDm63LOxKHYeaSq6Zc9oYFh4GGgQM2RlLK8P7ZBEFQE + WYU9r4P1koMuOB0nejN5rSEISvMkfxPBAdaeqkUkYO0IUS46z1XBfOTrbIKdy8yr + 27iKoCe9iXFHd4ZX/2PS7dJuyBm2X1I15nE6yZrqjst+kw7935cjgTSsb5//bVqZ + nwsU9QHxj4iyjYp1tKiUs5CGrC/v1LdsmJrAfWYx1J6A/OuD7WeJem0pC/TkUHuQ + SzLFoljmAHoH4cyGd56MY+uPcSjoAmI6J26wWBc/dSgRGEBUhW1N1lvdPqr+zHJx + KMResOHFss5m/V3+AidKNa7EUehiHGI2bUtSghXWZDmq69uizNeuXIf7NLwArwvc + S/UCc2bFAA77tPOwI+8MvsPMflrOMuSRDR7dBVs7aYPMmHp3TAfFPhUNQ7G3boez + f0cYhTcUYxFNSjmlX7Aav+7EcssMkpQ2NUWChvXEEJ51og3cAYij0aqUDm4Ckhrv + NMuaPo3FH55BVcZt1u0Hv9TBokhtrKde6tludFT+fZUSG4JZbP5E1IKOtKt8JGlj + /U+KF7ZZSanhUOKlYtXhynf4VuzhDB601oVQtBMSzCXfeWG2+4pEwYinFvgaW0lv + KF3JbczLRipWGuDf93MZCbAF/c17ZofKo9CyxbvfSnPw0r5reXd0Ej+i0eEPre/S + XgEl3ytcqi5ShYj/xjOb1AEfiXVp5Iw3qlUYTIVx8SMjyKvwvSsPA2MQ/kOQCf1d + mmWz097SR+BGqBOIS1ORnGUT97G2TjHMTOFzgA8WasmAQI19hMi1DjDmjKuiesw= + =I45F -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:34:49Z" + - created_at: "2026-03-05T19:18:13Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdA7aTC/gqTjBxUjuUfwlS9pBTM4AdkQoXCHTwERcaXezAw - d43he4QEfRvIZ2WiKT3ej2DW3NZSh8IBT287hWNrvbWLqam1hnkqu75o3f5DpEbo - 0l4BdKfd+3mDNzb2ShKmlyomeIwwYWDqrRCnGtb2fsZenV0f1v8KCYHQ9ikvnalm - QhM1QwGuVmC2Grww35IFKTtD4mEIkXfJdRmD7tdgmuXY+/wxxdlQn7BeyvTu7n/K - =VmlJ + hF4DQrf1tCqiJxoSAQdAL6YMbdgBQOvEuNId6wd9TTIIFvKM0dvN2Ksf8p/N/x0w + w0wKaAwyY0wrf7xbK+T9iJznbj7jyYMc7ytbk/KJGdG9xDZmNUDKZ+04FVuWJIBC + 0l4BBuoZZnx5vmF7QePyPUga9MfSvePyjQTr5YkB041xp8V8ExRNfa+8pMXu6GA6 + 5piLAjyD6UGoj0ToTNoeFi/D7QN5RmgWzLffI5EWnEhg45RyhhK5AHFSlmjWbin0 + =tTgS -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:34:49Z" + - created_at: "2026-03-05T19:18:13Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdA3xrmqAIwWWY6VJpvS4i5yX1cGMi1Isse+Uu4vRWoMQ8w - CXEHmgj+6zM8sy/ZSYwfoUMvP4Bhww7sDIXEvUAMhdBeo71qTmYvmaQOfq6A2gzM - 0lgBrKM0VoDjcUQ9HvER42DymEk1ySfAHuRCBz9wHAy1SUYzcNGA1AFkYSicb8Kx - bQbVOWi2BxIN3GEpe4b2/45e3ZXtb1A70cKVxfS3C5ohWAA381xufO9H - =R4FA + hF4DzAGzViGx4qcSAQdAkswU6KHuxuQyk+mfq3xQiubAvDzGk+K48EtBVZPCvAow + ZveVCdFbZDgBtNYVgAv1nuM2vlJwT0f09Lw2NEyThR3ie71rCls7BlNmCcn4Gko/ + 0lgBqmrqUnCevkmiLUJgLfxzpxjQh7iHL2HVabO7s5LbOAkS7K/vlq6bKX9MX/6X + 1lN0ua77kzAkrRj/DTlsX7XYXZhuDqBJ9dTJx+wEA8i17Uu8wNb0NIV0 + =T39/ -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:34:49Z" + - created_at: "2026-03-05T19:18:13Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ//ftMJi1UVl4TXrWP74qEaTY1Hj2hdICufeL5w+2oLDRmi - f6TCDVvnKQZOT2OzXPmfmCUEFpGXb0ECTxwp8ndRHL56P1r8XWLbwHoVCv6Iuca9 - mpSqujbJKucyhgM3oyf2fUSPvzqhWyFKUNgXfsXlCUsYnonwidCrdz1Yp1CS5M1L - /S/nowutGRHdNA8a+pkFgGbwpMLgaIlS4oITBZWPKIL1/2/khta9qqLjJOUPpTjY - vABrLB7kqgcHEdTWsuXhf5qFS2ptnR5OsvBE9GOJlcjqBzt0bJXxxLlHt9F6CY/Q - 7j+zVvCgwKgvjKuQKb0H2hVlg7grYTGIQARqOnSTcY2xtKWaGIMgNgzcqFkYzfJ+ - SBWbUgmJjzU8w6XHTpV/nuS/BKyuS5GacMW3Kd0g8x1eLLi7HPrBmt0NjhmTNHtC - F8niFzI7AFdLhSuQrzepEvYESovc/S1WIV93T/u4D3+/BrBJ8HRkk1CGonW1nBKp - M0nCpYTH9opuvX6o6U3xJE2uyO/iGnLH9JXxsF7ioEk5Cl0RAZuReTG6U4kbMf0n - AWoZ/d6IeVXdI658TPZQ/5a1v6BVcHB+8kk7VAglmkCLjjDzWtzEpwQgbDI7bVMr - 1BQAZSKKnFCZ+RgyZ8HnvapwH3ia59DNKGS0BFpsPmMbDZt9tZEgPBV+0T5E2+nU - aAEJAhC7/QBLmPUciqYEWn+GgxIgUNCAadYPGHZhT6Yj1sUF4qVOSC97V/BIqmn/ - F0Sf8NtqFSga4hDHOjugEQoEzCSf3wwKXZpcHtLk+sxJ6whFBPB68CP/YN+/nyOV - w5bz9eEN5o5K - =xUvH + hQIMA2pVdGTIrZI+AQ/7BKcWNscmi961ITf85bgY3W2AKvvRmQZlRlyQ3luDMUgS + q5KoyrjVmTXdYmzyUw0LzDgwjaIh9WqBo7hA7xT6WfqR3sWmX8ESucnFanXEbQgJ + lmn+ikiG5fIngJ5+SJKo/qcp7lANRvI0bmew/VbHxc8FuaPpwE1E3x4tEEnzg5ho + tLV6p91xmkFfgplG600kgx+r1OawJTzebKaSNzwOEPzy6erZ4oTH588npXnQg0/8 + ApTJPloKa3QhOtNr4eLzqfw3r9D6iind8XQQSUDR6JJQPQXhYagWpCZzO9PW3mXj + NTyoXib+eDUI3jKlT8FqYJqokX1Qschbv5yIc8PpqDfmgi+THcRgl7HCDMvpjcLy + d0piLG5YAv3RVvlY2lZrX2Dh4xbdLVqpG4iBruKa7Mktpvmc2ifqDrrHPlcPyUgk + nARdpUSiSQ6p1nz5bOEpR+PhgQYhO+J4vsN9yyyg0DHGzmbgxXP1T78/6u9JXiVL + yuw8VlNSH1OojQnMiTEkjezpXYTZwxfeXkW6Y775SjTWIpeJhKcnto+PM07xaHWw + YuSyUxtO6VJLyWcjf72pHfC1T8ewp8DTFjJ35USai0tptulZmboGEa6xuy++o/pW + nJXFfvlbT/7f20ipWLkHdYGgqeLc5KYylwTXn3lsq5y5a4JPWv94TeE3j9ffnnTS + XgFsdntSPqIQ44yW0KnKBbhMY/YDATumEw9qcW1ueU5MpBtYUS8jGQSXq5CCkAZl + gIVVU/A18y5qU22RBGmhucIjUEogPvUPbOJum8SC5pDkBmzPiv+5Kjl9e72goS4= + =OVP+ -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:13Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdA2m8ZxiI6rmWubO9hu5XqGaZZETdRTvAjkdCwPcJgxnww + Lp5zt7B47JUcc7w1KNxOzmOYpKZoqXQj75woqil9pj+Ce8C2t3ux4qM1vv0AROM/ + 0l4BidzJuVicZpOH9pztyGTWeT21OtliP+tM9HuS1u1YPTXxi7p4dE58moIibkeR + Vr/4YUAy0r7LomVvb+qTuVsClEMea1LR5PS/ib6Rirttq0ZciqgWlpEw1tABNS3q + =MA3P + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/sunders.sops.yaml b/inventories/chaosknoten/host_vars/sunders.sops.yaml index b1f7f8a38..904a8fb47 100644 --- a/inventories/chaosknoten/host_vars/sunders.sops.yaml +++ b/inventories/chaosknoten/host_vars/sunders.sops.yaml @@ -7,204 +7,213 @@ sops: - recipient: age1na0nh9ndnr9cxpnlvstrxskr4fxf4spnkw48ufl7m43f98y40y7shhnvgd enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBTZzk5RVl0Yk5Yd05NRjJy - TzcrUEVYRExWZVd1ei9pTWtpdUk1K3IyUTM4CmtHSWdVWWlZVTF0YUNZejdIMU5O - d0Z0SEdVR0dJWGczaEJsbnkyUmVRT0UKLS0tIGpoVEdFYW1YWFJEby9nL09xZjRI - N2I5eVZGRWliT3JmbUNObnAwR3NCUTQKkeUXZ0m5ThDqVjwtI5sJU8v+t2cfA+kf - TwvWtA7ePK/N2OXarcXcJeDO22DCzFHZLm/O26nu9ssgPRPrn2pdnA== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBKTlhuR2ROcTZIMnJTbGVS + NHloQ3FsUnNtRiszUkt3T2JwYkNHSmNPTFZrCklnRUdJeHZCRFMybHJVMk5tOTB3 + K1ZjWGpuSzR0aDBiUHVqRmxRUlorKzgKLS0tIEtMVHRldDNobkFZazlScWpFTzVL + KzBPS0Y3OXBUSjFWRVQwaGQ0M2M4ajgKYGgcfiDsBsJQmSodfPejhAcAekatqkJ9 + Xa6Y7mWUiAKcbYY9to7/7/u5FUW3JYdv1GX7vAC2ZtZv6WXGLtjdwg== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-11-01T16:32:10Z" mac: ENC[AES256_GCM,data:8Q6DBSFtzwHuVxduRlZYxlRWO0trSoesNGUR8r/dWnp9ashFBSZqVyffXb4Vq6DB5thANJ6/b3PCNsHdiAKn6Ai2UT8G0HimFjUUgNpZxo4xoNGmDhDvfdBgUL6O2pHhY+ojjguUXDYeYc99+eaxfKqZ3w+PAPaySltKm99foz8=,iv:ILOErdiWbUjk9kovXXZYcAqZFQp2Wo1Tm14sgK3niWg=,tag:Q2gT6wbQyhDXjoQEG2Lngw==,type:str] pgp: - - created_at: "2026-02-18T08:34:17Z" + - created_at: "2026-03-05T19:17:55Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ/7BLdrKjYt2AxWf7gSso/CDSt86aNPKdxtZ1GCMi3usGDy - waYi37UZU1YhhXxRYiGGk3HYpboSLCOzs2n/w3R/JwGvWZx5yqgVeZ0t9kuS52IY - e+l0UlUQKvzeu2oAwpRkE0K88qw9tEEk+rrGHtCC2fBdYoqFHw0NNlUxlmxruCaW - J+lOvQ32atGkIzs/oEHVvsqulCTN+8/DAW+LEVFq1/1E9Y+ououzN11fMBf9wZWw - Mj7lSO/gIkd+RJnI6WUaKzUzhHsw9PW89+uBKWrc3XZvcJ+m+y4ngkAC2Uss6XQ1 - RC5tBbhzBBXrYDtpPo56nPm3r0Gr7EMYcpI/O5Z8RdgvUBoccabFhZ3B4Ri8scDF - dapfXTDTUaKeJ9FBfneMlGLfdQrg1SC9vKotNbj1oNG5t+VodNRH06Q6QdcfZXBj - jeyf2IwNAiWibFRx2RKtX6FnEFq34fpOQnmbkxTftKPeMkktoBcvI1jJsLiAi03F - Ip8l6JgPahwsgt+8pMUi8kqukdTJQL+qavrq5zK21mcWEdMlHovpGTIF7Fd2oY6p - buyBegDb21Xt0caBo7Kd2JcEi0k1RjSE1g0tx4FApA0yG0UqxZbB+3x06NQZCeJW - gk5j4i4HetS+l3Eeua+GMKFpA+U/rXarwXXMwKgTzdLXeT0d0OgcH+Uup4V5IdTU - aAEJAhB+zdMQt2Io4oBIEivCj74C01rr9yUrny1UnkSkKJLpMoGKxSOSwrYUNM5u - xXezb3ok9VwK645gJd857BRpUj40M8NLcddn63Ev/C8BNgV1d/Gf7Xc/+2mh4pFe - ReW4+GTd6rt0 - =9cWm + hQIMAxK/JaB2/SdtAQ//a0L5AByAIzh2T3KFZOzux5zN8/QC3ZA6jS4hpvfYkykz + D0knlDwZTd4L44kSnvMOplw7AR5oMuSYmjB8Ru2M7PSYJLPL3SE9bHXzOz7kqBmT + W6jiEMTusq6MU3rbNKeyM+OZSVMq0F8YcB4e8lS8bSxR2onyotMWiadP99T1hVwl + 2n2ogWhIfQTTsS/H3NUcch8VQ6+QhNxtuDzO+frQhvaHenOv6mrZ9P9/0N2POFUi + n+rtJw2zAi5pd7eFiFXEmkPOcHd/K2QXA0QHmpgTubkXrHM2kVfWSQqWx0Be6J6J + KQFZLql5nRgpLd8BC9btuJl/w38ll2EPY1vUvYKqnkH4a407WaMxBxgZ6XriAdrk + owzXP0a7ukrvBh5HLEM/98pX2Q889qbfLlgEuat80dlI/UElOS6dWr/ovaE3ZlOf + DXzZlQyNq6swpJSQqzxpcnxSANrAc2x5pLeo9PmR7e9QMnFCgSVx62AT81neA6Gj + XfAFppNkoUdD+QQH/YN/a2sBh7qf4SlRY8qlv7ObENWH4++nLpx4waiv2DWrv/fU + rUta7lT9VAwbqRyMh8ad6Rd9Lj/MO5qMJrZMQ42Z0wBmUOdOO0lCjiD4zPI2tHYQ + EKwB9qFBZHaF/qzsWGO7IAUwmFyzczpMQT8+NUsdTMVXpEODU5E0EkspAROO0N3S + XgE1NAM/yQl66ZiE77WSYU9Ax9jkpy0tAwbWRfWUjjZyKx10KPQ18tVJrZBZASnL + Wgw60tqEBjEGU1S0Q7Lrn6tSwapvmcirAaEyRrSj3HrOjs02ev56uzu8ipBO0A4= + =j2NS -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:34:17Z" + - created_at: "2026-03-05T19:17:55Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQgAqZ6fXAmJLpC/aj/h9q9uQE2LTL2Qxv9yFyixjS3P3g+E - TwU744QeM+2uf1u2DbjDvZBh34fCmGHfzUQSI9T6eQf2WTu/eUyo4VXc55Y+aATh - mSK3zXH+WUrMROMaw7GHvKqyi7U/ZmaoKYYlWErDVsZUHh1wdAlVWvP9gDfFSmMs - lNaZuoE3RFrvAukUd+8gNAuGZqyp5R5I9rCfY23oLnYUpiosEUczJeIK/mmC6fm3 - HIx4vtCpvEdrDr9vC8peEdZ4hQZuYgrF9eMVyP99BSN8VfyBzQnBzp96T+ruYpjX - YADc5Z/0FBBdAk/C/Eklcz0UsHAzhDtJV8Tpzsdjb9JeARvw3UC3dojSwlYPrHYN - 6osoOKPwKPgpz/gJBaItDOjxbWJUW11aGPAlQ9y7PvM2eWfCrAXYzoUR8c+FSl// - 3qfWIcPzVbUBMKKi5uLld7Snu0MvZuyCboxNOYikiA== - =nb7x + hQEMA1QflAioE8i3AQf+Mkw433RvcDC49u1R4snHov/yqtr2iOi5sQhdCY0wcS0e + xKvI0w9dyP0EVQRvu9x4HhvF/CM9PeGDnVgDOIZF38FHyyUSvYxukQycSf5XcRP6 + soj0rSgmO+SONpPGgonO8TOgFcFvGxrQ/GOKw1wQEsOzrX5m220BGRNQsSQoVqqK + JNP/fIjBjgIsJau9dTg7bLmOOfiKpTu8lCuHpByrVTeL/F3pLBiMRRqm1/hSvAk5 + fG6JGnDUuc0D/iFkPTU+tRKyXJvXblt7vvd9B2lVylY03dzPzBbDe2zLQRZt5m76 + NOmWqU0fmGaKbr7aA8p9oHqraresHGBtLPkzXn3XHNJeAQlKUmm+6QaR4WfWH3ua + O96/Bf/CduaYPR+pu2tR9/vkfwz6aogINjvlaAcJKu2sMj6Xzip0nBRh2+CzO06s + uHZNKs/5OSW2L/Zn+A3zVZQ9+dmgYBwIteAz/dHVWw== + =wGuY -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:34:17Z" + - created_at: "2026-03-05T19:17:55Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJARAA2XrmHj63XQfPJOpCi1C8qCkDI6hBizDrnlEyzYLIq2Q+ - Xnt4MHfR7aqcOqFOK0umoISWYtRXL7ZoFHAnRVN7hFXjpW8VIGuqP6Uj9HfBw1/T - SFOVdG6uddVUa7HiQ4zXMVZKajp07jnxJ5xGMt0QoK4WeHJgesOKuPy/1pYXW0A8 - 47iKXX5eC4HorxCFJVAdaI7IQZi17G8U4L99CMrePuWWHK/oy3/r1f33dOGcpplo - mLQDI4ZSrgNRhmNKSp+8n71pOm0+jicKAcZk3625n4qj7wnH7WLWxzGYqxhLNWbW - aeG8sHHnkCx1INkmxBiIKmZuG9Q4E9bLX7Bdvb+nB7fwkfWhGnrvaIB7vPVV1xKH - 8oW7vflWjLAx+/DjU2iJ1rBVPEYyuErH+au9/OXyQCQFSBWyAkj09N3FbM5S1QqD - MNQdJpQdYNtyg8sBZsZMMxlYiK2P+AvT8SuaSLTc+zei61m4hGHwPokLa1aVCFRP - rUQO2DQl41l/Cg08LKARhkAoxEFeoH6kzBKkxeEfcyww8s1Upb71Jj8kzWR6iAb/ - 786RP/Nn/ZeCWoUxsrYc5McBvm+t0ZjF62P4nWYrbv44QhQWPmWsSYjU5bRrZQom - BTQMf5gsH9jQpLj6wz4ZgbxLaIMaxL56q0LA/SKIkkVyWcxbp7fYKwh8akQMvd3S - XgF5tmm3kE2fDyDgsUMzNEGc66p6iyupq87L3sa9WHyf9ZjIK7/EVsjkx20+OYKR - u8j0LSfhsILiiKyOnTS+mpiILccsB2feC8t1e41ARHU4/jPXBN8ArBNhsVZpEWQ= - =UCPI + hQIMAz5uSgHG2iMJARAAj7R2G1jZCtIRTVpQtTpaZ3YS2SflruoZ8BcKb2u/VLk/ + N/L8vEHESvrajn4mI5EJ2QJCNTRTA8S+fDq/fIkcw+Lu8n71GRe76Ru9IZino7Pi + PSkHf1710Mbt5BcX04yMhg76Yk+9sRvKmZAQwu420TbsfS/Q542LCGldU31ew6sX + MWox4lF6LgldUjgfqcPEEU0p3yU2+Rp1jde/f8EG+NtPE9O6Ay+46p7TRklZicG7 + rZhfyjt0ixrV42e2HK01IkT3Yv6A26A2+Mi3yLFRjI8+lVNT78l5HuS1iAspToDd + d8Mb+FLyVKDSNxKEiNRby+PsvaVRRT2+2hXcfuaJifV38sH2sy7e4soKPge6NOQc + 22w+1r38CmiwJVOPOcczH5xX0VjGEBfoN5i4NnuWv1zgQPzGBgATYTeLVVQjHOMD + uQwh9qlpnzxDMmm2L6Us3lY+fH2IiRWbrvsKtO/gP0ETM2zf1YeK43mxW7PPE8iQ + BiMAKCh66SqnaE0kON51ChB5tvuFFHvy6RJnS5yGI+Yc7TLhZdufURzSGwXAmLIA + beNyti+De9xDWaXpCIxT+0ICse/XUSArhyRTl1Dyx3ecq9CVRJSZxGyESjMghkIC + APLcoYhnXGq8kWEKT//ntkxsX9GgdpZUiVaYouE93r8fszcHHDky2cWNbIoq7UXS + XgHmbsMcxcsJZje3qMCEIbo3P4rItxsVnfwo5vxyQCih5xgJJ2dUdlULIhU1TfR+ + wMMLOgZmA8F+f1YCWYDWTHnWh41YaqP8zVqbfCNegO4ORWOiirQM7BamGOfFx0s= + =bpZw -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:34:17Z" + - created_at: "2026-03-05T19:17:55Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1ARAArUS46i3LMTbf5QgkA85MUGoILXi3MxTPvfZ10RNqH0Wn - xVo8MSYmxtVjgEBeZJHyApv/0u2ruSBr4wCfI627nVx0wwtReSFvkhYYHlJ+Dh9d - GoCvZW64oRH8Y8DyyXh97WV+TMCkXljX+9ClsTlidoydpKylNd8qpAS9aA1CAuS3 - iFFeMU/APBUJHxOlZpn8uEA9e6QdvRTUDcmt6+8dOQ2xzC5k6Icz7O4hIl71Laqj - 0DNC7NAdFQRG4q12wLWubw3mXR7pS5JpJ/n9HQOFkWzNbzv5eTXWCsdgLK0Z3IME - iYgXMv0C4d0S9VFwu0c3vjaQbVlvaUV6rDEyqy6JFxtUo24uNjtZRcwklSaWKfow - Egf7hv5bt8tVpl51AMx8JMbFdMq6zr4irtaKEZp+UUlHBicZJ/uvz2qpeEJdWS8T - z4v24VH4fG2czFiJA8VcAx7bUM+URTj+2nKcSfjqFRfTvRhVlmF7TMOSgmQG/dba - pGs2/k/PAu8hITC5tdI9JhA4mFmPxuSEuifmhmRm0PZCKmCsLrr114SAjFQHbhJ8 - uFF+CY65TvJgmEGGNL/5zZ+fNRG2B+yZpAm2hVW9Q2okkiSmwcYzRQuNnEdZTfXn - gXSgO+sktNONBx2WbcedG87henGXRoqazBuZHj8XOgkIUdC7Kiyzq0/rZvOrtzzS - XgG7aX8wPQM9Iaeqv/rWvlp02ltafZeOcWDsVex64JhmeMhZXNR6534lGRPQvAb0 - qlYzuSfzcci0hTwXpctWTO0nkSWX2+npU5Vhh0MLQy7k7/kry8ICnqkr+4nZRCE= - =+4u/ + hQIMAw5vwmoEJHQ1ARAAmHa6ByojaudS2XubpvBniLIQAr9X8nGVc2khnXSsSwqT + yO628AldGtJKUJTK30M4dFhcXoXIl79lXq0F0uQfbsA6krwvrto5dthCjBOxTlhh + m5gAPAnm+5Slxo084vehc4eHui0lQo5mTd7efHimeCqfuWg26dsAzqVpO7PJaJnH + lpiIdZbi5DMkxvCzb8J/fPsLeQcnzvPQ2F9n0ME6hcqSVUK/sPCR6qOazw9a4ikL + bNqeoGa972B4LU/oncExnZw9FT/8vDBpWGbFzIVLowqS1QMuHoeEsFz4XxWxbSwU + u4avODLWZjQdQuamA6d2BC2p6TEhKRn/lXhAuXYKEeOULDpHeEvcBVV1GK+md8ng + 7AoBeDbxjonKKuVlJs7a8XYnufG9vZAkLDceqNoDPb2XB+0P94knHd70wOolS2I9 + WQuBGMpNs3rGhKcaa2jD87FnMgGaGnMFWg+yDFULHJuo/bxVnWqJJ2ZptlBkZkNj + SMD8f5JsdQ0ZA+OWc9FjJdcrHepwWNo94jAA0yF5qAMfddrKeZvV7Ih9iQoigVO4 + IBcc3slA7VVJmGu5UM4niWWQB9inBSbf6Jq2865RDnU5bgQ93T56Op1vxwr/GG0C + I8TfKC5rjMoxowntIz1Miq9Ze0yiA0GZ6DNdMwCyA4yRZjgxhm++PRISq0Q5aZ7S + XgF/i7ki+JgRBKWURRRFN0CeZtotr+sKdKJZkxFuQBqE9W+I19dyCnZlUAWUSrxT + Eh8duZ6kH3BngzjZPf2e5IVoFD3TrU711a/+eP2u7WVujlPgZjMB2pLKTxj2hv4= + =0H5A -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:34:17Z" + - created_at: "2026-03-05T19:17:55Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAJsTDKXbYO8ltiK/EcQqQ0XNoD0bLeLFaXwAXw2u53Bgw - dF/ki5IQj7C78RJMIMO0UwiPMujW/JYGPLDgU1WlKeew2Wa65ZOeYv9kyTZATkyY - 0l4BTlw8/zQ4TrMag+qF0t2fvx2aZHbGT8rGaHh5Pl5xZaF559vx+x3ORCoPiO4W - 6DKEs1a3I42QipZF3wnFtvsxI9zfdrJElwP3p8Uhy+s2BC5SmSoKE3zOwa4UG25V - =rnDH + hF4DerEtaFuTeewSAQdAibUuwW0apshIj8+shH+ssZ1gIpyqmA7XDhrXwhyKSQYw + TREcQ3cqGepihnHvahzlpM6WcyXl9W9oYobkj7EHs9B+cyh71UKrbaIYaY1eBt/n + 0l4BQ0BIA1E8reTWqa7oxNNftvDJoEs6FPKcX8ffIIVyWvP8QfEzfnI0L4pkpG8H + Gke8QmaguPb1YWD4+DriTBTjZqEDb92JlikpJrGnvfustXysVcrTvKGC/exlB7s1 + =C+DJ -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:34:17Z" + - created_at: "2026-03-05T19:17:55Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ/+Kk3zaxPHHq83Hj5Fs9J9FJBffFqpLn02TAvHxIdbJVCi - zhkMGiQNEDM2PSpC7hXW+WNRxXhKWiDMT0qV3dD4QWZDC+AeLDPTVvbzEKOGON+x - Z2PAyHhiLh0at4zvXHGANsBk0EaCMdU4CxN6vgkqkJllgG1i1qnVEXIZNqUsBOOo - X7MrOMnwDVxazp5muanGsYiABnYndyZJLpJyuPX+EeAUUl9l7V4lwwTM3wJgi06w - Ph9agEVcEag+brY3yeurWrv7eu6zEmkkGQbso3tvmlSf7nJl2H1j6CJShOX27WIG - mXym4x2Kfa1cbmZAAxKjmj2Imyw+jXFzKmmBvG+G+/pNQqpQ2SZjcu1vHp1AGWQ1 - 8r5Vpen6E3krkESHCcJGYxpMyBThbPjyB2QzQARBNFdOdaOXMf+lC96Rzc2soM1t - RUhNZ6+Ah04paKAof7G5RXFrLSlftJaOOqKUpmy6G4vYFIrQeZyn/slh9oq4YvSt - TqpWF9B0xLjHz63zvnsEAmj8InsD6coQDyRVMfRcTiwyo7uwZDnJRCJTcYHi1C5H - E1R6bjqGkGqBTswqT1bwloN/X0L4WZcA4wPTmJL1hDWt5leHU7XDPxc+A3YHvNT9 - 9ID+nnUtDULzjQkdcn5K0eMlNYpjAj9ZyK2lEIOdqh5MLoeDJJMJQS7Hr5eomCDS - XgEPhfjpO/PSFERQyVqBsgUBvMnc+7clIoKnPiV4fuAJYc209herJDdXO73MQG/s - 7GPo3NDOO4el7J0ZXPYh8EQJrYqCaAphHyKrSMmyNed4dJ6wbaw60AMkvBR8Ic8= - =gPKq + hQIMAxjNhCKPP69fARAAip+5fZxPOIzJ3Ax1/kaedzDEvUDHgsIQpnJRteg+qE6a + NR3r51rCAJ7M6MOSRdWW4mlcCN6LsqwRqqMPqMUn7KXLi3l9vpeX0s+P/98+dynb + hm2N5topGTgb74kzOwPIJCGb6Gv4HduMtGVaILKJm3mFBbzzxBZmh+c9ONuGY9Dp + wgt4z6lAA5SmcOiU/mqqQktVEV7e4qihbzVlxMhsvzmqH9gRrhVA53EYPlZDl+aY + dKxrg99ktifDErLe5kC6qTVp+hK2kGybxedqH8sg+HuO4YxwTZo+vqfk2QHbZ5vg + YQf1GrIJtwbOpjW8P/ANH+EoDUo3uEEtQIKOUm74yHN1UT21ytlz0VZt9EQOJvhX + 0JRuSXEXlGdkUZuoYLrQLRmQ9x4GNtPtggJuEmOlgpJZN/jKmrC9H82A41cORBTD + h3IbvRziUYRXx3wBUwbrUbJF6yW6AUbo5qbMrgXZAvrW89WE5OIoynAroTW/MJQ1 + /s+0fAfiIE18rcBUhgWK1O+dXxR+T1MWoTqHJAafLn2mYuDpDnG+c3rW+Or+0OcG + J97YmwZRiLOqL0yuXvlr9k+13vNP25CuBAboAYLCu/FaSQIv08pOnqVwW6Ogrpqe + +j4uObs+W4Qa1SyBcyMjqnrNqCpSHLPsP6fXZqxoOhdJYeb9yEjxLdN413CB6dXS + XgGILvUAmdyKdVjFHS3c0tfai0oq4wZjIafJfKtN5CvgrCbAegE7ceRpaYuoAy25 + 0TX3EXFGVyzHTS3b3ucECDubpZ5bPOXZFuy4C/oozTxxUq3gmXEbPTkqZKTo8YU= + =Pmku -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:34:17Z" + - created_at: "2026-03-05T19:17:55Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ//bn87VwfZ1srptwAnwMfZUp5ZQKRCJEu7FH36x6rJbgCs - BXwhbsL0g5UF71XK++7CKmcDhClZcg5fnsXigmUVterva6yyY70+b1brxtoquPVu - VZFBRmBsd4cwLkbiDheJ26ZOGQJNCGBVldbkIFzmcmR/2RviTWWOpBSBmapleMqU - BULosqrMfWPamLFTXyBj4+OeCUDhQlVmeCR3pEMH0iLdsiC7pTZOWMdH4VMvH7NM - 6O1OQSUr9anspYKA721inT+VH6Av8l/6723mvp50s5c1V3LuNhaMm3v2uIUuhBUR - AsGgwmeujziltTitoYRWxk2iOFdFkmVL6pyLxp127LTqKsUU08F3Mpr8W6ayg0r5 - osk2cQIB+i+KxW+hG9JAo7g+bUUnowICRumhssyF/raMv+mf+iNtr9fOn43ta0bu - 55h7ZTX7pgYUI/iafO86rvCgXfITl6KSz5KResvnqQxpPoIQaK++AqBhX60nTAGb - Z3n8kXrEE8vAgmzAaIRSoboToEaIZxBL/78TsaIpVPYxRmmLit9yYKtec24reRYH - 4R0TFVrC/iineyvNGLPbdv4dPNaxPx4FLc3ENtKKtRjLrxOOpJ2hnSYUICRwaf/F - fbr5HQu/VPLd1JmJFDI1j5/nWMqmLanQBJYs5zXgxTfT2aQ1I7b0ZpWmZzzPpyHS - XgGO38VGO+vat/jowNtRGJ3R87wyaTm6cAWpbTdzwO10K127w4BU4KAmI3a9qVs1 - y4tgglWYMdfTFfVSCZsVW1v14t5jseR5SAxepQbkTRZbodxyMrQJBdiKSDeZK4U= - =78M9 + hQIMA1Hthzn+T1OoAQ/9EeR0Zt5h9JQpPPhCLLmFER992ao010Yc8+p+0TGt+lKs + lb03YsSKoPAAEjLOjzGOj2MklIWIp3h9xTPh4fQpWqSvgmgeVXxVUmwdbkONNGwU + h3VK78Z2lik+N52NXUXOewt7xvBWO97Oa5mQuXFKI2pUbYCCENiKs6RoRGPmur9E + MAYQaVbVc83F4LLaioZgRNg9gU9q+ds7KT83e288WHvqWVdHlouzk7jdNW0VAdtc + Yrig91Z+mKtIUfpabWwzwVkes5Mh/PDFSnAJRo9qBVg/ygoUwwjMn76vhnhPAwvR + VS1O47TPGs7GTXwLAVKlfupuRXhbb8pHm+Yc12diqf6POlGtGg+EN7uBBU/WZTIM + cJVwHk+QW1K4v08NP6fc5te1+muCNeIGpq1IdCuJFZ69YIxI35HFd3CKR6+v8eQ8 + ODzEUlH/wxVLRulBfICYoA1mh5WtJXEdHf2KU8j8OsiEgwdsN0Ho1/KcaO3mzCA6 + Wgo105qyWiqNgkO+0MKjs1V0qY58w6RkxJDkpn8+05COyVTkIcHU9mb1GrANqOJn + B0dTyv4EZOS/tt4isLSQW0p0AWhGXd1mkwnU/XkSG15QP+zzRHJ325eQjfbMQYcI + mbv2FzmCt2sB5UkxJZrDg6jfJ9aTz5WenKp5Q36bvilSkBxHw0NVdIfA6tRvA5nS + XgGUsRBX8NCRcEFro54G4BZaV6LvnR0fkG/fSxhx+ZWN+taqQJ6Wqh8IQne1c9lB + sup5kGBsDFw+nfYpJfXwqAyH+BMVF5BIE1bJTY8SuDy6nUMHiMsRU3i/gy1m1tM= + =e+Lx -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:34:17Z" + - created_at: "2026-03-05T19:17:55Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ/+MvUrb+m5ZeK5gzBHer28iXtp4Ny1BYHtWbyoAC0BupJV - 03fQdTXF4JdpZzkLC91sHKnv0Halv8LFqra7p+b2ScRz2bBpKAEgNSbKu4MO0YEi - pEmhxjeWgqdLeXKsT2VFfl9bwJdipm5aQqgBF8bpXl+Oe9k8D0diawI7akMUzfQJ - mRBZx3zPWsTDNWmmdvncOS+NTwViDERbyF8WN5K1RHl2PHJBwLurrxsTmguFQlZc - IuWlOSVsU+c2ov0NfwfGB3rM5W9aglddAkafDSf2aQAIEakUcbnlUUO56vpegx9l - zit4ZbZm2CNr7JCqpYy6Cb++Le2VBjJrgGFCVRJGj4lrhDsgX6BqbZ0AS9V0ng2j - XFXsVqnGvUSt6P7zMPG1FCYQrjlpQ9xQ2k2S75KlCl3ROqLzlpXzJYdS0Ef2oldz - lV8MRFRko+hUlCgiI00I5Rf84+cyOFTnWoVMU2CmkxYo4ATKeFuXhmeAT907c8c2 - B4UXex3T35mKBO9w2hBkNuPkoJSGKy1xzarDdBtDDsSj3EU+sX5dAyuG5Yxr8QqD - l4fmfuZqkxnDXXeGgkGVXEcJv1p4A88ekC9WGH62njWc2BNtHlwT6/scpTfDfa75 - 8ZUJFHQPuWfD02+3ehG4xLCNb/J1WIxccEB6eBkSM2L183oChvFu5AsfKUQKKcnS - XgFLqc+Yp7ZbI04YLO0vjW5Oz4MMcigZ74s+lolD5lldhazxC6K4KKPaZc2qK0tM - 65o7bnl1/X68iO//iUTBrOjHWEt+gMfFOGQVRsAyXT8Ml8a+Xb1b8DtdaVQl8Vc= - =3eMD + hQIMA46L6MuPqfJqAQ/6As+x86v//xrZOy+goiqIXYr0zDgsFDW+NmykE8RVHrgX + QBOCMqaB3rzH/BjcAh7KQ/of3ldPH9I2KJpalAu0eAA4EY4utLfwbL6p4X8+bCFP + zOsWrQ/EJ7ZWPo3Hd3mXzWQEwUFQ+3iFQYd5uMI5n2h8dNx1H7ecp3ArgvH8/kC2 + uqoeuI1hhQsOcsRKX3UAmhAYrVVEmt0R0IkzCesMCUrs5QSzAh/JEUd0BxvGxZUk + /6vbD67p0hj4Iw54MICAhAqKGCyeNKlgFNaAxiErBZi/aZUh9xQpHayS9EwHj7TP + WDGA5Qx18cD8vjb94f06yd9bsaqVUBTlD2xNlv57ZTHDN8T7X8auC1ornfp6z//n + jh9mf+eT/yMF7cp2oA/xKkyIQA9fSZiLRrjDc8VmWA4xqyvjqTZwhdCkBLi++Oqp + Zb1/ZxIXLiOHHMRVCDmzZi83Om3DhobDj9qBGJmhWOYdO22SZEn4uZPW58cazkSO + ZXywcM7+NVL7A6jw8nAwCZBoOAFd4eykarfoX70S3LqiCvCP4hJU1ckpa4NAPpOY + WHAWxEwcC0JEhtB+mLb/HOYjjo3iCFUvltHUc23nmTV0euWsugY2BX6KSp82xDzt + j86+f/gyxWwbgqP/RrjmKl3LJY9JPD586ItaDWoQ1MdpA2cFFZcXCwM3SnTZXIrS + XgGW7gQ4XdQNDrD2fixeWF1CI6WasXvEEjT3wN/uJqvFBIQk16NOGoDJXx5FXun6 + 3EJOSWx6bKJalOsGlUxwsWWj/TSigrDmN/m3c7tU4F1cYMydLD475TivXRC0JFk= + =l7qO -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:34:17Z" + - created_at: "2026-03-05T19:17:55Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAa3vHm8zEluZbGagm515t8OOU4d9OnShK7TWEtP8YRw0w - fDA/oJhF0ud2UB8fVGjkJk4SrK0cvkPbeQ18nKTmtWqZYHJA3Pf6gXrRKwTopqjE - 0l4BbGwrEIfO034blIfYIjlWmeZDFRoG1E7mfgCbArUqgPrdDyRf+3udA6zLrmf6 - KwkW4jQz54KYH63Hf5qKintOACMZS3GwKzNOzoMbjArgUzU4q809fCYqgmWi03dK - =bHLM + hF4DQrf1tCqiJxoSAQdAkj/S9Gz+vvm0b4wJ4H5hdUcQ+irrAo7LnMfo5t9QIlow + B3S7mcJdkMh1SbJjzabvO9Xyae4s1ie++jXd0pJMjj67DKx4+XpA2iKRjuLXFe5L + 0l4BUM38QjGxwO+obenkDNSkiwOhbE5lmn+vVpmhwIRyC2bLDhO9ATvKh8uWbFmQ + 8Hhd7N01cLSvDMkcSPkGXtK5RLnTfLrsyfM2HVxbHEPgVTBG0If1Fr2ORFylWAA1 + =X7S9 -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:34:17Z" + - created_at: "2026-03-05T19:17:55Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdApiBreDbzyW/qoomEysGzXQCa95tgMqYT1K7BnFZBjTEw - Jma938cJT8fuT8FVAvvHJhgeeZmOIKj/3deThp1FpGCUhp27aJfFWJY0XovECYHK - 0lgBkqujOeOLuYZ5sIOkukjBIpc6qL5E2BYZzYRRspHc8ZkbJH36xQEitp8LoTFH - W1upk2Zt+Q2o22U2vzG6t1r9LlGLba9ql+Y+epohKZZntF+CT5Cvq+9f - =lruv + hF4DzAGzViGx4qcSAQdApvhZlinh8EvpYbJ3hLr4kN7mOaoHir89xv4A98Ooym4w + xJLJgJiqTxHKajK1aKA3gkoAVlWkhweemiFkvGzZ6Z0lmjqzaDCm7T8aZMHOOSXg + 0lgBL6sZCa53r20aqsiPvz0M7qjO+SMyssFSZRo4yE7Iz5UWhiw7yrGk78l6KgXr + rlI/bvyOe8TxlSwIjw0ib5J8PtMvFY3pRgn3UTzYssdgb8hfhYJJdrO0 + =tsnc -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:34:17Z" + - created_at: "2026-03-05T19:17:55Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ/+PdAL29kXMA2FYHVBTYmGAy+pMYCTOaUdj2CjmC5krVCx - kSDOZ/8Rc6t8kI8BlnJJCCXnHJfBI/vIQF8JpcKmuYibE/WCN+DW+Ut2DVHLU51c - vwRh+WMVGUSZpzufur2Z2BW1PHy7OqxgJcD1SOIA+IvwiBROoZ24oow2a2VHcq1Q - GtNwH1PR13Xv0Y0F8cAm5R2RjEiEWNzM9EdNHkBN62DQT8wyuh7e6KeiPRQGmRK5 - gqEdXq7JpD1VjJKDVhHJuMlDeFsZWPKBTNwYWMYehjS6TDuBZzr1u735O91QFvSl - daqWdMIc7cucswMnoe06YcwW22U/q1pXFJ46PSuSn/pnJsgTCaeaLJjFLUevZ0C3 - JyYBqz29QOKLRBYEqulA/oE/w34h1idPdRyqzaBFNjE903NCIBBbM88uEhubLZjE - GheXBZILj/xUBWjSU5/X7AJ3JTMH7+fim37J8A0Kj9/a16QgbA7dGmk9+Q0iUDaa - o0Mc3m4j2xBrPdY7mLLqZRE66ZoAnkVdgkqHptTFk0JkS2B8lZ6KECJYWeMuCdpI - 3ItotxdFOYlHPvT1m7b+jkBpH76ydSXgPV9cAx/CHjvJPHx95eMxwPp2tDkMuPwz - ktzIB01bFNwS0rQI2wGC7kY8wxY1amQ7o6PfD4d8qKAA8uoxpz02VJ17F8ppHCnU - aAEJAhBlUFBNuBR6PYv3+q2onoAkWf4xsL3+aeDLEr8tg45We0uLxFaSI3PJj9WH - u3uFt40BI+zriFDYWuDPolZqUmSgWsL/nVHaXOVROljU/20aIOo3bQ+CGWRVAeeg - WHSgWhTy+ONR - =wCOc + hQIMA2pVdGTIrZI+AQ//bUKb8kI4PYIriL/sQ/MdR+O0rbTvT1IMqjJtQkXXpjkX + 6+BXYST5LRwcOpQHWYEQ3vWLZYA4ooEv3KCxMYZbpHnRPV93MCXXCzU1oNa+IMEo + r1scU0aykM0dZ38vuTyDxioRrRn9KMs2fO53p4Z2hF1+DwYeMgOwW6r+Cyy7pDiD + 85Sk7tm3NHCx12leH1Xx44bq1x+hRHK5QKfcisEJPVQyCtZGNzL+/VUuDTysqmG5 + Ftin+d8Ox98jTTr3gjGwoPa1I1MxLvWncUn85sN6Vx2eDAI/4gxzKEmDe6UrvyFp + WrtYDsp79E7gTEnFDJ0tlpLPezFqQ5LpQc2iyAgUmy9BKld+8WwY5Nz2wv3YqqGz + inQng1D2kLDbAEQIdRQ5mub/XBvlVj3LOZ5wo6Ic5z4+3IJXSGpoB9uaHHhTfOju + Ru8CvQG/thtEz0jeVpIIJ1of6FVamv66YzTXBtklO8iKo5inqfNJgjqFOPhH86mq + dgaIUeC18PJ6GQBQl3sNF1jGPgfJh0l3O4DyUqRZTWVR5k3AoJezMllxXAfswGGi + O3abk96Kodyzqbfl4pJzFdliiV6WXE62o4n+NhRkzQOrRXXr4T+L0CbnFWhcZMvx + 4NYoc40EDVoBw+lakJVCOARSHVn9ieXu4olyXkFHdppA2LhYCxUT88JhWmEOHX3S + XgE06tCnf4oMYDCZURawNDD1GUEOBqaw/a8vDXU7RX2jLlOb306jQ7+//1thCd47 + 8Jwr2ya9YAL5zWArzJAFt8VJ9Zl9clOg6i7YgNdLjg+qrpxTNI5LP5iSpqz4w9s= + =eXXL -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:17:55Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAxM13mekK6g83iE8BaRPbhR6O01hG4OhrX7mWbddXoTsw + WeaGWWNytVne/YWjgHgIp63NNhcALPIhHfTYNTcGjFbc5bn8BjRCeOaeKqiiJPyO + 0l4B9WuNbL5mTExufrB1B0Gdp6tqoRnRjTU70ptxphbMlLNI8B1SAmtFuHH3e1Es + OOz4HKhsZfCkYzXJKceiocHDDJJbIKKwnr1q7RoGCnSMYqMRHiozOChfeMzKBTFw + =LsZt + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/tickets.sops.yaml b/inventories/chaosknoten/host_vars/tickets.sops.yaml index 77e87eaa1..68d3b7ba0 100644 --- a/inventories/chaosknoten/host_vars/tickets.sops.yaml +++ b/inventories/chaosknoten/host_vars/tickets.sops.yaml @@ -5,204 +5,213 @@ sops: - recipient: age16znyzvquuy8467gg27mdwdt8k6kcu3fjrvfm6gnl4nmqp8tuvqaspqgcet enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBkaGtWVmRHN29nSGc3U3JG - a2VZZnh5TDBYeEhyTDNWM1B1MXVWSjA4RTFNClljVlVKWVFuaWZPZHdxaWJURnV4 - Yi80NEI5QTltMytPSDNMS3p6a3VqdGMKLS0tIGFTTDV5VGtjckJxcjlvbXpGbUdw - VlFkYXozcVkrK3RVRlFabzJYd2F1NmsK+5swwvFLQrz96dN2mtxBOE4/fkryqUhn - 4ikVOrNdA0eybVGeFVj9nHYOVaUUnsuuDpOBOdRi6ojpQ48iQIYHbw== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBhTDNiK245eUtxNUdON3gw + bTJvcDR4cW1CRnZGU2VBOXEwZi9UMnpPMVJjCkxLQ0R6TFg3aDZuSEcwM1lIU2xD + OFZIWlk3eEo4eEtJY2VKYlBhK3RIRUUKLS0tIDIwTjVZWGxjb2g3eS80VmIzWjBF + VmdZRlU2elZIdHpnczFqbDJwV05iYWsKkeOPi2vwG0f23t6GRnOnwdBSy3oaRSBb + gg3K4F+4P+zSKaZPP/ruDQncTI8fLkwZZb2l2LrmL1y5vJaZl4Nuew== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-20T18:55:55Z" mac: ENC[AES256_GCM,data:8OYQB3sIlIStuKPIkDRkeOcIPNEsMYENgyQ44DvvQNkR3lU8lHzyR2zL6HiO/zXF4hXeLUZSqcyH2jU61mEKr1kNFpA49BlYsxuPSOADJURhG2P9oUrc9hi2JL6KtwdRtvTcQB16YRVmhXgt0MLAmyAFc8V3CI6O5wfuEKLkmM4=,iv:dpJCVGga5FnTkCQlouUh0de+6wSW9Dif5Ft/aCf2mCk=,tag:/9m3rCWIhd5jyXXpmIb4jA==,type:str] pgp: - - created_at: "2026-02-18T08:33:46Z" + - created_at: "2026-03-05T19:18:07Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ//SijCexecn4moaPp+xqFvN73EBXZC90g43wVBa34MCy56 - MR9IQ50Ogr2guRwzD2hYcitPfRAD4Mlw65Hby9vuZmwto/KfWPEX/4dQakm15tWC - /AhP6dFYkuzJf5plOs5mAfTiTyajI2UBfrgfK2vqqhq/zR28YiFHj/GgL6jrrWAm - zz/hFrOsd2zLTEruYzYQdqRkjlKg+koBSF7I2uUwMBv+UeBmOGmKtiUWDZ3epjnE - 6zxQUdzwrwKwxc6lgRFOiHd2B4+68oq+cxL9fAvlAbmNU9vxDj8wbtOxlWikpQKQ - pqfdd+tdFyGJbsNobkMTF5rnI3Gb5lpt959CwktBaMyMya2dBtK4+FjNmWosCsDc - MWW8z6doGHNAg8KKhUK5xBjk6pMN1vaTe4y/YRDauculBB1XfEc/QX5imvRPEd63 - dOERizAdBvR5EIbX5JMFDnFpclHXy48gnFK+1O6dDAFU8diVeAzEhjKq/d7UKib2 - EVXhA97TF6ZNTQPqdL6l5F38//22qsn1cTYN8W3rxMwOAb7oaHnD3OQ8+kV1dVKZ - LZwrtBs1KsG3Zd3x8RoaCMMFkYcJrgZE99kx3t7y6srkmtTs7ACY7b9KzkvmPt6i - m36oWUsp+E/ngw/BzToIEawm7QVX12BKV/8ZPZgj6wR/GlkEYQc6IIbhWYXgvFHU - aAEJAhAuiaCOGWY3hhhd3mAgb30iZxQwKZosKyr4ARu1Pw+T0W5vdpqp9M9yTdGF - bq99knbK2GbcVGToMIuXbxldZfOFwwkb7J9WDbgwdSjFY18cFHSro6dnFVGxDUqg - K2LEV/gVN2GM - =olft + hQIMAxK/JaB2/SdtAQ/+IxL14SHs2gC1CK1+kS0qPqU8DYvni8bXX7y/wJgj14/Y + /Ethu4i4f7qOHkzojH+rZj++K+Qw1XKTCmuWEP4oRQmIr+p1n6WH9FEdYHZjYqOw + pAA7bqJ/GsnXk0jnYgM+gonteNPpDTH1qe+CZs/ibc+cGHxDKYbkYeI/RrPIdR1g + MjS8wTH+9p0dSWkcAarAQg3WDOCKLzwt4rdhd0gh/qBUprsRZw9RzqZgDpqcTBX0 + kpUxyov1G4/rNWnPRkKIpfOSgIAKpHkzYTrhSUbJv1LbsXO90GSdFyoGnHTd8LZS + dZDxwezAtXtsxRXPy1xmsgJeluFsIdg8xq/fNzTv3wrnsLW2b9P1zY9mfVXSO3pz + veGLsuv7+42wxuiW8y0GsRastSm0FgVeEY6T+gMSQcoPBS0CkMPfb29yIKR3EN1w + 5zAcSb0Ec72g2NlnWz29/FioNJ5dEBOD398u8ICM+aJuFIRfTGMBcsCEOSEemKsB + tnjEEHYF7TUbiXycpPV+T+HvJ2w5OLG+yGbfLYSeq9EVXh4Z9yuE3RCUSPTDFczx + MGS8xCpuOV6/46LQrY8SFDUtDLww3D2S+6hN6MjCbDzGJertQNIQZcHvyPokzB0N + QeY/EZZO/O+rDX8TtIZ5zTdunQdzHPRdu4rkq6mYANf4FmBZbqN61+XwBBGNxP7S + XgEnMN5YKQhCcVoctxK4+M4mgmdaTZ7MnTzY4MgEmwMnwWYQ5bH2YNVJMjTFfHPL + pxacLapNmYJNdPPBF3k0dZgVjY7qKDjbCV4JPKllXJ7e/5Ldq7ayMdCXHmOk03I= + =Ah7Z -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:33:46Z" + - created_at: "2026-03-05T19:18:07Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQgAlEIS7EbpbLjW89LEaUQCoKPV6u6vLBX6G0LSCzStXZIn - GetWRs5K0PHhMb+Z4ig2FHeU3cr8yKvJx2q8sJuuA5ETZyDAe8/ATvlnmrsWljcZ - d0CJmutMxY21N7ykzzFE10+Y4Q2GLdYIYZj+6o9FTW5z6/1XPgUyCfWjnD/dcxW+ - Tic5LZmv83MWS0Fxy94H4YaB1LVj9m5lyC+uslN0T+HQiGkq1S88vzJETRIfOB2G - JYhBxCZXJvSEyY65SPCLeWOXHB54ynA2Gfx4sQAeAi0Xr6dysHo2CDe9qv6do0nQ - cbgU9HVi9lFEmJcIsi5flUogkVwQFRkqee5Hn/+zntJeAfZe7RTaHuYkRSdif/tX - ep4p+SBRMsx7JOPO1uNKwAtmKA940y5yexIIVnEE4jPyvjdF5x+ElviUr9Sz5uV1 - +t+B/V9thcIEOLSvHErn6OMR33vZfuY5aOHBgrw56A== - =KByC + hQEMA1QflAioE8i3AQf/c/j/YtxkfJoGeWLNJVUCgwZRfkRUssmE2HiUWhmrQw4J + 3vN8InSjh6uV+rYjfxGwMbJcA38t8KuUowFBetpyT4ceWFhxPpaHrNE3qpZZLv8e + hU7Qjtnkbqu/nA4TvCLmpuCsCMWuU4IVBjwYR3n8QRNc7G6obTEvAeBNXBctr+K6 + 0tA4K23lTm8tNYi7UnDCUr4bamDX2z2ebSWPEfl++YmsKC/0/npqhkVfeOwZk/T0 + rox6J4EnsWYeAKkbhC7AgZSvgaJ9UzfZebMS2+1iNZqFHUKcNKMHhR2Z4Yf8ARYr + tHN+s6Bchj22gHVlD9UzCLvzd6N0b0hmv/HFbDtkldJeAe3Ya083Haj2/HFNKUS0 + kiOyLmjX8I7J3isoLQzgFV/OLG5IuW9pi3SO5GwROfMxeo7K8cuXEYzqktatQKmB + RE1XMDUJ3x65u2S69rP3TOQhavmX+fOT2UbhpbOqfw== + =Re0I -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:33:46Z" + - created_at: "2026-03-05T19:18:07Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJARAAtxs7aUokBlMc26tUKxkMkE3RwE/MvIGD8wg7o6DemAKX - pgp7zFW8aQu3QdBsVnF3yBONXQy/btXJJOVt6Di4u5HjHAVVri1Oq9VG5QzdcmJ5 - SWNsn4JVCpFCAKExQrSH/a9yN7/79N/unkCaeIKFhztkIr22dGWz1e3kuPj1abuy - pGy0bkBGWEfmlPoaWpCPNF4MG56e4mRZlNhg5lFvxda7nK5r4AgRyRyaz6thOIwh - Brg4d8ujixdeuLM9vlb4l21nChMxfig4c2wsHUw53LrpX+IqfEg+zD4R586AQ9bv - PrQU+Cqi75VANWwjn8imawtiHjqjTvetclgYRu53BBBWZGCKC1cNMFMck/cXcLmI - dXzidmbLRiySGdfDGu7AFcZ2MGnFsGjj41mg+Gx3CV2cnRJ1hiS8GBIlifNscLRm - VU24t+xjRrnoTd7RIjANzocZgfDEHv61UTXI4Uk5JyVvhxZLqvqR3iVwfLpm5toc - t6z+gIvKYXtzB3SD959EzszohB6SVVPRQBcQ+HlS9NsBJrpI5a055b6I4f6aX+9g - +Ila0uolW8QZuu6h3MMbSkMf+DvZwYQ2F8GCF2ypiEj+vONtHxS9c8hQlvmODbmf - 1R+O8jk1BkKkJHENdc3AK0l6aATClJpfuDbCikKMEM7FArkoFsAnPJTtfB2zfr7S - XgExqIA4b6np/zChBVusXm9AZY20v1u9lNmyQ8oRYPf2AGMAfWwxcIBJDRIjJMPz - RM2UmVefLb9iB+FKVBO0h5E0o29RVU/aK8gzCd3+Dudg1gTpjyDOi2kapMEezhY= - =wejQ + hQIMAz5uSgHG2iMJARAAxlEH/zxQ/X91szuBKatHHJ40nNnpr94sywlXCrGWFqf6 + XfhZUEoFsLVwxhRuU3MWh8rsAztp6ZkTKlr9pX+YxL6HvCleVwmiR0azLUfKK7ui + q5V52ba34aP3sNlgUbX3lj330c5JHOiW1BVKhex3ABFN+JWZTfd3bYF8nI4OT+He + QLf50cWTrj8DQ0ShAesJemB+2qifsebRsTLSGrIzxJKuHM6NxLgLUAFLxa+ss/or + hxgvEzy5tZDcIlwIXE4y+X7hggpt+ynuppma59EkOpd2CIhloRG7us3FDjxRb8qm + 8Nry7NlYWH8XiDBOgFT2jMcbffnv5mOYhpAMx3Czlpk43DxUeT12IcvNteLyiNBB + JEk2SiEJk3utnZpQXq8yv+VM5DHi2eKv69rZ+IJ/wGYK24VrjYsls00zWbxyrPYG + H2T5d/np4rS7HkMpcbi1Zo4LsJQXfFbMPwStq65eMviuMA24U3yFxe24eqNFerR5 + gNz0ZNbPRCuOkA5OEAlf5WPWGaD41SSxuqhBSS5he1XpZPzre6+Nb+Dj9NACIt2A + s5W6mnpGxw4slvVyItJLmpoV2Q3/HKuMu5nfoudc3x/UMsERZ2NMsnVDsFJPrSrB + 6wW3/I3Ju6fQPlcak4mlXxDQiHwy8+VXWLkQPlAVhfPxhQZfphvqLt3TEaIrQQTS + XgE7ufSuYlstglTEx0saWey1t5NRQJ66lLW7cFAiJoK2e357gcZBc0LTkaMX3sYZ + dngg04ftqMFaqTstrsJkkfKpUM2KbMwBre2obKaB6+e4OE+cV45NbSsi/JjNHTE= + =L0XZ -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:33:46Z" + - created_at: "2026-03-05T19:18:07Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1ARAAoyBuhzAwpZAEq8Rd567mdAmeNBrqNGtkJmtSYXplOpss - 5G3xQy5oATYxtCiuushNdx5A3Ys0fiaq2KK5LXDm0g4uyX7bu7XCfZLfkvs1dRNK - HBTP9Ee8Jg+LXYJohlIJuPFrH0PB2vW4RmuverUgX8zeyDpwI6Pf0h7R0Qh34gL1 - fjVGTD47sGGhpJywkSTeb2umlPMjsb3hOKcq5FNhaAa2adtCogseqXxIn3rxtVCp - Mpp1FIkxzIKoiLW3pklK0OY4LOi9wmssp/+uFfObD0/wMtMpBImtLP6wmeoZTvGm - JguxRxnkOoeYjjoH9vhObNVcrD3qxixSuu5Xl5X/p4nw2c2xrOQc0ocAF4lAeu9L - NX8GDCIFn03bBmtKgkQrTmoqCHde69ZJhjvG9IgCMZjVF0nGwTWu+56jMA1jXrFZ - eYTE3rPVICJ0bDU6Ll3/cb1vI5T55/HD/eb9sbXABsffsRYalOzneLgvm3UoChSa - PYdHC4GNyGkN8V3+z/Xc+fm7rOykHVkU7CLct76okjwuW2gzyDA1Pu48a+MeWH9+ - Or2CJiuLjgKzwePpl2N11flOWpq+E75BRPIHpfWJy8Qako/lgUuOtIammVlJt8Lw - 3VFiUgW/I7hMG4EjJPQS/Vr936/3X0T5RMdQlfYF3e9DwJ6ps8cI6wO2m77B2nHS - XgG/kcjqeYb+CiaTPzt46nWOfZyRenxOGJNcKYu4Kdt6j4M9HQlfQJozeY8DpYdT - c+2exI9bhqJql7P+YQuKodhwNCmVhzXue1/rxXUYaMUXXoWwbOOjtQK4x6GneVs= - =oOum + hQIMAw5vwmoEJHQ1AQ//XlCD2lGU/nIgsfYWro8LYrpaLbHCLJaQCBUvrBvUKM2Y + ftTowFeeBpnAesrF9haM26Qz8IjBGNhlG/6N7g79WclHeYFW3as1pJag25De6m0b + bGz6USmSBlXgPcxMU3T0SzH6P13TnGO5GOGu37+o9K7xRgps5FUi0ojB5mc88WPj + lCxAeQHIsELssM7AFalbnQdUyW4t/MchIXqnME1aR6YqX2fe/K/rNm8YgPykifz6 + NbbEPtR1uTrQL5kk9caTB+jMPsuya8DOvc2K+rMK3+3SZuPS74oGKWQL7e/amz9e + qWC1iZMru1ah7bRUNfJH+nV/Lv7i4jhwAMU0m2nFkQxuEwyCW2WtVmCuwIFnjnlK + a8WQyTVivF3HpiJp9TG6BJQHaJmSjUYXTwcl1aDIWWkPe2kceM9wvX2kFic3GHLx + RoPbOfCGMcHa2q6b6EzuFFgTz1Zx2HXfojhKcbqJEx9GNh0KFyLK7r60rgobzbQY + O9vCpdiF2Ipo5fxgUUgoqI63HfiGMyMDEXg+/lZNXO8SqzS9gGH426zu7wmvL+8V + L7Q1WA7zyROfU8I6GmnWz4fZ8+v7Ct1Fte51nVlo89TK86oI+Sphf/KU7yh1zbLW + tqae37uYmFXUWuQNxX34VoxgbeoCUADIdFUivwi01Rk9iAxRzms/JzpOHPeAePDS + XgElJ1ioy9T++zsB6Jv4OWaY3jyUkYli1KlaZClgvDZC2g57fEuHxTRDAzkUEA6N + //VSTqqf1OrRF44q4nxv9j1ccsbXZDkC7LrDRZ/MWforvlM7OAT16cY/y9O+nkU= + =GDpY -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:33:46Z" + - created_at: "2026-03-05T19:18:07Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAvJtZZ6DiIpGRIQ9fNKquhx0MJhlavz2zHJqp47jvEzsw - Rn8S/PvneqDFEBpd4+3CP8BDvRaP195Y1odX2LbXP+wDKKj4gxQAPzjK4rghgMRY - 0l4BhdNmOH37q2sE+I1zW8AC3JtAlQHd5r31LekS/pSYQ9oaf/6UooSQssZ1RZEb - kealAmolkAfSz6CVe89ggtuannwRZslmNE86RUsYPflmgeCaIeXYVZktMuB/5RU0 - =6EAD + hF4DerEtaFuTeewSAQdAJ20hL0QQk2NvOPw5lpLllovwlscdj5V/JLWuHPYo3mkw + OKMuPb08PKjDHEc2shIK8lwox5TZ75orhuvDEaHNGxPzoeXGbZis/LBcxojQJuwK + 0l4BcwqeC9bJOKj03kTAbsFWbs4VMVqlf9rKEOUSdPzgd8s+C7/WVrsPekqrWwOG + bv9bSgLSyl2uB+JTxurmUYbMgRSXDTfSK1V2qZfu16f6rpyrgYpmB3C5xVnuDAyj + =hw60 -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:33:46Z" + - created_at: "2026-03-05T19:18:07Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fARAApcP6iQHsp1QJdh61z7rAXM5xfU8RE21lq/KhrmrAklC+ - YVhus2258rluNFU23R5Wpnw+G9ig45CMLetGEBThnAEFq4dU35939wJBsHYPgcOt - 4rd1YjDFTISPGzN917tlzec81FJ/df1nLQ9vxqKBHRewfXPzABGRpCjUWpN9i2Us - ORPi9wfnbJfRLzJmBN26ihLMaSUfdS+BdCjSkO4ErxHBMv+KpDtFIfnong7DAgMs - 1z7pVwdubfyE4TE2olay2KjmIgcYXBYV5KkcyGjidJNBuy+YVUFP68mK9K/C93ae - AjzPCEN7LM4RaIXH5CsoS9WDbGW4L5ag3RTb0b51+TwhMFU3Cgj8Ief5VzEtT5xS - mxw+6YkK0EnLcBq3zhoAylCGa8q1POan5cfiSXhjFZhye1WwpDX3IpSfz5choZZi - 62TcrIciDLgecEVSYJCg3oGzR07luO2/VQbU0cR1gBi/d891pHhXC3ev9m+VOcxu - 3TgvuuSYwXqw+lCzwQNIxu7ZZmgATSUARx5yQ2CwiFLAPy5QpMw6bxJjdKaJ/HMT - fhthPEMTTf0rTm45PMMEuzV0euaNLKRfgRCrZMCqzbdfx3BJvtfzsuDYDV6m7/2C - UmlivRoI4iCXGYwmk1LD37nwMxNhsGiMkB5PdsrCVY9qQ1d/gWCxNkjac2fpx7bS - XgGNA61vzQuLJb8ZvDhErflOWWgQYAhNL6EalG0+DZ4eFI68WYx0HJlP9UqHv7cI - RDQsPPIjYOPpxwEjn5QJPl1j4GAukkIbSevJ9YegQN2J7PYa4ansQoRc+uPIEoU= - =ciUc + hQIMAxjNhCKPP69fAQ//bQ92j4VAlcP/Ihz+SvrzLMGSGQzagU0aMdTWHimY5uh3 + TSxK7NRyDkr/F4mDO37n5NeWPsFqdP2au/nEcAKaval79D/wSWXyLpIrKd2NC4D5 + D1odfOZluC6RL/PbQiyqEtIMlBAh8jE0EME514kRg6ToJJsMkOz36zhtfuFpMOFJ + MGEwJI4Gu5QhxXgul0yphyGgYP0SBFILLGONddKBdMmHWB4ArbjDdzMAEfhlr20l + VopYdLMVpBTs6E8VXKVCKMc1Ps6Ej17JTO4tNict09xmubW4AxstiNDGl93kzire + NPhUEfi+3yamyXdjYtOvGjQP25dS3MszU+RjTApvF9Lpg6KAYwOOcG+eJ8JIFzkZ + XhNbkj2UAdj069Z/KxopRgLKfTv3dnT2mhkXfpYX/wx1SPYaJb8HP+NU9UYGoA1Z + 3dJWsBSWmLJTnE+d8SE/ek5twFqx34mbEwv/J2jQWQDIec/g1Zqr+ptWaDa4Jfba + 7qFE1BFgp5def/1JnZV8q+lqJWFkJyodwXLbtUjNytNKyWlTtNecOzwLaecRvhcp + b2aM5m1prh1SrlNbq/0l4WYqaH6DQVH8jjOxvyGPMKDptGNLwUUVr18yn9T12ur7 + 3xriffRfYVTImUOwpZW2Z97Y5KxtOzZtyeqMjqpk7X8JLaH6ijoquBM3rpDjRgfS + XgElLlt7niRGXwVChb4uzL4o8aW4sYhcJmSn5sDkLxpxSrjFp0fpujPDQ43Sgqbn + L+upR/BOl9W00+RFs6KL54BdK0/s7b2ISR/tx4gpsj8LVUyS+eX4nsMB4DP5dZc= + =YyrD -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:33:46Z" + - created_at: "2026-03-05T19:18:07Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoARAAoF+YUwwYiCTvet1v8ObZY2PxRSayzaiHKz6XnQrTbBqC - 60fQPhNc49UnwfHzTc4G0BN/0xI4qjQe6kygWKkh3SWPwFv0rlLyeR3t26qpRx8w - KsZYzaTmji55hRT67FZi8EUxxW6SoznosElPF28zN4VA2Cjo/vA4uRVNutBVgC90 - qGVvQihsGQG5fyeE1Pd/JNcNqDNjFwujFkGQNcgDcDb0i4+QFnZHEaz7HCC4hyta - jYIgTMKU9pCefInrz/qw/jp9sevIjbYxIzGfG+iyCEZq/bGB0YKUF4ERQPrddJvg - 4zf8Z6QOIG5bu1s32nIyPR5vtkACiEl7qJN62gNb8/C2D2j41vCBwNNYHwxhcw9L - bBEwR/oRT+SxGPooM8Cpo7kU85kRb7OLKjBhhiNRMjjEm5CjPOcVKKRAS7mvBUNV - OrqgzMZZQHRGBoCzxoD5iAMfjM1fVJVzQj2yS4cup3UGzavxvONse/pEzmOhRmTH - PQTC6o8kzsrXMEElKODkieVx1I02dX07utVsA9E9iUOS88cCueLLnF63YjWi+q8q - zb6dTYgTMSHjBxn43V4kzCCWjo55sReJlwZu7UhOCiPRbIEHsFV3zKgu9crOjcpc - BLt4eEc8WS1OMj7hAg3UUQfenKdz/gHicOq1Du+UvmJJGOvCrgyYXzGPDaitRJDS - XgEd5L3HGrotYkz9/zyHbwauoeumFdosP/WOw1As3xwDesgekuXuHpsxiC0hYbl/ - nQ40Kuwx9o9SiTTxFL02ibIQxNtW30QjL6T/jkJ1YtRr47gk3OjZe5IDiYuYoBY= - =Ik33 + hQIMA1Hthzn+T1OoAQ//S7fBx4MQNBxuc5QDrorOvEfM1MHEeCO64CqOU3ORild/ + Wb6zShPrHeAZRYIh2IJpEVxCGQH01LGN/d3wSi0frvOMt+wbY0GTx8iKXufdQXUX + 9IZ1EXDObe+KNB/nE75gdKSu3sDNC9GB8hiJbcNj85UD+ET7ir0bXbsYB8nR/imO + EUp9eovrDlKw8vQ1sju7GYPAuAhRcac/BrkryZWvYJFdQYMEXtClPDM4UEwzgubY + 2zRBjoBWRcN64yAjgMPzk5jdVQBzZcFex0if0d89axG08zQAYRSPfeQDpWSxSh15 + PEONhWmWQ+h8kZaMGo/USE8w2+AC4NLWlaPDyeUsUUIvrPz9C+eLDQrJNZRGhQPF + iCygTfZ6I6/cRD03L93jZdiBp3xpJ2AgJFRirGIzo2wHSDDAgEYnjmn6Ux/WQD/z + SpV4VoJ0/10PzTKKy9SBGtYzbEK/f/hK/x+yrbWM1AUzbH25qX0+SpqPrRFGBkGW + aYQHfL0dXh43wEu7a2uKXGYujBW1Sygnyg2w7gBcFptU/BP9gBFLOjIfe9wFXvvd + u6ViFvzmE7jhE9f6o8DZAdv+RARJG3bYB6KqHnAz2jzZucWnd7OEqaTgbc8uWM3C + iVaYWbdYCxrSDvO2WM2QV55N8hX39ttXGD8GdHi1Ily67PC1qFWUk56YwBdq9pfS + XgGSw6FdUoGo8qlvmJ0w29zN1MlGrGBiTSG50PSybXCOiZWUc5SsYxP2U1uWD1dc + 9w4G7k2bbGK69DI46GNxFgRSvGsiU6YAkxkkJSnUaSBFGj5hcCpWl/a53zDRosc= + =cpYb -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:33:46Z" + - created_at: "2026-03-05T19:18:07Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ//cSkro70G8Uss61n1Z+b7RvdmOof5+iwI/AijjyW5kY6o - yEmNhR2ZTJK7pq8bgO/guRRWrwUpyTBFvJuUwjjLHMWNwK1gOLgfsr0bkgkLerqk - cX0J01D5MSPAdCYXNuHIiYln4qVRfRlywutfROJs+RNwf2GPgWUucP/x+0pK3ije - HJCZucOUo+Kh+0cSIURBnn0KdlRj6fOjxAEDAMYJT4FjkiOVttMnPrefjYTvW4kI - geDEqxxWlVOnrAjGGU08ZRbNAtJjAE72NGiaRBuVG6WSevfjsieCAEkHyvY8rPXu - eo5psgUgLWgE3lbyR0V1n+sdlTuV881L2nDxM+hpZo04HRevvEOLKrmB98ZOXtu5 - LMuSXX3AyyIzwjCAc2YizIxiS+tKmehJ0HkB2NrUQonvKX2R6Og27JtZqH6LlPb6 - fkkzsVWDGdw2kut5pGmB9Zo0korxQA1b8V0fKWhGGmWrSWMNCkyYMsvx0dDSl4aT - b4pE9UXY235bD4JlQt7xuKbPzLK2SIf10oL5mhC8k+9HGoDJiHNSXL+teeSfE1X9 - BRktJY43GM/D/c5hTB1eJvLeO12iYHRW/jv9k9ezVLAGFtzzb3duH7P1DydYVK/Q - x1PWxWYGKExSB4xjzzdcZcqjoNraadKjRQbuf8l4bZNEei1rriq/A39HxqEUl7/S - XgHKRcv/oRo1cETI/teXVu0d19u0Su1O55E5LQ390IhdNxZOVmZ6VvJ8oyApMNAE - qzUHoj18dQo5+3j1JVVBA1FB6J0BWf0pMUFfiVYAXJmylje+UTOvaq8bQUNE2c8= - =wE44 + hQIMA46L6MuPqfJqAQ/9HZaNaZwepDOx0CoGVMZq2Crsut05YhXdr4m5Uhf5+Y0T + iGoUNVdP+IGO+tQO28cX2Rk36amynpkZ+mgtHoIHZG/KpU/AGOKovs1X6KD+Ict5 + 3I1baCwVxX/tM5363jp851uZ1LYEZDnM/TLLxsjw8DVhcoRhaG2SrvhvlcrLQ4ye + xubx/VDJbe4pKZo72m5o8ApSPx6Jvi82kjLjL0cQAwtD/F+aL8KlgeN2gC8t+T6O + uRJ1SQHydjGbDbBcX0jOF+pa+gVNULQ4Tq6oTKWP5LMdZ8YzDDoCJkVaXgDH0y+t + bECne7+2pDaHbbV16V33fRDogY3PPs2pO1tgPhcMl6AZFkbIhc6E5E7XkPKkEz05 + 2Fjuc+WT9WDVGG1R8ZJCTSBgpewpxjWMzIwkoJVztRiGiHsFZOWIrBHVwQsmOw7Y + ojhXGkr/b+UOTiGo/mcYN4gm8PDOOtsuj9zM8RDWr8v8w13tWDpXcHQF7lFwSWsq + yg+n2M5bTJvgL/CyxDbt5xYp5YNVFKJM0B6t5H1jbqYo5BdU24VjBe9UuUUDRkDf + opOo4WdWIHLQLRCQ8me3PKP5jsfmXn4YwLcw6da6/REso5Ofcxk/94gv/IBMHdD5 + QCaSEakqCjtuBu5bs/JBJSOt4KtulykDVKNRH/3g58vOwdyjJlYGY3Pj22W+EenS + XgFY7RGR4fn+clplwKIujXW8gXCbtOXYoD4Y3XXC1OCfsit9Hy+kLLjFWFZtnbtj + 34u8LizTTNrMbTIzLf72We0xYMcqn6zO3jAwUJmyW6TaL79eF6ZsYElc7tFp4xI= + =+uDf -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:33:46Z" + - created_at: "2026-03-05T19:18:07Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAeDs51LR68rO2fc2PoiFUh60isRAN7cYxl21cXQPUOnEw - Iz5GlTNl1YL/V3xX8M8Z8TPqePJNQPrAXj8rgVinsnTmB9f4Sx5J8QNG7Up6wcYc - 0l4BnkU+bEFhgtkWzQdtcGAaGL0R3IGqY2pKY952JdDV2mec8ZZM74k5DTQ7AQQ4 - YpxD3KllMBThsJ6+l1saCdmJSwz/48Di0pF5cjzWOmrja2eNAXnNYnw2Lj2QU+Q/ - =p9IC + hF4DQrf1tCqiJxoSAQdAy/CA4k2vA9VZyWlwefh+7Ufs0feas8QNhpyyK6ZKSk0w + y8qEhzp7tS3mQxCAH83uiXsv8wtgjgapiBWOVc8xHb5YUkSXkedR0j6v6I6SAB21 + 0l4B1e2+XnMr7litbYak1OtvFryGuGVLT8mSYGdb+0lX07ZoYgsQbmU7xrnyJ9Vn + Lbxx0gQyK5iiwODQml5P9kC3EUaAJ3BlwUdGzCPkQSpqf7+LWLGszD8IHlkMiy8w + =38MH -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:33:46Z" + - created_at: "2026-03-05T19:18:07Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAyUi+nGdhVjm5GWIVrEZ4EAVZ79cjvvU0uubL1IU+VXMw - un5P0VM3Z1ENz12nLVISIczV1s6Hip0I6l3bg5g9o7glWDk0rCyzypJd3/TctjR7 - 0lgBEK8cfpkjm/Ig/q6rpr47FYjvrAFWB9b+qrJKAmsGFfgbPSB/iIGiCF9YVPMU - kpF0XTZ7FN2Q36mOeupFaT7QamjhtJkmbFzJSSOsrPEzeXUAYt+GJBpM - =IV9e + hF4DzAGzViGx4qcSAQdA8Q/2mQylLyDZIsF8Xi5zF7AG21daJtSQin6gOyQA4ngw + z/xd4657gK5sY7Q3WRD5QPldvY5Qi3msNmj7YCUoryaGJKqSVO2mMxcJFX1twARR + 0lgBe6BWA4SRMHfegYNWj1WTZJ3V79vUB87NBrsOETJElYqXoVCE98SrH4aqLfKr + IU9pmE9dMg2wVJ4gJZRhO2c/Ogww8ui39uhMwOFzZWX0+oH5lZt4ohua + =v3lQ -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:33:46Z" + - created_at: "2026-03-05T19:18:07Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+ARAAw47LBnVM9EuBVOV0TuWVbSedxi7OnwkYcwr6c7nmWU+2 - mfH5CIs2bazHzjfdaLXRFSMQEd9owe1zbnLAlIhBVZKUfm3veet9DMoTRVRxXQto - B8y+RBa9qIPXnQsy5zSqx5Z807UbIhbfDFFruIRh2lu1hIlivcLam+OUCR8wjJMk - d8LT4wP9DsyqFhqM+KQ0OCuljN9Zd+hKitYjKb5ASG9VLedxoZ+Ek1vzr1fvdeJw - 8d9xUdztWrIFkWzNn63RfsRpY087EH9s2yFIclLgQDQon6htydotLg3uik7qgjlI - wX8ewB/zo9gfrTaHNC45SEyoZzr0dswY3D/0kEeqjji71HtuyPhXdJuUu0Bzg2jw - 3CprExwBdkuT/+38eJQgt38p5IksRstGnVKKdsuqbMIfhUitftxGM4nwI8e8h1vd - 8i9kuew2iT1YeGl2xP8tFt3w/lAsEBK4U9tf0886uWc8ypEPya8wrK+ZYscGKczS - VDQeWjw82W2xAYBYGqiL/8TARjC27EDqNernfTl9u9P/m0PbNNDSzF/W5+UCnPTl - YoYgnQ1NWeQnssoSxlx1+W6+VO0O0IH7vYaIUi7tjsJ4yRKiKykFGKIly4/pjfkH - uoglXfe/XR1xQ0OuCm590JM2+AJbdso2xpepXFgl3WD2Xjkg2gUyjbdd5EXv4g/U - aAEJAhDyP+G72Xg8Jtc5qc8qVtQ3Q9SCLU0Y1otHBeNHdAd4Fufgpk8wlNFT5xVr - xp+XEykC+vJTo/PpQjMHKpOSfrOuoxqlo0K80z12efsLu0eRRxJqtYjFr3TKp95B - s9SmEGdcdaZp - =O4oW + hQIMA2pVdGTIrZI+AQ/+Oy2iqMhJRZ3VxTw9jHxAxXH9iz7+i+P7PChWka6lL38y + fTN9r+myIUG4DZWz/8viaK3MWqMB3ei6G0NZ5h2Y75tVltR4bnyAWW+ju2OWNPr7 + FrlaI8z5LxhA7UZFA6mR82FLHfTaN9hwAhspQwd1av8aoCLPLPbj2SIvOspTixQb + K5dexrIUjVh5GgkeYZfyzfZ+dysr+vWRiBZwkv+v/GBnGPNW25m5iizecSKx3KUL + afKDYsmxVCE5E7ejMNEbSYRCdhGZSxKIWCL4PaDD1jiBAbon+bjFES4dhDJGqfzL + PaAZuwzNC4ROsf1H3L2pkOF6TehldjS2OoiBszrrRJwcN/FykC9gRK7UCTOpBGqS + bITF3i1VN5U4GaPP8vyhhwvNmPxlpZVeXa3BlL0B0ZUBvAY4L4aoJFQqxRXfUV7E + kjDnQ/K26H3K5rPWjtrJ1PJ0MJu8gbUMNsJa3QTZin06IN0KqeTDFW17eg4Xa7T/ + PSeyjTipPl9nKj+YEMGd/FUgHRo1wwq4WwZrfVuL+FdLv0HFXVvMZ+prG0zhDFRH + QDY04FE8LspP2kph0e2YE+P53vUHIX+RUbxtlr5wCK4s1/wK3Rt4VVbg1/W9Dm65 + ce3EayaDMxV8yLjrWc+34+m6yVIXZOcx+uCEPynrKQEj+vvEGFmFYfsYpZXePVDS + XgEAcxWhDEv3wuZCWsvsc0MylBd4snn/x9kIVSq/86hF9LaWV1apYHAVzGnry5yj + E6CJMRtdjPnrNZtJE5W9bQtrB1YoAZD5B3r4JWfwcyfesdI0LELmHzNC6rMoPi4= + =qdbg -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:07Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdA2WhURCQj3SXUMU3dAIJXRY8eCg2yhCSCfQm/kW/kvXcw + hcItY+g+zBgOM/d2xDAQCAeAJNuDN1+XINTuwAsf2d0cHubdo6DkNL2A9Q+ERYTz + 0l4BzIvRGNSVN4tX6lq3diP9IQvUETQ570qqwvDGAc1UpV4U++pKBSUIcOMU5yhG + pXiCSlvjyejpXNipbubet8nrzMAnQV/Iw6NcakZBYyVntF6jhmoPiCTfeQMBU6Yb + =H1UG + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/chaosknoten/host_vars/wiki.sops.yaml b/inventories/chaosknoten/host_vars/wiki.sops.yaml index cb668d1b5..0f287f4c6 100644 --- a/inventories/chaosknoten/host_vars/wiki.sops.yaml +++ b/inventories/chaosknoten/host_vars/wiki.sops.yaml @@ -4,204 +4,213 @@ sops: - recipient: age1sqs05anv4acculyap35e6vehdxw3g6ycwnvh6hsuv8u33re984zsnqfvqv enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB0NHN0bDR3eHc3Vk55WTAx - eVRRRDlua0VXUDdNSWgyWDdoaFE2U3IrMHdjCktwbDRYRXpodUE2NkpvbGViSHl5 - aC8wWDFxZWZzVERQc0R5NVFXcVQ2OWsKLS0tIDJNU2J5eFZOMTdGUmoveTg2ajlP - VjhiaTJTRDR3d2g5VUVuZC80WWRZNDAKBxS5w9+Mdkhh3HmydNsF458/ZcvgeerA - 88qMODWfRyrteD8dUeRxjOVLNsxCqg67P2bRLhjafzmHfiy04YRb7g== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB3SHpzSkdCbFhkRnhITkpa + MldrY0F3bjlsUjNhakloRXM5cEtIMXBDUzBjCitBSGFWM0VMeS9PWWtCdXBZVU1m + eDBQazJpUGxUWkJ2MDdvZCtlMzBmQ2sKLS0tIENrRlZaUjNCQU9QU29VMTc3alU2 + QzJyN3FNdTR0Q3JJZnlDU0d2Q3FHODgKhKcQX9RK//BIadFHVcZToqAI6l4FEYUk + n9DCWWUWYXKwBnVKLv60Ssu+LPtBaYf+0c++lbnVlLtrqrM3PUhZqg== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-14T23:44:34Z" mac: ENC[AES256_GCM,data:Q2x63fsUZMuicE70thSVCG/pKAyzTw7FD6f1SVbvBnCv3r2xsNcXczmk0xoke3H3eErf5aiaxzsI50VbEzjLOb3kLfFeHXMCMvT/SZ/DHo1bkMJ1P86Pg6y3VFAflAJRtRvRpNyP4H9rk80Ii25iVZUqwuEcdECTUQuIF9G2Xew=,iv:QMlN4DUcAWQ4I+G0p6R1vEL9lFF9ziRlntEOf8Au6jM=,tag:qUENqPQBJBjul0S9Z7Y0NQ==,type:str] pgp: - - created_at: "2026-02-18T08:33:54Z" + - created_at: "2026-03-05T19:17:58Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtARAAiFH68X0dY2sBKAtoCJvdSOledWXNVTMfHI7s6v+XnQbD - Hon7+lMfntNTFWUhP2Zqplp1D5IK5GfL29I7hMj+bPGfqLYpGjDyqD5jj5FoiOPn - ltjAkcJIoBjkJkK6Eoi/ECxeZcqfb/8KHURzt3qCqH14qTj69ySCBd7rKxxr3erC - hal2WYkud7hKme9BuS6YzvvcA4nSqg2VPXfNQ4vdAG+7o5+iJM34VE8TXr6E3vC2 - 8Gn7X+9hN5MY2OVtGSbbmo7K460+kTpFNuk37orko8k1JR/wH21zBccxXV+Qo2/c - sA9JeBeUEhqV4F5HOjGc4ias8/MR6CEn4ZHKLRA60cmLfecEQsSSZH3OWVTAhBVM - MPmPYGoSwH8T9rzIqkVpDKkseeihbaetHwlIQP1jJ+VUn698KUoVF6nPjWN2MvhI - 29VFd4DEulao+T5JiN11xu9f1LtwUrX6MBThgZO4Xkgw/xv9FFi64H27tod4FOXL - iCRU5bnfDUzPrzMmmsIX3G++Vq4Ey7+3g1s0e056hQVgZSlqk/glHFrWVjicKm1o - vw7O+0xaw+j6i1DX18PqWmoUAwRrRnlsjO0v5e9/YLNp3gdsdXqxiE8UOW1DIE3n - VV5BaxiEpk6ABteBoagV6gf90sLhoRHZMT6q69ad2t0F155Luxc3GQp4Rr3zTWfU - aAEJAhA6FjBumIgFRMfdGAwbcx0s6KXSnzexUp46jL6aG3oUgzpe9SIx2DCXscO8 - PzQXVByZYSb6LuM8O37ntqqTLpjss5/aOOnp/zcoAqen8SmkE/8ed7w3rGgYSpzJ - M4pb4zkLUG16 - =qQxS + hQIMAxK/JaB2/SdtARAAkoScg9KQ33yz9pMPK7rMkhgvt/xtnAXUPfQefWFUiEFX + u39X6V+mqoogrta7g0Lxn+4N0bcgM1Cz4F/aGEc+kgKvW4372N/39XON+b5bL1gc + kW6DslmKJiroj8CjHqwHBTcPUWYThzi7vIqRgtsmP7BZUnVGCyiBJhDAldiPhpj5 + osbUxQWwxhqieq+O3X5UXYWh3JPIX+XXK9Wb6E9b6xEN6liNnVT0txRXkAO0bfaX + p2I4lWYL9R0yQ5wLhDmkvhxU6OerU6QdSTpBpwhLQmG/CErv/z5KVW0twt0JuKUq + t8hyuIa+cm8Cr19TgaK636a8pBzdvRU5nNBtBep7LoFRPxJKMvEUFvkAzUw9YI73 + 3RCUjm98ku3QPtJaZE92mRCOrTMJ1QzkkGk5EApyaD66LwlPNSz/ZqxVHoLwxfgI + QmN9ynm+iMdFIU3+bCoSp4dCjvEAsYmotLH88oYrQ6BnXy/oH73mXWUqB2IBJqzP + 2VG4mrj53CtgBm0eZNLrtei0BPXi+3AauceknikWcISt8QpRtWaJ3PrOzMp36sTL + 8mgeQqJF6EZncuQei3+471FYzmJacuqLatzAQRkwP3wW4cNT0+LbVfRN1tiP2sVw + Ed6/h0lig3qfWkhinPSG01Kq6eLQq78VKxclKbb/D046odirC9Vr/kVZ1OjS6a7S + XgEhrlCqOrYz0hAoYNYAqkBqu25PveDmPRgcz4OxBa1GrqzeUCIMSG5XdNeJkSgI + HkBWQpQQE5v0+BYb55jP1jA1u3GqbiIRUHpoEtcqOH+RmmEoHw9UI5sNTIFBYnU= + =1q2G -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:33:54Z" + - created_at: "2026-03-05T19:17:58Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf/XyIkEmxLb0dN60f2qTodT2JKPE8JkSaO4MKoNdNxZol8 - IUGBjaGqBz83nYQksjFT6Ol2PqcZPt4ECnwOaItv8+b3aFCbglxlAiXP/z2xzxY3 - rznIOjUWZOJsZ6NVLPP491I0VhYnTJDvq7BCOBge+howj9QmZsLv79vU8M+R1CZe - rVXvhI/ILE8LQI/LTC1bGnZfn2TaInzzdUFBuiK7PloJhQFtM70p14PRa1UzmqZy - LKdLN9vqes7UaisKfF/UtPDYDUzDFATkEisRcBNM+UTzwvnl8NKiWsb/GFfpN7Tt - 8SIMrtqImXu59/7wuACTaTlsUoQ6wyvCATA90MAledJeAaFt+aOAEKfh4OnbxPVK - 2cRc4Qfpua9rd8W5rOR2fmLbcQcQPbMAoMkcZW0gWGGeXAPDou2RALJmw6NmvG43 - GosXLomEF4DyGjmulEORsvkMYVkjk3AAB695VkQ/Mw== - =W7Rb + hQEMA1QflAioE8i3AQgAgojh4q8vR7rkplsLjsYPyPTXK54uGI6OdO+klAMn99h9 + cRCZqZr/ft3hXuMtCESn27uAl6+NsiD/0yAfG+ALO7JCmo2ZbpIy5IvrRbfJhL/y + oqzIpryGG2hbx7Vip3oxKWDaoNUfr1pRg94YZswDvuwlH4cUSX5qqdKetCs5WOJ8 + oXiU5atAZ8Wr/ebZkDSPs3LL2lQkQjkazo2ustQ7PlQLejRixdGI9awRgsRaagsg + Un5yKjCPXEhUlzpmou04sXpghkQki93xeCXmK2Xv8IY40C2/bWgurxosanzLMTQm + +QZEA0NPRdg+6YASUhA4OFXpWmId/6eoORWSgxFFltJeAUgGggbNpGAvgtxRxgul + RlkWmabVjDclN+yRsH7SqqfVHSKZa5CP84zcHCH5Fl3HpJDUblj/SiFVn6RDcRks + kCspnN/v4lAU4YSUULd1T4RVOXZJFMLwl7qZAdTjvg== + =970/ -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:33:54Z" + - created_at: "2026-03-05T19:17:58Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ//cn5egxjaeZRAUbZxOow+xdLWvGQk3XMJC32VJDAMIrmQ - SXa1ovV0kpeQgA1kH6XfzJ/msetvToHRZpDNqs08PijO5u8eUVea/dX6fR8DLmbF - C2YPT9bgU2ILb5TluZWcc5AvfUpLt4HDUxbzCd7xnmfMmJ9fNMcJoW3aS/BTR6Az - bclg9D+7du7MSt4Ij0yFML1Wl+DgSZH7qo1wAsAdTQf5ZtqnwX2F5IFJYhxRLNCM - KPXo3ll0LBu7w5ipGVUu6X4KuNIkSntKvUq3gIbju9CnQwJjtmmNYSIy0KantuZE - FBPD3w1NlisFBlD0or7V2H0gxePxPbmg+Jd6YBZWiaLAujU785JKgY+pikEdz6Qd - gKRD+COBmkHKUM7qGB0xtds0BWckij3AV+gjF9BkjRTbYcmZKu7Mk0/idZcbp9jz - TyVKShlBrVMys3qmNMSkUmrLG+PZECxA485m/GdrRL/wAw2XatUpPPdMvGLyS6o8 - JhymxA3I2Ha6lRa8wbvzA/gbb0/U7aCGWThnmkuZiBxBS8Uhe9BUbmkfgVnm8tls - YMPbs6ShdMXSn6DzkgWeLV1922UGYQeqm+BMaafW2mXllx0GSU6lndvt9bBTc7pu - Jlyz4+9Rr8TFJ9e+bwMzWI7dTfDAy7T2asAYUANW8Cj35xKrLvAIukr+L15/MaHS - XgFtvOsYWacEh3fdMs/N2NoWkUedvZlMGGoPaXI/GKlEtnqB/qcpQVyyBldhc6qe - FyiA0iV0RY93pcE8DqcxcZtR6xGD2VI4WQ860tNfk12NWbuK8un7aPbmKyAtcaY= - =cm6n + hQIMAz5uSgHG2iMJAQ/9H54MOD/CPKJLDi6uhM7XP/QL1HJjYcmQnVk2ACQ6Gjey + 5hQtxqNKHeqc/28ghKNv613E7kfkHct8wVBnOjs/opo+4l75yIi92dvqbO86XCU6 + oTHTMjACHLwrpyUHU0vkWkvY+trDKNYikFMywssKfIBNprjxhQhrNUG6NQdD9aym + nyum9WwBJh6CK+ewjU7NpE1IhjuJ94+rCkX8NA4pE06FG8uUSzksExZtjCW2m3jv + HqpTDBq8QpMc/k7qA2nAWdRkgVNOyhFf6/Q16NqOprlS3Bur2Pw4hjy3lh/S4bac + t143fSC+y91U/w/C5J/oPSuGmu7zkZEP9hgr2K/E6WHfukK67NMn67lYX3DX1mcL + yysbHgbjdd8NtZ9A9YB4PAf6A8I/ch+BWWX0ZBHBEbtQ1aGCstn/20/35L3VstJW + 5ucKeNLZLe3eB+0W+vsT6IblBBxSt5K3onv1czRwgrtUWgwhexpvl4t9J4mftGfR + r7P4wcrRhZZWeHp8qXAiDB9B+4vJg3xMC9gXIvJAgqbjV+jxQzo7lDx4p32lwg7y + a+ma2QD8Z3Ah9wGx3437bFo/yzErDd9yYtoLfxn6nyb2xmFOMH4al2+mQTOQxqnT + hnlAcQqFurRFUN+2P7ilKQYjKWB4+i/ohxN84A0MDT1E/EP+EGQT2XVuTme5ADbS + XgFaM8qFYFdf6NuKndSxCtc35c0MzGLfejbcBCnoEVhqvrErD9RVMigraacalJFW + p/jS+tWGwJoF4+2tQuPHUiB8ICgEAB6C/++i4RIrtf8osGAAblsFKPU0u5orCXQ= + =St/v -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:33:54Z" + - created_at: "2026-03-05T19:17:58Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ//UNzwq8r/bIo+jPA8bZg9NMwgiB+sgJZtTFSZs8pLcp1e - J3e4lN0XyfXq2QN3ewefz8T+vpQALKoWXnyNPST7fM57VmaZ4NpSdTpV5eMFnncE - aRNkoUp4Pkjr30hGfjW4wZCkamVzx7x6nO6XzLpELUPGJfisQ5sigKyDgGUNHfrr - vIqUNd9ixbIorrSY7werdT4s2Td1niKcO6/7DnVC+e2Z9vAL+sMdW6My08GvuZSl - Berp1lQ7tDAArWWf2cOqXqGUdOfG7MWEUiTGH1PK5kMs4F/d2Cr95N340fxVjej/ - Mxh33+UrQmzjvSSEVZC308SlspJOL1gCtXB5g212IkzIw3hsRgV6N3ptutBZmY2B - nyK2DsyWiFZIenp5CGz267TsHxm9chz7qoM9ephAhnpdBJ2zqLoaaT6PU0LYJU33 - BgvqKwaUQVPf7GsTWe5PIbInTnM07KEWOa2eOIoH9p/jICNl1fLbTRMIqfXLKywl - BZeIpMyc/c5nqjRFtCKB1P1U77HMadjWjChjjy0c7PYKHOyL93UzorrP2f6jxngc - ghdsypc3jn/GWn+5tqABaYBKm6YqoiWxje3Ee9dYDuOGPBI6IP/wyS9WFrlGzs/o - OYDthISwyWSxsbK7eVE7y5oCRrwOFrWCtPaDZ09JfntXODyJSQFuGQEx/IsVKKfS - XgElgPUNqAA35oYSXBfIj1sXf2TWfxh6yCxL0TSnVzvYn99cF/WYczbD0WZyKca4 - cL3SGm0eyd2itCN8AySzC2XU9z+tzjkSR4uD1/njCdjnyC2RaNxeXrkae7lPwe4= - =w8+o + hQIMAw5vwmoEJHQ1ARAAih1Qz1Vu8226GdkRTA21tUjl0cF2yak183q8notIrBQJ + IGnDIgzREnyHylh0F5eB4TbIrZhDPg5LDCKJXvjpCIGpOSqXig7hAfaBDZ9ml077 + ae4ecp431Hl4KC9YuywR1lx4s5L47XhkFWVCJsFuHDoUDbVQcOdVbkB/4VMt4XaN + vp4SZhHgE9TWcWx1adb7O6mRlXmqedb+xwhQARgUT9PNDO4cgLsW0/Bw7ewyxd1N + tHv9YTLzEJ7E2/R5KcwFUbLt27LiB1yNpQ/IAIxsh1BV5LxaAI7YrY9VyeOA4iKB + AeAIr4qU5LfjVFfzA0W2v8Xn51/tl5b4C9bWrfew62PISlA9h1v57C3F7IkFBSvd + FjTtJi6o3xP20UCKzV5n29ez/MIWY1tr8GhbKF3Vft/wcPMdmGUavAYDMAXQjrDB + 0e2gCS46mP6mJUZ7bjXEv5o5ti8vq0RKB2S99pcVMGh38c2H3mEBPqqSnZOntYUb + xGEEd710peQcNLhSxDisGdEu48cZXBo4NkX2rQv50SBL4f3giwzBUoB2WmfgMQWV + WvqWATIHw2egqSrE+rvanlcyNKMdW1j0Wi3Szb7Sx+PT+NcxULEBDtKlDeFlK/sl + S7Z9ERFEvyYSme+2sM+4SHQiUvUZVDApdjoozZFIYCG4xHdRoPMafBqXIQ8stzjS + XgFlyxtpOLVsHUcNJcuoN6M+LVIqhawXbBh4vzv+JN8bZgTccgddiDG7+sjvMHO3 + pMEECLimOIiqn9reiSZx+di/65E4S2EmJjknMik6qEjv3IDYZexBqVEqyc7Di8Y= + =5nia -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:33:54Z" + - created_at: "2026-03-05T19:17:58Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAAiZKX1frXeTkIHNutOHo7P1C/1uaWYP+k5DJUJZZTwAw - Ynf0PuAT5F+9pCvKYhy3vyDxM690AzUStnXGbxlU+VOVoSUWR2yRwetbI18fRQ4T - 0l4BW9dOjkFeHqWCdUYwOoy/urIAGeIFQkFSEseeGRvLbxL1XkwuJy5gszAHe8jK - GROp5Qm7GK4g+n2YB595Meey+GN2XMIZ9xuzHNAOyhzcfrBserf2mHN/vGeoEkiz - =w1f9 + hF4DerEtaFuTeewSAQdAtkOPt0KtYsPcjoAHEoREvjr20MldS24IpqAAMEsznDsw + FyooQwSCawtx/2mnIyT2t4jAj9K7r6dCvqP3pqNg43jvlKKVFlcKOzlt08PYtNHA + 0l4BMiLDkGbtAFzhiFct+qWQcUpHoXF/iU81rkH+o+VkhAbYKyj3nCx7zmay3ndc + YFqkBtar/eTLGFiAdvyLqvADU1hDqaTglHfd+c3PbqteVf9Q0GMxFS2gxpGBKndz + =7I79 -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:33:54Z" + - created_at: "2026-03-05T19:17:58Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ//UIMbRb9R79cVXMyMAAcyyzq2ooePsivPp1iVW8/q1P+K - 3MM4sBPgOcxjKDcNb8gnvZpXxFsh2eHh6PjKatPVu7j8M3rgHZ4PNVbZRDloKtib - hDgwxqY5XFdkcABHaoiCeFhGzXd31lqfjQ1B26RvTiVwDIeJ7WBYRl+A0kQJ4Azl - Tpjtid0a8muPPThTGdZgnLneqpCdm9ghYZP4hmaEqj30P5cL/DYfSaWIqvzPTZjz - EaujM2eSi3WkNMI1iSMjVMda6GXszzD2jWOiEZPX5gkkKIZd7jHVuttpfeROQqhu - n67LGtHwSvST0927jZe0FbCi+Wro8i49ZMgLxF/Jbhhm3Ww6BlKx1d8su81YP+y5 - 1vGApsdDQ1jYhYx1DQiFAD+ug1jkEsCp4fMpuosQLersAfV6zkAb8HaElrkVjzsh - HLiC7OtaDdIkYkQz+ElblCiNHIqHd8lDoFAaS7v+AkBlbm/3jPvujOEqbzPsX93X - Ch9MKp16/g1vziazaeLk8mX82obCV1DnzjbW9NkDUetLFP/J1AfVeUNb7YoB7t9n - tcXDmrbHxg5V93BTdyC3dF7MbGS20Zzlrt9dkNppBRy3sA8cSFediBNBmUjwixrE - Mp0W42TTQ4XNu+f9LPKUqlNfefIIO83OGVPR4eM3dLUXsCx0f+k25eBxyOETnQjS - XgGPU8Sj470NsnBXWVlycXqon6c8Ir6Th74taqY0uRj5It+Cmg6vkaQnYUbOyqtn - ehKO2zPW85wkpDnl7Jgc4kf08Ukru4gf0wuCLgoBNp6dQi3bwKVbHgfbc7tMqrI= - =6KAn + hQIMAxjNhCKPP69fAQ//SoS3uxUPBbEQEee1VmZerzHhoRgm/9ynRpqVrKvPGKeN + BO//XFOrjqwjwW/JbGU+B7/+7wW+Y8tgltBlug2EShB/w/+UbIl0yiqHBaQq6fUb + 9lnwcBpldWfQJiY4j+D3LxZ4fe3iiNG7ahLibvV7D53Fd1KN1aHDdpzzK8EFOnbO + we6vLAG4ZLTx6QEkA+1XDqaE355u7lbSgE5d12FNAmTk+5AJd93qj1vx+nMydHX6 + YjnJkXMLOnAMmL8k1U2/S4hDbHUdDnD99v52yYOREfioavp6ZhtR4xcthZPH1HsI + 8Aisl9L82z/n/O8o8z9PfFO3d9+jSoZDJuTp68oblpMJD1sEvp0JaEMq2jIOb1Mi + WAWnXLg3aHQbytsYTgDWQDTCcvpcDsOwZpjNR1WUcRI0xYzOh+aO908xwI0wRUFS + 5ynKTUnNuFaR3v5EXP9PF+RDmPlXE327fBCB9Dx3z8unn0l4NZLNNDMJ87KQjbIb + rB6bSIMUYOuijRVQFDmTUgs6huL+Blj9MzUOvEwewKU6v9VCczfB6Q+ET+eYBOwG + 8dCLU4A9RAmjv44Pdx1b8kzK7qCsG9DhKVXReXeZajXvmCcRQc1L1WQeE06DUPPy + XvIsTMe0IV2uFmnVre/lpoYEftwSD2bExBAZWeUIpGr0IOelnc2yeuBCmA7SQ0XS + XgEB8c3tmp4OZSav6qDCjBppAs+6LNuFLbP16y9mFv1utA5iys5YuDVGyTVItleX + VgonNpBVVKlEECSn0qn15qfg9fO6OUDzHhPv9MXulyWUjyWgd8CIdjFMZRFddEg= + =8m1H -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:33:54Z" + - created_at: "2026-03-05T19:17:58Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoARAAiJMk9wif6/MDqo6xHaE44iCfnAHpeF/anq7BU8X+iYuh - RN0AWI5h0fQiMbCyilJ67vyj5uxA828goTshyK037uv+3vokaYrqS7x5PPNsAn6P - hHM/+a4shxyo5T0YcOCLr+lu30FWJQ0AFpueZUpvfftPgWmgC0ZPNjHIxYda3UTK - z8t2EhmLl5XV3lMQ4K9xigF3MBczKUa/mFU5A48xFI56c1bNnVMA8VUWriEAf0Ay - 7NC71QoDYGLZExm7UpNDtzmVsVqJaT0dYisBfrQZEihgeJAdKTue4MtzqQpxvD1K - 8p4f0CjR1q47bK+oTWinmv2q0ffssQCpkCQK6DjjcQJ2jJFoMqxtJ1p7/lvdMNOe - aOtjR5jkn4m9viYnVhRmqJ1gUPNqqeX7tKa4jnrrwVNqnl0uV7vwsm5MxDiny43w - VigtthtiHm8Gmnl96Sx6iMhtL5T6q76eozKeo+OpW9S6vww2G+xJqhg4klPDV4Dh - 95Kn05RSKTwHwZLINBHE4iR6vwbsaYmmG0TQFEHVXr3dmM7M+rY9VYdi9FfmzXxj - wEgBI30vjvEO3nQiE2kZPiondcSYNufbwGnno/IQgTLQBMHUgzi1ZinbDnWs+qrm - uQ9c2kSW6xfldEVWL4WLVW/UEhpnC2+UFjJ6qSnEXjRZ4W6kGQkkJiDGLdC4YIDS - XgECyNzLptob8tbOnNyVbVq1nXmaD8EMWjeGTcEseXvo4KnJTrOLMDn1uM+uf7iX - vEo8lbyLoS3NfyFh+X/5E3P7mAexVVqDqXAKC/PveX9Wr66TxdBkzxWQd2jryzA= - =LtLz + hQIMA1Hthzn+T1OoAQ//XoEfVHGnqbqZbYHmOPpHpdmDvO4E4A9HVVGwlnKjuTj2 + DQB2naURGY2USL1TSQ4+jO5Bk98f2U4+NIJNNq5n/vF9Ukf8RT0QnfD7yBs5sCeB + XyDuM+EOYUANkJl0G2YmJayVi3LhNZczrPJTecXqSZHxKCxKow3bzzc0s0jbup6k + co/DuQxuRqENknJOGGEgMhVnlceceiGtuIEa+Z8f6hiCchh3hr2xvzncPQ/73fZz + Y8421wH6p40cB8a53QjmEFXkhmT1UfcB2zBKvz65BdENkXIYAYX5nNFiVkqG3cEV + GCbl4giZryEk2Uts4llHE6khcItGdtQ0YXxgNwGjoRm8w6X5WJqgRo2U6O7bxQhc + TzM8gKGefJiOYOzMxGfapXrukJhZe0XEw8YHsZHVd9V/zHICRHJIxYy5B/SRk+Ue + TwnKbsws7FzMGfavAwfiZZVa7INm9cCsgfLXIA6gxv1q9vyeWbGcqzISFCPm3ogU + ACK1DBPNNfUTKi64oDxUB0hRmWSLrc1+Ny9vz6CZp5ly8kfdIWPi5QAZggRMlxTf + ke45XyFfAu2BMTt0a9/sRWkcfrUt6afla047Y/bI1B/8p9tPOppjsDxHzQUmwMQx + 82NzxeAasblXEG6XAtelnjr6LgKmbuN3ylixHzzl4xkte98oyIcwfdbJ/tanchvS + XgHEjHXtiEMIUW07s2VC9Proer8kDtdofi+lSvJol/ag8bFz1m3G1qkFKgJdeNFJ + qKCrbSDV6Cm4XiS1tPUzl2LRlps6fKbSWqu5e5jIMcSVIWeVrUzcJEWIbAZiolE= + =Mv2j -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:33:54Z" + - created_at: "2026-03-05T19:17:58Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ/+L1Rw0d0epfl9boheE4j2RhqlHnJJHAgnBo2Q2VbBiZ9g - 40QQDuxmUNtMVm81bLFX2coFVBZtUQuxKieTh0Y6UkEg7sVajrE9+lrhGuF9w3O5 - 8OigyxDDvqMO+mgX2FZxGEsj+8+ODleZp3CbSHeG75/By8ncmXhGmHcS5jF5P8k+ - lQQ8hhMPfduu16jkQh8nMKHha36+D2pDtBzJOa7yKBMnlV6S+SMmJqYm2XPYRuQj - /raw/DC8VhCHH6SPsyt7zkSoCWTfYV526N1e2ygAZQQ99aYy5GtiPTBtjbZ2pQY/ - QicC1nxQLwy3b70ali+3O7F4lbM77g50Bd05zgJKrnf76KNGHLSRUyqSHaseeLOM - 4/7UOjgS+A2QDRRd4B3kmYSC7+TF0JSRB3qA92YM8s5yToRz1LhSrJpXcpYom9x9 - Xl1mZv8CruP+bMFqOozUdqpv145+Fxip/zFlNBZ/XuNioQI1WXz5nFd7jv8g16Hn - NrlIl/a9NHwEwDWwKnIHuUTUldU5gs3aVhmGmWEg/Tp30eXU4JQOgOeiFtzFHVDB - VLcB39+saR3EYedoKXbKx3A6NelTiFZUPIrTn3hmKFzvG2BvjiyhdvqgOImw430Q - TvHieQ1lXtkD4HN5OyukwOt6LvRCnkyYRYosXP0ZxktC18Hecbyl13jNvF5PRxTS - XgH4RBi+dyQV6qpnl9bWPQFLteVdy1Mfqnr0+nAiDKIFsHpveL+UO+gPYyhy+z9v - l16cxZB2/UsDtW66EQT7gEfhOecVJJmFYTWeejEewhoD2iIPEeQkhjKVZ3AIad8= - =krZk + hQIMA46L6MuPqfJqAQ/9Ejn4gTCYkqb22bPYxMGTCVNsVMT6/aaSsRO19ZPipH/S + oFSMA6c8RnLJwdCdjXHFO3sCgu4w/h0MFLASPdhRVpJqTSZ4NrHn1NJN3w3+4OhO + Rf6r0R5UfCmUmTDmy3I3o6GmnAlWSVWQ1O49+CDoXZcrOXB3X5C2HZvfzRpUSQUR + dprf9bKuVm8Nje3zNKh7lKNdQw9Y1Aw69IgPXuOvgqnTI59ihHZx8kw40ZSEYRyV + SCicYdnb8RAKzyoscKCttiVgMWB80DZi0RzILE8EbCZsKoOMlTqjguq3sTr1vfQA + R/RcaGUfX35ocVmNSCZa2/CxHJy29iVnsNTLNu3f4KwDYlaqob9eMtFjQIfBkE2U + aczx0VgUjiN8qAvsY/7CJ3pjjsQqO1+M0LRAVIoKmgrQy2Ez1/ctKmdE+NluRpxI + vHTv36VzU3zbao4O/jtKnGRvh9+nUuDG6EbOaxeBHpPxTRpG0fH1UtnQk41dcJff + 7wrQqTirH5Pe1snP437B3aJeIrBhCnBIz3TzlSDz2YLy9CjNkDwm6fj4p76fIobz + 6+9bKJxDz7DyTrJbpclVqZSnj+fvfRxcae8+/w2hvu9N/O+JEbNiR2VkIKRCeP5x + sVvq1hXNq4RPrP/S5RcgMFCIbobCJVebMjYY4aLWGcVgvaXmPGV0IjTqWX2cWlnS + XgFi3wp6FdpOGl/+9xD/ccIHoJsWxwN2Rl0K6dXCJ6WSqfpwuoQHKxYGxY2ZQEt9 + dpPS3gfomE3Zcdvha3DL1DT3WnKz6LkPxX2lXivpxByMuGuhTa6PUV5Sk8RWF4A= + =bUs4 -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:33:54Z" + - created_at: "2026-03-05T19:17:58Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdADA3Fn6UJo5Gv0UKOh0CMNTR8l7ulyF710naJAKvVhCMw - etYS+EYRNTKHZ11xNgsAj2ANdrmLc3EPSp/yxwIJA45nJmoRv6DmOG4EcWMFeRq1 - 0l4BsVZ2JVxZrgZndX1LICZsfB8+nK3s0F37DzPT3Uj8DXXwWJcfa9yVj5sq+QD9 - R7+bEeWviEmAispRzIk8JBbCWAix8Vh/K6OSVxTrTDT7Bd86db39rI7d059AhmAJ - =AHHl + hF4DQrf1tCqiJxoSAQdApKCCydvf9aamEJeHuIdVhhpDtrYZJ/4Y5zKY37ptmnIw + nuAs2s7ebWmNhgvDmDMZDzVcOjhA07A6e2yQD9/MXLiQCfofgy+rQWQg4vfV85Jb + 0l4BopjkuiMSu4yxkJLWL6k+pVhj07Ov305SPyWrpdhxT/bTzTeTzMbKvGPA0Yt2 + EebZVhOadGeB8+Oos6o3lJjOsVAPbFvrDTB3FefGTC6zg4g/8Fo6tXrX9mm0fbqk + =+Cbv -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:33:54Z" + - created_at: "2026-03-05T19:17:58Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAjkQ0i2xzpe1FyvzSTwVZ9hzM1A4RDRNoW2lCSCQWXXIw - 9QnbfYKGTQFHommGpe9WzBtv9sfIlwP22Cj/mamZ0WGehwaJclOhalEje5zUl2tG - 0lgBNZi3V3DwAHP65uVx5oVpJDYcwZgpoo+gK2mX/lqc20hxaPPp1uL50z+2K0XM - 85EL+6Cvav3muRoxCTBSzzZvctFDxiW7FV3UZQ4n8N5YgU9Wl1Eljh8U - =jmmx + hF4DzAGzViGx4qcSAQdAvu00DX6TGAldLVdAEobiGZtPtEIZ/mksIWYLcSvMF2Qw + b5aU5VAqVRqWkU1iIdzy0eCdeGTUYw+/Loo31FDj/1DMAPl4KS15bqcq3GI6a7az + 0lgBKHSJAqiqQXvyLaSPGhAZinGvaMi3BHejt1FdQJQMwbyYA6i7+VvVMTQyCprv + hYlyoHOzs+qbg/3nxPbRbn+UGb8WuAE4bxezCepE7iyMhVPosqz0XTnp + =rGmD -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:33:54Z" + - created_at: "2026-03-05T19:17:58Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ/9HcFMexxoeR1m6i48c9aStp1VGRqhUvKWBnUmDyfEMo/I - k1FFmXLe25lBYEsqPFGb3tidb6mOXfac8eQRJfVOaYfqbl8xT7e1awEGjIEZjevE - MTmKuzd9vVv90/Dt72jX926fHTHUxQmTxRBlHM0k6IOtSBnjK7ERFEB1ZG0fZIr7 - J1njkcwUzERom9QrcUifdMYznWo/MdUhzVsqLPLt/vnMHwC6AUIWjqona8FpkGXk - 89MMi/NfRnn7oSs8Q37xItPuXGDkD9vmtPrQJM2V9kSTKFYlT/wh+wM6LXbduoE0 - lF/fkl7tUqqudvSUw7gTviIaju6qGDOJdYgNl7WBTu1VdAT5zdDRwsRVPjI3TYYj - kxNOtR89+NfbxWQ3jVULl5JndpSKVV2zooAD5xh8InzxSPECynI0iB2u1Kx68q0G - bpYBoNLh0RbP+8DJmw1OqGZ/TUjWpMRLUM1m9+o3kyUiFoSui63E+dI8QkMyHVrP - 9nH1AsYWrAiTqmw4c3vOfe5ChYLAwW9BH5psPS8P5s3BMOuZ9A/O6X3bKUbaPpzI - eygc/QzmzvR4Pg/dF0b1X88ChbXHlj26itAf92h/NH0vt2YiMbYo7Wr4PtzzI8gY - BKYy/SZtvWkw2Y0b4/uaHwnbA4UOPGcqpwZpWUlPqMgwAflIPbsTuq89XEKqFnzU - aAEJAhAnPxAHinFuhh925qLw5k3Sci5FqvmzCUVVw/KN2sNmC2CKLB3DRJ3IxhtO - MzTftpMwl7pwncjDEaaAhvSm2MeOwgGZGEI+poNFT5IvSA6eaX22cpf2DPnOSxFE - mJX6rP32S8RO - =fqm/ + hQIMA2pVdGTIrZI+AQ/+NKJgxMNvqp6rZsOOroADrqmEkfgvK5x9ULtFWUaES3q6 + dSI/e6CTwdZtRqzchO/H6SL5Lr/E27xQXR0i5CB3ThlX7QrW8VZsNW0Q6N44pty+ + qitPY9FqKRusNPqHrSz13xBmYXMtMtSyEQxWzAIHtKbaqYBPpAbX8t5axz6IDtEu + lrsP2m2XGIiTM+8a4JFjKW4YZSPejU1zWfp0PHMEqJDs3+iuztvNG1//VzIP6KXE + ywnjiOfhfQRFubaRI8gCSq+nCkjvWR181LW2pJ9ganGJtkf4qIXpnrUnGuQ7W1Yc + xxTNFtkG4Xdc/WpX13j5tcZ1eETyNw2zmr472sqXHxHdRS6M3XA8TmvAckHG43CR + 4/pKuTErTUwuaVjU4GgIbegpQMIcKd2Xza0CFQpO2TTJfXa2RdsRCPKb85uOL0KG + TbQ6s7uLjpfQ7NSBG+ROjhfhvJBoIvlXKIZqaBnxY8t9TyFfDFQezPBi8se5CYtj + DIHU64R/u/Y9ZMkdWRoK78qYt84YV2bRVIFPmg91EMUBkUgy1EaY7o2ZJg0c9ItR + pSs7qlJ63WrQrZrpZt8dCz2ZWQCngMGAaz6W/cjzIZNiDCMLpOVL/2kQPjUFzdpy + 5JpRoyVW9ULcbLDPLCOAWBIQwTRHV4o4DW05EqxW/nrTa0gpr15k3SOt6GuWpsrS + XgH/0GPrQDUz6ojMYDsQEmtuYLPT4lDBRZK+fGzQ5PQg/dNQMTKSg40dBjGcwCS1 + 5Alz95N9bHIDun8CPGfzUpVCO4DHzMLTCVWAnC7tfUqEczFLK2GBzpWUaaqq0rc= + =M8S/ -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:17:58Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdADBgvxBFD5HPZrsJohKTA+S7g+AT/ZbJCsbwsSYUJdmsw + FtP71fKYk5H5iW0938L6bpTR2mWjG9AzTNEXxpkymkagmoTAUutC5Xh4+qVx6OCp + 0l4BgRYEm6hRR4q1DlzEzBCqrN2W81ZYjuRzrCMkNKhvmhWeqvYB366n3wZBIlsH + g5lNnMt8+hS0bAgrmrfsGH/QrhDC4vREmQJSDRVFmoq6ka6HLtxlQ4tR05d5p2cB + =1Eoe + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.10.2 diff --git a/inventories/chaosknoten/host_vars/zammad.sops.yaml b/inventories/chaosknoten/host_vars/zammad.sops.yaml index c32045515..aec95b69a 100644 --- a/inventories/chaosknoten/host_vars/zammad.sops.yaml +++ b/inventories/chaosknoten/host_vars/zammad.sops.yaml @@ -5,204 +5,213 @@ sops: - recipient: age1sv7uhpnk9d3u3je9zzvlux0kd83f627aclpamnz2h3ksg599838qjgrvqs enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBMbW1DSEtsWXpnbk01YVR1 - bTkvSTFRQm9RbFZYYlV2NnhlZkRGd3FSeFdBCk45czBIWjltUEN0dXpwTEVzQmpH - RXc2SStpUitENnM2TllNR1B2ZkpZNTgKLS0tIGZLTE4yRkdmdGliTTBEckZjcGVD - d3Uya3dFVlZiblF2UENIN20vQ3plK0UKy1i1Qg66U57mP826CAMQTnvY2cl0XbMV - 1ItkNYfW0Duug3GrD3PdYAoVNLKY+63VmBH/6T++jlu/WdKtYxxMRg== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBnM1FCMmNRTW4wUVZNV3Bx + S2Z1SlNvMk0rZkUyd2hEQlhqWE1kQjc4NGdVCk1oaWYyRDJZS3BENmtEVm9oSDdC + QzZBR1RlWUpHOVdyRFJtZ0RHdlE3UTAKLS0tIG1pcCs5N0d0QmdYWWNRVWJCaTQ1 + a1dKNEJKT2pFUll5M1ZLdHdzUGhCdDgKstRcbgqIPcibYXvg8QoPisxoJatnUXPG + WAyOaJFjY3FjwZldIacUtlwa6a+RDQ83U0Finus8BIaedmd+/fx/5A== -----END AGE ENCRYPTED FILE----- lastmodified: "2025-10-20T19:00:44Z" mac: ENC[AES256_GCM,data:Wb4wcEmSj1n5dINoeNR3wyXk+7Ukmw0EivRk7dOJ2jpg80LShB26nemoH/KR38f+9lCRG95vfX2LHbK92/yzJnrVi8cbdmR3Nbc7EvJtwaRM/tzuSR4KQXtt7Xh1rwbJaofdlEtF6yPvjjKLHsioijOSDwlI6+aZy2//Xxt21+g=,iv:k+daocz9naGwdIH585zR2ilN9PJaSQ3p7hsQWHkh8Nk=,tag:8ljEybJqu2dFdIOvbO1JOw==,type:str] pgp: - - created_at: "2026-02-18T08:34:09Z" + - created_at: "2026-03-05T19:18:42Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ//cgegs7OKbkoC1vYNMWidrqkHxt4c14KD9R9nN/+k1jL6 - dUPIAaIGawzwH0uohCptNjpzy14biPV3m9v2CnyYjC4soHukEtoTbs3np7gRXVbA - wyPp9sIkKfzffCykzY0f5DpTUQzuENVr6FXcpOCOqZuYmBhcp6QGiJnYReR+w8H8 - gapGJUhVZYfTOOrca+udaexpNBtH20JCc/yyp3U6r0VShUacUGEAfD12pOZuIc5w - 51iZBi2r0MpSEW6Cv6B4kPT0QtH4v6ISdQK+Z67MTeGWQHOKqfc+klh4mVLEaAxf - UqlALV27pGbyF54y4URqoXNQUbpdX4PHkBB3q6vrLK9NeoT7S8R9pUX47M4m+FN1 - xvkMoNse+TPPuZxZXEAd/9JnH0KiDWUxZGrWMF1waim4X/Y9jeo1YIxxN8ggYBsY - pN6NI4CIt2b/ehm+rsG69fdikMDvR9b5XPdi8viA4NAJwDU63h8kyk8zZu9IcE9u - xiy2FYPtSjQQZQvyFsZJfeF3/Pb17OCMVWy82GZ10WafePSK0m3dmD2aZo5uw9ik - AWHSRXVud96U/tDWtVVK6ctuxtKxgv02k7h9mznsCx/e1nnuE+fz2mkjCy9Tv7wj - 1AHI5wVvsPucqCo++HTQ2OLmJ0uf4x8y2bL51YLeQQ4gDBp/sdWVlmzGIpab7d7U - ZgEJAhCwoyj+XajP2AdgmN3JgT2JXrfq/mdSEZJmR2kNU6r+Oh4GkINkQNCK6bCb - MSdi0G/jBChOf+ehAvXFEz/Z8IR7KmEO/m7ujop6hD7eSEdtD4UMKaHNJubd+QKL - LxA42j/K4Q== - =Mc37 + hQIMAxK/JaB2/SdtAQ/+IRQ1BIhN23+oJOZdVKomp9YYMYtYD3WSB+6NxbEMTd4s + uqcC3xqGAyzZa3w5amAyejb5RsmMBk67AexrLsugYiNsqJtG+ngpxMBm2En2pvUR + 6kMhszOAwpESqk2NBTemZ3vx7f3Je+NNynPaClX4Wf6Psf5bDVYI9XFh49z1e7KT + arFb4yormCA6dpKSQtw806TPzQWJjcOABMDnE0J4viDsC1Ph8hsQFHQwhx6N8170 + NELVXO6kwFVDBgAw3efqmlV3sL15rzjFfJWJJoYA6bxmm5AwkAOwR9kZHnZS/xuq + eAw21iHlGa4CE93hb2FUzJPBRXFw41J1iF+n+KGL6g0tRuoUeWe9SYzBnX4B+6q0 + e2ic6aIKnBtNTploPeow3DYTIBj/DtFglYsRu6MPF1sDfjbH7Ducd6GX+NO++0ZT + cVzeRwrkERClCmjeY6v88aDJdxXVUx3vCx+eYVSPgDFnzlBa9o7oWbUahMw88umB + 5R4t1UACBayAvkihCZlc4blYLqFHhI47OACVvU15Y5XfinHZFp2HCIly6hth/nAm + MAv0Ri6dUZ6yszQ6CCWhguaHmO1rYd7SbrfjJUu0aqolp7UMrIwaFSIdfII429jD + W4quP2Oy136DEuZnJY5KNsdE3GbLQwJHlZYfmEOb7xYztiEuPUdzwD+qYfyCe7fS + XAG8u2rjpIWO795IBytO0jfe4SDPxrnrNF3ZKxZ4OdjlsQjfyuEu3H+C1hxK7gdg + zt2iErAs9HWXcen29W9BOgOFrTrsnhp6NQvsLOLfiF8rrI+8jowjwUc1yq5O + =twV0 -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:34:09Z" + - created_at: "2026-03-05T19:18:42Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf/Rl3TjbgLhEuKjClCIeLvF5sBJONqpmt88R7RlFVdumAi - 4CDjn9ZyLEF97vdoCtEcaa0Uo/LpP86BEvXIOg5OrVCXL0/E6ZqVRxOaGEjBKySr - z2jU87wI82tWAsRobNnufEUxGW+natr/pNsELnnXdY48eIsVwdOrfxsL+Dxo+O1H - m0FmPMIXs7Hd41zM0NoSx2n7TQfBfpfv4q7I0W0zzQa0bq2j29T1oh7KgWkdVZe3 - ZSQcSGug+R4+k8ema5mSTi/Acrjj2QH2YzYjlYsWfQYQIU3uTRG1md2UzD9iENS6 - mgqX0ZqDxfPJJB20Gk0YFQ2dtnqN6OdAdxFCJgLkYNJcAfR3IThwm9ypMYL5woCr - jzy3b5628Zc+hzZ//LWzyILVDTJ87jK7n/BMdzFWnMtFpccOe48ZHgFP7SEP78Ob - 8VGcrPOizVgggHgJemesRHQWbBC6Q779Dn6MrFU= - =3nSg + hQEMA1QflAioE8i3AQf/RVLgldmndorq8KeSsQQPGvAsUayjkAxEUTse9WpOOBsE + k4u1fee6ZLKCGJkUCiYfORzoIcYzpjqVnMh+atfZKyEF19/MCtKa0VcxEQECfqr/ + 4RUIKO6MGki9fqPxYn0CCfgjksAyRDf03KTMvX74A9tYffE7X7APcK8LvqwIrz7L + ru3a/aJ+HqOE3O8aMDLyDlYHFQZHfNcJx1GrUuiHo0LQr31dZDgnI4YgTyLSAcWS + asXjZlGWBQqxr0Rq+9bFRkSmizjq9GafksAPN2Wq53T+HrLMc/PFCdmHwI90SCp8 + cpt5Ld4xhP4v8ldY5mbTc0DEFB93u83LMQNts4wZPdJcAQXaT8yU1SKipEswArbq + 6LEOj4B24OPmDju1e90auCVc6Q4zOjvjQckmGBFgpVVppjo4jRVXHF31FrYom67l + oQNv70kw4diwSUu2BnNfWlrYV5DHylwfmSMrMEg= + =0g7m -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:34:09Z" + - created_at: "2026-03-05T19:18:42Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ//as+lWnLxdIbDa/u6jFsZKmjBBBravvYZ3HVUTTruV2GC - SSUrwn3uB9YxZJ7J0LkFaCe5HAxcsd93/+pbbO20A/cfCuCK61bJryOViRtNWsTZ - eYSd9alTEF9uff5J36wQbMSJRVcE3CR0tU+XkLQX9f9y3yq8VGWaNwhpSYzAcejT - VUF6hPkvmCSQ/IVTQFcnty7H2x1glz2kYUGLwb6w0qPBQ5VOw4DGHYWYtK2J+Kh6 - x9TqQjk+xm6kKRwRcREjL8JXHck0yHeDnn9LgwWSE5NpLofzf+vMCN3rIRCKPJWa - vFNyfPN9AUnOal5L3V5tYX9Mk2kE6q6f60wLohy9QuHoSGO451tx3bfO63JKfLc1 - dVF6q5g6bTgQDyoSizr6VbzugpH9MxeXoWjenxyu5Fh85coZrE+xeXNB6FBCsJ2A - LRh+8Dvw47BqUxA7UgVQ00FgnUGcJ7gn0cpKvLKanRgu+iCxT1EJYbcbkh3UpPSV - wLFzv736TZWXrDvCD/yFDf65qXR6Uav4jFN1NhBZxwTIm39ClQ5k9r8BDkbvAesi - H/2586rnK+EJsvvXdigzJ87PrnXzs6abx1r1GUYE+aNbWi1x4mrP0vmAzxkglMTc - HIKk7WeOStHLY45oigFFrUdHels2SDnTk/wpPPjsjiHNPNSY4iUQvsc2hB71ZR3S - XAEmNJkaLMqZG9tCDaNSzci3wFX4c/G8KOix6mvc4qPs6QYNCHVV0CKeWTWyEBbo - rWCb1GnHqvtVYV2aDLBwnAg5JYuHFgUyXnwnOpW7j5S/gazP3gIemq9OtZhL - =K9YN + hQIMAz5uSgHG2iMJARAA7HNBSy2s4wO+M+9nPtX6Jbl5urD71ZiUR9P0OmTb0tio + fFnvVG6PDbWeB+itZkCkFgKFuNT89Rd7C+P+dBdF0G1UYzwGBrYETJ9tuJv4NoUZ + aaC7cez/rd35wH2GLYYUZbW9pz4aXHU9FaIGyGEe092bIkQEli5+9gRPoN7kWsai + r8tk+rygRCXJ4dKZuVPRLYLND9HZAeSHEXXInrwru15E1k7m5s9TmjC9yhxI/5Fz + EpM1oyAIfQFqYt3iSujBgZNKq32rpktfPGy0MpwpZNSGLjwo4LfIUIIbgwDdDgQ2 + qJIU+W86WXBtlfgjge/5dmQ3JQ3+y8oMR34ZpHkBA7NCQ63kTzQ/0sLVg2VIUuRS + ZDzvsXFCWmbGraiBwNQrqddB2GKmgbWGN6u3ov6RcfF6voKmS851yEfpCbdjOqDC + rPpIMQl7Uf2JVwEdiXQSAVvehZ3uguusKMKKLQbNDQ4lfmuhiGfCRXHX270eeyct + M1RcnnpXI5ZwYWZZ30FdaFQDSBZhz9+yBepcmMDNACTMJzfuBOqI7AqR76pfBl2/ + 6JsgsP/fAANe4UIPGEk4wD3fzedvDUEiU9cg2RHpsAzP6UZrD39d693fnrcrvCuD + 9Gjr/uxjJGnPxnvbUYjCEYQefuHyd3JKG4AgKxeHw8as9cwvyHatL6QtrvptlxjS + XAFQh2Vmgafua763uRzXJcc2yfozRgH3De4qjOWkjaCzkCdnhbGY+iUE3DhkA61x + WAPtDDr4DwyxqKMVtqnTF7r91sNON1L4x6adWMkQlAQ/+FZ6tHRoy8KUnYz0 + =6FmT -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:34:09Z" + - created_at: "2026-03-05T19:18:42Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ/9FXM5WDh3GCo3TABfpYsaceZuM3Q4tNZd8b6MDfWrSm30 - cn9icry354D2Kgdm0gr9ld6ahUZHHSOAlZoc9uGwR9Z091O9PRqWBZ+CrAtYJkQO - ywpZgD7uuuiJ1aWr8kDsYyFEj/zo9QSPiOlWXffWUeoiyYW5tqug6yxDpFZXSN7A - 2+fUW7aU+Aj+26HygAa+aReoImQwjIdFrYPOdrNCiJKk01xSwwt0ipePxR3nSSbv - /0cpEx1wIe2ZqXuN7IYNUaH/qw6dqcbFTke46OHLchbljulqZgOkTNqwRCP76KpT - 4KXj6ryRRbuHlEX7RkBLo8VZFqcwUQuBIAl62SGUa+lnAJtBpImh88vVnpI6GWcW - 3rni5m5F+BZpB5l0Hh0HzpcyRrJyy8PnU/sAxJ47qJJzlgbIEoG8lFZMkWZdyDdV - N/Sl7vIekBclK5vbo/8odJ6FqMaqDGDcYtjIWVZOyB5pYNyCiwHh0IaVWJbvYMU/ - B3bTEuVvuhL4K2AZPLhPAIa32+k4olXYdOwAU9oHBCUWy17MJpumt5ortHvPwhK9 - ys5IRUi+IIu06ALX7+WdkZVZZrfs06CN0Xfp24orZASZ8m4HGQLluJQIkXU0X3LA - cXrdKFanRV3oT5PtAsvEe4nXmjz7vZVbZX4wdiPrnHnvmUKpHV6acCAEWV/VSV/S - XAHdRitzmgGoh37oNHrgWmfgZ0b4bcxw8g1vqJ3q8e24MCuP6XHsFTDuDfU8hVv1 - IkV07rRZS04v2SVQA/hVN4Oz1J0LVjrJuFuMQFq2oaZmO6tk4AmrH67U4gw5 - =bCEl + hQIMAw5vwmoEJHQ1AQ/9GWht1c+mn7HTtwFD1408YQcqkRJMKgQIvisrwab75IWl + 5M1XlnvLWJ+ubNNx66iFtLZyRzBD73SfobrwuPxkQHeOvdoUtMSfM2We2eoel9cL + 3UENtjqobFoz9+XI4Z41/J0T+xHUqzTGnIpsPagDvgRLcl3YaG1Db0WDbvFaA3by + kwe7TNhXi3Xl1cqW8pVlB7Sfbw6ca/NLq5ceQbDSR8pSToP+cZEjAGaA5/+XaJfA + 8gek3iorkT5Cmkgi90lK1wrGsg/FLX/xmUZFQaaSAWh9byYmDrGtt5i5jlU7sKhV + Bj6j9d3jCixEB0B0fa0Z3n5FrTTkjLA6zsKvHtU1KF1rcs88kbe966ZiNdgZSZFJ + yOqj5TXryvYgGTPODfqMwM1me4+XVALlas+TR5gdUOJ0lQs3oM0XZq842VREDCpf + yN3yK05zqTpLVf05+g0E7uqJFgUQm0bIURw75OYMESx3EfC1LKIb4EIden4Srzar + JdlPfjAPFm7gwZkPzxao0O+FADLN1JuJjQcLT04Vg7j77lGBspDXD4wPjiZawQsa + HXeJOblQV/Kfxpx0meN2ZVYHleK7+fAC0TzhLB+gpzcRf+vlvHerZxRUcwJKlzfS + wjorFYcqz3uYGKFjWLAstIZP3fewhYpNLyBSwf8x0HjRn0+g6Cn05lleRiFeCEHS + XAExt14BEMIboAgIVssaOmwCU4BhdGDSinS/zfXfaXQtzo3wLAS14sPzcDAREb8B + zfKeeiW/o2cIA9+s6SsOzBsGqqQnlyz2DtuWpYWuWEQ1AwL0ONfAhXhHsqzS + =797j -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:34:09Z" + - created_at: "2026-03-05T19:18:42Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAbPGrjBfKzvjQf9Yz3EDsP8gzKnX/mggmKNds6HDK0SMw - ewuTLdstCUJvvkqj5H1B9TpK9ewyxLHFuaRrvveGr3obHChoXM1QLJkHTrX88ynK - 0lwBtynSHizSNMzzt1SFvVNtUZ9x4IdWOBiB+Gz9hRzCRz+Odr765HGJTlKfRTc/ - ErdQr9LimP/I5kkBbHLU0CeaAY2P0bkVeyZrbTlqpMiwtkrSBO6TSHFHPwb/gw== - =0BVO + hF4DerEtaFuTeewSAQdAlOusbtucDpj65BioOXpcBPGCs48XCkvOWtEHNb9SVE0w + PaBtelaWfFxOIheeEyzdgHI7UOfX67hTZnCXHM8nkoyQyj/q3k2Okz3DuNwTN3eO + 0lwBFBNCstD8muzNN1sneYwKEi5OYFODEAVZPLYI3Hqqla2odibOsPZbYTxELBQN + EOfIU5lQhuyw/QltnIp0Fyj8ePIMgJ84hNJ7z3kT9R6NgiDkiKyu1tdzmNjGFA== + =g1oc -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:34:09Z" + - created_at: "2026-03-05T19:18:42Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fARAAkNm0w+6eq0N0N/ta4MhlFCx3xeAGVpjAQK1WaWlI6KW5 - PN4ys1uGC1+f1aZUgJeqz8+wEbKnAs5FYZVndsPrpwHp7Squ++2NImX4rOSNIoUy - 7N6dtrLOFMZuavA7x279113IO4AlU7SrHCGZigXHa4T3afqA56dMMQpIZZlKzPkJ - 1I4DIkRQz5UnGnETNT0+KEgzukfiFcFm3u9tYZO9vGh+c1Wj23tzVi0tby5HW3pj - /negEOcTn9D9ynyD6ly3tUkpXY9kJ/Yho75/Mhy83EBDWTVRenZ0Z+xZyTDQcRIC - m79zh3gXIIhlSf0VUQx7qyl3GtiGH9ZKyi1cMP64+w5ef3C4ZTpWMd9AI8CJAru/ - a5VifXEpLgspQWp5cpXwpvfnWiO1hqXTqfOPtDzW6PswNLN7HJX051xJf6W30MdR - XD/k1nY73+d38/3Hkplh3028P5j81DLxIdNLwEtcZozczJyktrFS/kgpNDgMSoZu - tcypTmNG2D2XiXJ5pL/aJrt6a0hdiPjfhdKlIeN4zVgzgmUOAay8zfn1vStqE0WD - Cf7K3ukceQZi1SpYPmvDaiYHDzLHbzFSAqRrFTf2ThszdTrsXHVfgjEBt/nqOxMw - hfqe8YpZvUsCqDFg3JHM012yp9HkFFgWMvnAx7FQPZpMXRPoWyhSeg1/m+cLd+jS - XAGOvI7Y2bfuIAdvOHQRB4fQG6lkvYx7fw32woIg8uTtKPOF8XvYtHRfgMU8kAmw - hyKRQD5CawZ28HR5PVwdSPbhY/bu7VZhsjXw67xrjjyu4vwvv898mFO/ibv9 - =tCdS + hQIMAxjNhCKPP69fAQ/9E1GBu8xzxPVYq+eGzF7bdV3hYI67pcESdXQVsNtRkLUV + p+dYltU+XKIzQXRSTlWQ4Ucapl1Yoq/K+ucdiDSAUQ4WeVxv9mdSxsEVtxRPnu/4 + xXFlHziENk+6uMcNIQrSZrTdwL3Uzk2zdKAAGpu6nfK6LoQQ8n/h8Vonnzy52gIO + 3BSWH5Tki/N+clSLRN4zoxuf2yrxU2Rl3ARdC88gRzH+K0FmzVQGTLG93sEpB7kp + IHHzotTwWI7VxZCbjkotUXqBcAW654axiPy9AM5yNQTeInUoAApZi9lDcZqEkldN + CGFiQoSydWcmC3SGKRMqBeYPWIHf/+ymcQxK/tZMFsHUOymqU8WlYISWRNhJePPD + ew15097QjD9bB7uyFmOCQix2ic+XJis9Lg7po/BJ+znCazz64Dmv3J1KBvPp5ucH + Dmfcn/AG6esMIevspp9SyMCkPC6UjudLltFek/H53he+00owSgyUlfc5eEpISRDD + +JHxYnGakQCZZ0jilen0MN2jFM+6ICIW/BP95aJ2qRw7ltZQjZW1x4JrZRN+FoyD + RYNMSMDezYiSN/VEdA27tuppu/Rb0rU/K6Cwz3fRt/YC+P4uiFiLipsJ74BcbEgR + PfCMRFx8vOA56dHsHeU+WOIH50S/1/easekia5TQklBOOWdK6DB3Li4u1oZ8G1TS + XAF2lZpOkZTpbIhWjV3r83erA2P6VWvnt4EsjHhxXdi3rT41pNv5qOkPhFVM0SsC + Hs8bgCgYuNQDcfNAwO5d8LVuRxOUrf9jnzGd6lLl7taT2z5QbiVh7oaT7iqI + =HkKx -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:34:09Z" + - created_at: "2026-03-05T19:18:42Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ/8CxT6Gy7QLCAu3A+42G75OSSmcJWzpPVqdMolaxORjIBf - i3tEva2AML9z4p5TGC/bYZBrnOwO3jC4/ABOg3AMLCP58fScUrBEELoZk2N8FAAQ - vOEXQdBgXrSsObPYlVMlEM2N74jSZxfWpss+KEhSU/ngXbsh7OJZ5R/YBejgbdZY - T4vFAoRwRQpv3DK1kUMWFuGPq3f7fuyYt1OHY0dipVZKZ/TUBsmToUgnJ9MDsHI1 - 0FJ8WiHaDOcW3w9lJShavYozw6QYZhEuRwfOn5F+fggmZlIi/NJUNDmz1E0kXueK - AHqHM5i0X9g4lRX4kyoB6+d7n5N7wPv9Kz2+/wfIbV9XP3hkCRpXdqDvOGaN8rOF - T8EGekLV/8pIDfSNOOc4HAiJzanbnrNTR24i9/lg6fG2L110WarIs4J7ZaID1Hak - g6QqOb5xOQyePswL0aj3Q6L+wSL7cFUHwSDx02CpByzYphMCRobtHqvxK+Gt160n - Z2HGaM8Bw4rXycMsCunUFn3OHduD+ckSVuJfJ+mZLH8I66Xim5kRb0b/zwzXtXNn - 0molzPQxyZMvD1xKbSpjOfhbpgmkwy+ZxmCM9mMQw7oKPQJl6B1M9/41SKtLMLRb - KMMFZVOG87U0IRiIzy8KpXgaMZHCKa6cQocjRsdMLi7YxjND6RYHnIk37MHq0QPS - XAGz9Opw7xUiYoZGTzqsLdN9kDDbsc5uAXP5sJ1ZHW8QUKppneh2ayL7kfzZs3NH - 6SpCPOU/E/xc/LDXFpk8T+MBmG7Rh89sjrzQqX2otItXSQ9rfC6m4bWnRZjk - =09b2 + hQIMA1Hthzn+T1OoAQ//QYbwswRKsQqnzHiUXc7N46V40DatTuwXF/VSITt7O3kx + PDjZNR9n8UBxJKsOZ3aYdJjfvEp6IpxhlKoAz+sX+a57MmaMjbhpIU5R+IP5NMfH + 8NyOPKsRj7+IzAnFar+/bnAjKtYD4He8Cc9XDl9/kZNkptB/khjv/9ULXseOUzlS + qkizaQlDGcVBrCJHM0B46lrNBn9J4WqzY9KMXVAyQICgf/4qpnu0QUulhElD3bSq + 2KSoLVRExkmMueGlzDAZfvKu6VNWd3CK72hkYdaqQa0Abl2cXWUi7jKjTaOI23IW + KNd1ne95syTWuY7mQATDxnlqmialh7kl/LIwc3TeVp0kG9iEUvS5gEJuzDAYgQV4 + RwfRgTPmkc9SVCA7VAzE9QgE1izhVq6H9oAcHEBo/ON2cCDWsbrQDOj8BjgZTTCv + douK0sDYmSLikHMk00bELJ1C9OFj58oTNoWxSZkywmbXYFSXb/tfCD2I2FGJKthx + kPIKpS6CQdbfOIOs46RaVE6ZmysB3D3XUYdBE6TnCxnArUmzoOpD6f6s6NYs7eO4 + GBZEaWij3pHCxa3Yz06ZpwfRHRkvxmwu6rPdO/kLKrBrhQ+8G+hT/QCrNreUc5qm + LGXA0vkW8imt3RMNDMmXl0NqgLRC9CEq3aPepxyVB9TugBqhpjW1qP/jpa0lDhLS + XAFgSTHr4by33cfOn0LiYQS7k2uNzME9S9cNUbJixn98MJUYKZLfs2YQTk0X+8lL + GbkuaxHPWFuqfTNPtKE6XHv33qR8966+MNQRcKUG1dYSOSzOY71cHCIftg7U + =EPZy -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:34:09Z" + - created_at: "2026-03-05T19:18:42Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ/+MPK7QpeKJjLB/F7szbqtTiAdb3quDQ87Br30c82SQ4ir - 5n7k0xoDou97m1ZGxZ3DOo05ncTC/9FaUHVcLLeXD7WAyDg6ZyDxtPiA5/G6YNU+ - 3h6xj6Rh1wk+oB3QEubU/kAqQGh4STlel9+H4lfzAlg1UcyYQcK2Tits3ZUNFDfx - wC/N7Tlcxiqo2QXR/Rm9dQkZXnD881yaP5EEmeNQDSolW3iOrJRnpf9o3Dua9OSr - ZXi5TiHJNfmIckji4H8tWkH8TN46cQzr/sor1jo6SWKzgUl6mg3TpOz2ByvtYBEx - glSVmxMfcIxTLx+oSHN7FKrySW3Q/XawJnzkwcvOsvGUpdjhReOPkRxaiWlEF7Xk - lIVKLfzXQJZUtvbtCTvtgar6/f+Xon7YWY71ueG/hgLQmN4EaCTfCxhtT9R5+M5i - 9d1hUKRzAFHkx6cWRsvV9fjxac5hEcERKBjeWkpDEGa5x4v9ZonMklqkV0HdHuCS - SprCxxjkrUfGkf4BIIONsdv35nCUTB2GBGoP4lXEf/AjcqqXcIiQnuJwz3BSFbma - 7gKcobxk3w8fyL8HVCfctftq9iLa1oga0CmN37OYAr9oPiPhbHWhYij2rWfz8p0M - Qozv1vXsOvvjRJNFqFXBpb6/1J1g+WapcbPIEVEF4jlj178NtM7jU3LOjinqOeDS - XAHtifNTNJna5vDZ45CTlyE/ry6jHzB5CSaT0Z9r4wn1NFW2M9S7ehidzjfFt71D - 6tGRv9AEmm6/4giezGspNCtBJkzH99ybK4HkjJOnH6uPVTtXYhu4CqhOBIbw - =TJ+6 + hQIMA46L6MuPqfJqARAAsaKXW+pvpC5h/fkHlMIHUh6whuJuXfWlUfUpbdooNU5n + ErHJ5TQkCKuoHSHqJFteWMMckB07JPRHD/fRziR8A3wwZAczzImZ2ef5TLwOsSgE + O+l957+16JP6TsnRZTemvIzw11vAfnzTNybx4f33aQzWwuJSgudbPv6GEH6GP9N8 + /6cGaU6zQlw4sx27DIddccMyj9r10dEift7N5WRgtIoKEAA+YBxlo7cy/Np4qrfA + BzsPfK9XvzZEHi1aQZNb9C1pzCpf7RfGZaj34+ltos1vCUEWTzq2499+VW5SXXdg + pPShxGvnNfzz37cD9V4MTsQS2AjjYr8EtKLtfhwtooWfYhRzYrlTxm5ETDOshtU/ + GAKWAc/su0mYZLCwi7BZARyX0nHTJxOrQ7/VQ7eCenmd2AeK9hs0w4k1GzXAhS82 + fFYNzY5aX/E3mtWnMwwfN0W/A0TgoWMMd6kabtd/wsUYyx2JLusMq85XNgiFryRi + ZxpbK7iFj+a6000EaZbMZX2yL4IfAYo2Ew6ZiupAvx/SP4qSGrHDc4g+CeMPBDqN + Erxda/N3rGP6eHxFLNVk1jl9xheqd3ILwhAi0cH5agc983yKUbxxGAL80QrLWCnk + +7Fg3VZlJaZS7N4wuqpds1pbSLh3Qq+dyoJ53leFuNdQ2H7y1xC4IUal7cvxrerS + XAGHWTIasgKWbCBVUikvAZu7DCYMbUwouK+Srdz5FCe3ZFwbvYJvtymBSB8ko7Pr + P+Y92PJoaX+cF79XF6a2qiqWFu5ieoUfvdfkMsWIiIWkfAsowkQLDxAmi68q + =zeV/ -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:34:09Z" + - created_at: "2026-03-05T19:18:42Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdA4HuGXcSLrKiKBPSMPtBjX/yQB8XE3RBpdnd5CrymGgQw - 2D3t3b/R0SHhTq+GVHH75OVET/cwxJTPKtEDnpRwwuLjrncGgCvVRXlRqqUNv39Z - 0lwB7zHilxD+iFaOdsTB7JpS/PprsCRHfkB3JC/H74EkGBrnJBtkwr4FgxvtA6oA - 1ay1/gfcRVs6XtkPKs8HMop8BdxcMtRD8e4ZzSTQr1Hfb5+Lo8lN0j4YAT71sA== - =36CE + hF4DQrf1tCqiJxoSAQdAHQYaHA/5uKJS/HAZxPWjyNTZ6ddIqbwarI//nE6DUD4w + wep8nyQlOjh6q9+mcVqoVQfG0wogJVj08drNFin6NMZWakDT8hhsImldLHcuHtso + 0lwBzDrNBg/S2DsMG57L+zzotv4tynePEewtS0dZZKv6iz5SAnvGHQY0cmDrNCHq + cRPcFeAgKSO/YBi6nvXIRx52WCt0SD0Xm0B1keTswIkkIPWZSQ9CEQkD+t5Q1w== + =uBw7 -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:34:09Z" + - created_at: "2026-03-05T19:18:42Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAQwOAC2fMC8OQiGsPbKkvEbQMWgpjWC1L7FH5duQsE2ww - UpXomWNLPmAmhdoFg67UFQFTQqV5aZN44wNIJ00PdwPDvUgGFv7CKm0syD2wAatL - 0lYBg9YQfy+FPFKBSY0FYUVvdlrSpIQwq2V4d0IkL/UXpyWy08bdT7YmOAVi8/m5 - y0VDsTGf1QItnK+g0YYqazrN1FCh8NrTqeK1J8/jj7QCO2IoyghWnQ== - =NutA + hF4DzAGzViGx4qcSAQdAIpb2fnFlsM3Z3HA70kF5i6iWOZiWsE7A5ar4WbM74m0w + hlqtDB9Rl25DArUzMw6gnZrt1SMlrErZia47n2SaYakoY7pKdHNYf1tZoscbDyqP + 0lYBv2rDSW9rwGfB34w5AAuXec1e5nx6NcUKDoDI303CBRA4qqtXsP6Wun8OkBJ7 + N9JxehItzL79dp48x+qHRwUlReKyvvTJOs/Fg5TZsHqEowb6sS9v/Q== + =XewJ -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:34:09Z" + - created_at: "2026-03-05T19:18:42Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ//aOZg2BScUzJF4RVtqvusrr93Y6iZjD225rA/7yqE973j - jOHf6wl6MAGQPG1dMWSVjWlALNgNtaH2VaNQfCgSC6T5AOJWx2ibdGs1Ih0jj4jR - 05+ZikU5RKTmFfS8zJOkGEn/Bg9pX0Faf+4FAzCrXoHo58QihXyUNF/i/FI3btve - 9Gr8/+H/xPOWhca8qaJmp1D+uJrv4yEHGA0MtAK/fr7Jem6DyDk2370GG0z4M38g - 1SzaHQaqNX3r+M5CwbMy/+KFSDOi8yngpSVuM6yNQdbo5mMwrDAJs8cr4Z0Dvny0 - Pkbqa00/ZF8J9Q9LMutjx9OmSr9BT1dlY3VuuIavdTk9H/hrvbsx1yfXT3sgmyEY - bHAjaL0C3ksJgvSYveEWMXmnpOwX6iThCggpQVbToFtfuQ4hj7rGxytF82NwdCO4 - cha8mcZial2njt6NoyNIu5Z/R/2CcLYxItU0tSyMSD928ehC/JTcjjTixfgMZlbM - LDCWbDDc1MSR1cFE+dyfrM1EWbeacmZ9oegbV6jOV1I7Ag0LvlelRLbZZ8LB0PnP - 52s7Enl/53CTMQ9aqvxdJvj29zZXRkIlWQKXQAB+rJzJdb8qyb/UNqZ8vFXWUP6w - oSdSfaLgmqYcyT04+tAEc+UfKC5zwEmzNxPV9X+rw7hpqsCCzvqG2uwy9uIl3X7U - ZgEJAhCaZUhTMZSqAZTGtQ7/RjTjFxr0qWsu6AhcOBo6cVBiPSN/L45wsDlzbf5b - dObxPJ+MYgSD6a+vm1AqLsW43krgBaM2YL5+MSrqvSG9czJfX2H1TX1w2+i1Qt+6 - ZmKlps/s/w== - =tFBb + hQIMA2pVdGTIrZI+ARAAx+MrIe1xnrHzlk22cvJ8lY+Q0Ose5vF0XOsvDctI9F0p + mhLKhP4pUNa6TKV5xyo3t20kdM9Sxt4Wl5rZ1ptkdLKy0fGEbWvYGaGeguQGnvpz + q+2UyDa9j/RWcjhbnOzeWZAcw+mhHAPKLnv7fb0kujq9wUgdDIIH4vlb5fEUfISe + xeTFeKOFSD20TFOyN86p6BNJmO9vEsu+/R4DUJjf8m90N6rrTq1AfS/XXTz6zbLX + icWtiMf/MEUEoAAwhY0mZpGjYDYWXRKrjbDX4oha/kcxGCEc3Y9NCcGQtj8pHOZs + mkd0MpyojmuiGQPmB2EMJb5leLFDt4G52H2zqngzKYjKnPQzXXAV/bYyy9Fws2i/ + th56t0O+KVyYpPvtRbC425hzKWXv7RGXuEv2U37eJyaYjQrbKnuFyvghQTgGHck3 + LNXs3ETnveMAfZ+79Uz/bnhYl4F7NYrhDqlHtpeEHVWNmXWzMKdR8yw4Z5nNZdk4 + XQwfpCvNMmrSxp+Vkl9dpnT7Cc8j4k6gslV1Qenb8WvsO3G0jxmuV+ZoXr1vkuUZ + x2s3qVQQehj+mAH0YG1UclxWxZT/dtOMRpF0eesmkDGCNkYN1nCjAKAlCkXTYLRV + xNKomeVO+VvknH5MbYuIZEy8TFEnNyw3ARnBvagc5JudosgqIsNIBM4tgw2FSK3S + XAHXp3nX6xrVDfL8pOqI6zDCQT3oxmlKu4jFh3MMZgVE28bq8E9xFa6AhPN9//Z1 + 4rX5uYQqUVy0J+rTKwBUsjdMP1FpasWGxJX+XxKuCSB6Lg+X182XiBizy97d + =5DpV -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:18:42Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAL9lQl8vM6QP5zxu+zaJ5ZBhmOJY3DvWstqsq6v8QzgQw + ELm5+S3NgrkYvef8AA2gespe7TGAKYrpXVB68HgmwGUIVM2Bo2D5EHgotT6HnWkI + 0lwBSygTzltiUigL3PK0X2KBJOYus5i4jcIdHsiq51+JqrhXiv7Exu5i5JDzgDuz + BOumuF/IQfX4BGYpTjD4SfFzC1ofT+qTTf+O+og/d6aGQQ4rf29P16m9urXzgQ== + =zkQB + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/external/group_vars/all.sops.yaml b/inventories/external/group_vars/all.sops.yaml index 9eb7caf48..20f643566 100644 --- a/inventories/external/group_vars/all.sops.yaml +++ b/inventories/external/group_vars/all.sops.yaml @@ -4,204 +4,213 @@ sops: - recipient: age1p546j6whqsyfkjuf674lawrnk2ex653fuvwhcwt46gkrspkq59sqzm5y87 enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAxRit0U2VqSy9kU3VEaStN - MllZREh1Zll0M3J5RG1TK0pxREpCaUF6S1ZrClUvWS9BZTF5WDBVakIrdUt3eDN1 - Y2VuYUZLTG12QmNYVUg4SndwcGhZdHMKLS0tIE5TREVIUERlbnFYV0w2THZ6QXNh - d2crdDNKWFRqNzZUZlBBa2VBQ0R4WGcKGCUyPmNYuJwdPIiVGhGtmDHZ0u/dbNcy - 1fv7yP1zUKGBLphepvfxkvCWNEMhvDoOVaiemovCyH+SpIdfRhVHIQ== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB3WDY2azdEN09VRUFkb2pD + a05zMjhodGgwd1MxdHZYb0pYZEJTaEcrUXo0CnkrVmw3VGZ2SFZydVJvNmdteGhz + b1ovcmtxVFNvVTZ6eGptQ3pxWEQzR3MKLS0tIG95K1ovdmwwRTJaVkpIYk5hdUxF + VGEzc1hRMElCTFZOSW4wM0gxbWxZWG8KwwtPXOULQ9VGJfPKUePkTHrAOpQ0345s + G4KuTLj5rZtFoEHgeyfkN3SJ2H6DRIAIsBlCOyKr6XzEtl4GZJl6Yg== -----END AGE ENCRYPTED FILE----- lastmodified: "2026-01-15T21:28:28Z" mac: ENC[AES256_GCM,data:Z9uyXhnckrVJ0LZM1aT8cSUZCPdQ0ufBC1HYxpzAGb6FS/p3Jni5tFfgijaCT3/T3yDGiV1zQqoSDLwjd48UaMjCtJYCUCAiVo7i4YJ3+aZfS87b4h4VsOFlTLFlBklNYxHd4pcPFl5X9fZGdD10Tvmtm6TlJ33Ma7gmuFs3Og4=,iv:tNeG2I9qNAgzbGwxTbCrrN7KorCneJtFildGvtPVX88=,tag:e0rXgetLFenA3zNBNe631A==,type:str] pgp: - - created_at: "2026-02-18T08:35:44Z" + - created_at: "2026-03-05T19:17:48Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ/+KrFz07DQyoWeEZEIhXgh/uyukCtbRbXMZidkhdBc6Y/6 - pqipiQBrRpJYUM2YZTU87xjO3F6fkwXx9gwguek+RfFA+IR/LQPRRr2HvCxDWyZy - 9R29FjUwEdH6FJ8/WQhd3YOMeMPqG0UohPXNj6gk3QBVinSzJ8HWkZI20tHzLnwy - WIGt4KdvXjZbo76QwHq8QU/2U80MrIQeZTQuFPKi56xjALsV9N5vTZGiMSnYBBnY - qIT1Dn2UkmBmFmerGuRxXEVZTFoVzDkv8kuyoKgwar+CFGSjEs0BWixrFVbKP5Uy - lpyZjnGqPsCtNAsGhTbsxowuPXF0kUj9Z0w/UFEkRcZ1JUVcWUXN2J2IDFfuWmHf - bbuQaY0UwfukZIqTWoyMAKFgZ56bvwq9EgkppuLxQUAGW5CIywIP3k6Dlq9oW0Qq - 8o8u2yOLt6jWLH23Kgo7JbJJboJfuEXfnkZdfZJKhGk6MRThg6yhjrvZMmovqKdS - RcRunFzl4KEKudPJPO6705FBSX/GgsNxvhncV8jHW/5xf5NLiOmGORCStnqA/fZK - JhnGAiXk4lgk1jGvTmgqUDEazMRWrepID42XqPpKyNMOeaNhl5cQjA4fkyXORU+/ - X1m5GndiUhi8wXji5SFKuSqKWOyTsh+ahN/7Ytxtku+UAL+okeE8xEhB2jQGQ2LU - ZgEJAhCm3Wsf1zAxRM8fzSFz/BXx1rJefhcCj5+l9UEKdYdvnCFfi0NfywGc9pzH - ht9NPrvOT3aRabN9amCn3IyzpePBlIJCJmSYDHpMRo87Et0VRU7TBx5B+yyaiqPa - jq6KieDv+Q== - =IDP3 + hQIMAxK/JaB2/SdtARAAlxz8dQOYkVXRtpRgB+mCPnGWiwloTgfjZaL8+Ud4GZUv + r9qVuljll3oWfmEl6FN9yDMwdjZhuW6SsYOPKOoKY3Fu+Ku2mQ649k8JKUFL643j + Z4Oabh7eRGxUri1EVX1J4MZViEOHRUqCs6qPxb9HP5LLVW5+1ZWYaKHqutzHZ8JD + wuRRtWRUkKm2mYkbiy1d4bSsgAhXQOBZz/AR+NOYQq6j814xA2wEd0PqZHFWGuan + bSolxtvqw+ifOAgTjI7ux9mxWJq2I/047O7iu9OEtDBDK5SHoVwCFCgR4WrVS/MF + NYrQ3nVLHG6YbPL2rPYtXyqNfQWBiYLG9uimkCPHvureO3aWLNsePxb3r4GnZcBL + nSSXKhZQKrKSdJywGzFU6TDgodi3UTaHG26l+Y+wrgDWer8aw/fW3QDoQRTy4osg + 8s3wcngeObL5NDE+CaZ2opUVc01yOw+Ta4Vq6Q2bC+r9yfZZlAz5YXGtyeYkHN/I + qfopXTsXDp0gymg3Mz62fVzOavveFAJx69JRqeAlkzIWfxjY7QzGEDtbuZjD48D5 + H5JzLV0JcBIysQlEufQ94abVSo4d3/w8Avt4vSoB/FZOC5HpPUTDI625ogInQH1p + BItUrzrWsNayxjRgpO7YramA4GvuyWmIBvq6MFXSB6uLbm69N9ZMNTyuaGl5TtjS + XAF8cyT3nmJNCWFybdHxvqBg0/IvI8qRX23laiNcxVYlvM0aX1UwwGNAkuJom+5F + fd4wSoURzmF4KEX4oKFPcieAWuASLIO7e+bgPV/rFLycBhjlSk1oj5JwS9aG + =pJp9 -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:35:44Z" + - created_at: "2026-03-05T19:17:48Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf+PlcPqlvY/dGnHcqOoERtx79CdJucln0nBccf/afeUl9c - KNfFD8CpM8JxUx86yiZVqjpuVfEO5j539bO6us0ZL9tTJsamcwhlO/PZJRPv3BBC - cFJpANWB/e8Tt60mCP+XVgeW59UUdHQ75w1J3MjA7HMv1cQBGHzJWb2aIDdQl9X8 - QNxxUkXlDNz/DC8NwO82Owz6KsEqYngmMX9Qrj33ijEfHlqsJc/MuCGaTHPwE2el - t5lP4U6x8uqIdBTeCml+FkufqfqnO2+7rPbzRh7jQoIk0cCgoXEMjWMoAlTIlBym - mgiWKJt30vGVnsSGG9iN5e/r0l7FTq/wRuthAStLf9JcAWWL9N4k1IG87Kuq97E4 - 6+O4YPdn/9Rg9CSn4vTqukN/+XvtDEaZ9tEOWT74sD2KPJ7MafMEdVxj7Wa+GYax - V8mrJ8UuGd/RbjB5lX0guhI5RU6fWSq2cJSHaS4= - =5Qhr + hQEMA1QflAioE8i3AQf+LmMQHLtVTii2U4fFeAJbaAUhh8Raoix9z857AMvvJlwE + 0uYB7gD0n9nZ1avXaJBzOOK//YbrCdO51rrXEDjFbfJfOhXODtVHjrKr8D5iPO7i + 7gTMjmqydtYnYVtP9uSOWI9K172ULswo9tv6ltgRLUzaRyh1aKmCKOiBArZgN4k9 + 2/pkNKrlmqRRMNrPU1R7wl4cJb9SredVoQgWvVPSmjINL/1gJVur/W7fVrRhFff2 + RNzd/eL07/Y0NCkR8l7DHRRHQmhdHZSXxpDHmQ6qv8K11lEYbAaackZBqvJxQA8y + z3IRK+4r91mbbnPZavqfd5FzvokdWGy6ZeadE+CMTtJcAUkCererongTxOVEYqg6 + dW9uHsvptsZ1JIYmbdojb1n1xrbshATHuWYnSmUgm0Iv1hHn5JrIaZt/tn17iYYT + oYWvrSFKCoSiK8LQ4FdbsLQSf9QfxMqUwO7SPd4= + =1+JD -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:35:44Z" + - created_at: "2026-03-05T19:17:48Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ//Z4l8koJkwbuXv1oSFwLgfivAbgBsMCjw94eNFOZbBhX0 - KykXGYpOqvCFpSn/6dzENxR6POoF/lSQHpMNIpNXbryQ/ts1cy4BNTm8/6ULCXkg - 2AVeVtsttZHLBVFuGitDM+H1SSt3yLfvs68Ob4hjJGNm54kNTskeOA97ZBUGLsdQ - qCsbls442Q7lRTp/Xt8n1+8C7OZUkbO9E8LIzCSwEzIeo6Py+kInDk2uYlMV9hIb - UX5o+qmeQ1VXpdc6M6k6XT4KeMLQtManW1nh6DeieMqhMkC13x/hia/Cn3dgBQ4L - 1ZXvhsC4NbNIsCmdC/zvquNt2bz9hqQJyxH5De7BYRwfmAJdXeaB9yAfRA8tSVGw - ehpn9vJzSpU3Jwebm6Lz6RTLF7FkV6Wkdb16UrP4F2FNv0H+CfhHmYjm/dLgCWZg - aYkANjcKk0hqZg0LpNHO6hBRR1zfnsVw2LlwxBebA+s1NVQZFgpP18x77wnOHYVu - 9pjD2GpOR0DoKYm1e96AeK9vg8JwwcrR9ydKO1f3xCgWfE/HKCMQsy5mM63avSf3 - TKw0fY/D5N+8qDhyyHBtYgA1NNzy1aFWQ+M5y5oU+brI+1R7SjGU0iXg3h6dQNqz - bHHpJtyG8X3HWusndJbFUL7hYpdXSo2ggS4TVNe301FrblKgH6yNXRVO1PznJfrS - XAG5KPUwucXOtnsz8/S/+aN5kzJ51BRdY7u7WwxP5frDDyUIEZE6KSYB1MhWR686 - TfN7V1cTEd5J5W+cNh5QylBvsHXzI2UQZwCqR+9NB2IKpEEBDU8J+PDvqxAB - =SnJo + hQIMAz5uSgHG2iMJARAA1tmgWBwtG09lx0IpIKs8Ekq10rxpCNhzxhnU36jHYEA3 + mgtBNahvK/c4XVKDFVK3vjAVVblE5TLsT22IeKIfEcuxzLPgGm8TvC2gc3WdJBDS + 3wygANQ0DB+aNDBkDHZRHQQDSPEB9C42nMWBaNxO6n0up1bzhkSHusVYKL0JOccA + x2Rfjhk2mIK/p0N9Lz9tuLKfX5KneQS6YJwrHWcXGxRUkRDJWWmaKI61Yuq69yAe + Nniii3RdlM5tajJaUTc00QJOXbJUBcOsL/wTeJYt1VAENoL5BdTSYl6cjSPK/p6v + AOy8I4B1A7r3QEOuQT4YtCKCDJflqnEbafWN1BmHJ1zT0CZJHGHA/BZEWo93CbTg + 4Jbtx6T0RokPeDv2TFqsANOXbBALXpr1DmBvxuvQw/YJ7fN6Yx9zo4+T8Bf9Utim + T78tB7kXbLDuqVD1UqZL2Cxn1ylPRfKzjgPXBQ0VhoX7bie2W5ZVdELQpCK8pbr9 + xJDJF3lGbjZ88RW4LwwGYyE46z6OrsuFSAObVI4Eusza8lKTYgC7SSR8YrzWzPEz + DkSacQHT5X6RtIUVihTDgE6luqp6ES0Ms7etj7NqiHLyhOSuoS0vB75YwLJJ2uWA + 4GLOchz+foRfULGSPaDqlRPlynjfZSqilGVSi88ZYPmIvIoHDw8XJvGhaU2Ip2vS + XAEXXZ+n8c3wUB+nQBxUuYBbS46TP4H66MXqfrMHxf+WA992w7H5itRpkpVDOR57 + 9jMxwjlOFWAFlq+CMyxQiXjcLWixMx07iC3lEW62UNvpKTiUtliGIgSwrSee + =9uur -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:35:44Z" + - created_at: "2026-03-05T19:17:48Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ//UZxNjVQLuUwYRbk0gnYx16LxAJhRZmw410MWn8LqAr+B - tWoNKFtKfG0MQx+tseyXk6KtZq5iAj6EvEtiL1RGNvlbDp8zpMcMfVCKIGLLblqy - TKBrQXxpwFahxAxgvD82q5XFlnNZdcTVnuKisPf0CBZMeJ7FVzZ4PBK1iLhB7SEF - vYzez/KQTMWADKF/+JLufflJkhYhDu9vLdIdQDipcZX3WEoEAc0HWnJJbETxL+df - HV+XHmItITyBwr8s2mDKtPnjENQpRy0YItVSyVzXAYciKxmw7xUNHf0NZAwDT3R0 - 2/raJz4qtrOQP5Hf7Lbq94rO/99A0yGwK3ImG+6DiCFxGa+xqPzhorI4sKwDg5Qr - fD04y/MOTer6UM7JC4lTA6/piy5SyH6VJyQZo6auFrP7UEs2YmAE8JgDuz9cqlHU - M5dc2oBNtTEupU0HmdEuLztQ0SY8udUqKO6xlY7OJSXjEG9hr9oUQIZbey8jqSeK - BvFDA8opZ6ohCfT0wVNrW49aI1iFut3co9JeivgOnDKb2D4ciAhVhkv9hvoGzXHD - 65SfMe8PdCyAaDOSD9j5xP9eDb7H1GSrD78s7CkZMla2DIUXju3/nOaRlR+wW8aa - 4rknIKrg9jrXRPrCTu5zEzxUOz0SZM7zRKmYW6YMQJubL8voLlVekPbAfGDQo2XS - XAHLdGw23LhGG4kpdGbc13Q6KeMPsbuvEW7J0Tk7TFFLQ7YPPsWScV2naJuKYTux - RZ7rzpzr1AXQsj8+tPTsFDacEF3F28MIgRsGchxQQqzKbonl19+IHPiSiDq2 - =NIHa + hQIMAw5vwmoEJHQ1AQ//d+c34f+CpobqPTxl0rZtQf3MU4kyND3I3GbJoA939dFy + pM1D94uphhF/8fPhhb7+pPlmWhwB0QFaZPqBF/YmJnLUuXpa7LFTlSRJBAwBB85R + PHSlaoRlxyO5unBhjMP4SJtVl/dYisSDLJMgLAa9G4N6wBangO5LgRNHB1xf+26A + QXCCTRW4I08okNdfyMjYtoTbMQ8Hjkziu+JU6fq4MR+whR+S3ukt+ZISrbSFSiYB + bKVJKj0IkJAzDVasTWOiTv9p9s8drR8OYFpfbzpxl4rKujRklvIHtOmT6RuycPnj + V5yAsHm5wrcAI/58oQZDf9p3vZnvbJG8/oGFTJrQbolyoX4P9sn2DSUAT8rrb4ns + aLLrmUhtNr3pGSmB2gOYUkxkDa9cc1B+vrErcrMgQrYy9GCE+A63fxQhacd6P5fE + 4Bmut7YinPC+wnHkfirlID1849uy4a1HBw0/Ek8EeKZWiU7hOWcCpdwe2Neue+FS + sG7fWYBFk8+NB3vsTlk8dsyNCTn3aiayvGKCqr/NR5g4wDXfgQ0IG+Hu15wsgWkQ + YxzXaMfAyFTxbO+FEa+IdYk4khxZuZn5JRChrgSznAzbcEEmzwsNaJxzurgT6SM+ + La+ASx+OBhUhdXgpqfw8axWrSaTpNP3yrYD8QdzadPiM3AXEWQBdtAsuuqvo3y7S + XAFE4iXGGCLagGs/K5YlyRix27boL4HK6TaSs8YLHsRRDS6+FKnDL3IAUFO8dO0f + On/GgwWOjgjgzbM+7K/s4EtOuF93nJgdB9ykASulaWPyngpcaeVgA1PfujJP + =lTlB -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:35:44Z" + - created_at: "2026-03-05T19:17:48Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdA77uo5wvYRphUxT+Yo6PNpXEWTHfLZTONMP36h4NMC1cw - wpyDxGKz93oHeqX+v+VPvymoblO0/oFYA6uJ6W+mPMJgdKM9LyIa2tJUaMboVqam - 0lwBcrVePOy4npbUUqow5mdHNGmTqa/QrRWTsLoBYoJOKofl+eRPHxn4QOil5Qhf - heg0ZPZy8amx7gl9y+8skz7yX4SKvMPmgtOnIocWkYWu5ekEYMlu5K7twmtGiQ== - =zxEG + hF4DerEtaFuTeewSAQdABmnJRqAaOwfT5aWDymDw0ZOJtqvi2Sf6FfIjlCT8CxQw + hz2tgwZiDx1gJP6kmXmbO648THZSDgBZpSkFyL0yc+HzbgQOQvLRWy9AaQehbNYG + 0lwBx07XPpT9Kpe04Tjc/EzL6pDfHdtnMlfsqvduoKC7fKs9OcMX9qu7ulJAYfCF + nVBbe9bxgK/P2MoxgBGxNlX3QwinYQVzwb7rvSBftV1Wf0E0ntFjvJkpY7HuAw== + =F1WP -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:35:44Z" + - created_at: "2026-03-05T19:17:48Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ/+M+XqAhpABmKfAzRX9E2VZaaOhphLPYlvguqHZPJByefD - orpcGMm1hqndeX6kAHsefCvKsVBf31B7AdHMYoZXqdzUr+ajJgziUzdgYFyogyST - 9U3ISLhGzutPg+IGhFhCvh5CnA0CBgtVu+d99dpvUGIm2dGP5IiMooMa6kDG5VzX - xnjG+8N5dldy8tcHBYjuCpL21FTzkiqxMi5f5x/OfrWcJnKeBDVaJ+pa02wb9Qcq - QpJvEOAWJQ6az+/cCwUA5IFk2hBVsoFWP+ZA93rvZ2bTdZxF7IUIe8dI8uiDL+ZE - mWWQ4rhO40sByUK/jZ74bPXogMPr5L3E6TTNYgCZn5+dw2kngLq0srMIZZrZeBjp - kAvEwlMnXXgqOH+/DWVB8Z7BPi/CmXSU0dJeZviDkHnVFHN6MP9a8Lot//zr9zai - KBEW0zkmU7nieoJHfu/bDWvupRN91eBMmrQJm+lIDFg44Jzn8P66P+6uOH8eVXel - 7YWhE/OfqhZIRuvcW5TMw57IANQCyHykmhFQM2vVNc2RNXuXnQdYJhaHTMQQjbBW - KBDxabClUxjCLCqYx/Ifn4DkbbcGl6BNO/2nqwOBEPDo1Mamogv0v4IC2HbhVdFt - 2YewEBWo3O9a7+9pGV8wYSv6trRnZkTlI6xT/nHMRP6g5dKT9CA0cywEGrZ5xALS - XAHocMsXaj4RJDYPPcj6KK+WSwr1+Aad0OGMYw853m1TEUMsIBklH6I69r2jjWtd - OAfXbxqdPLbCF6b/LX5yQMPXwDE0D1YFMm4aPFHWrvGuQPMB38oGDbmcH9hv - =a+ez + hQIMAxjNhCKPP69fAQ//VCzyABzuG3nkkMhkhFNVtNjN48bjY+Fb9R5jIfI9VSGm + DDWsM7MAoQsVkHdicmO9OaCqSN+3c6ESTMUnN+YPxxYjWJUJuKLYBDLzF9xFJGSv + OT/gWzsapc6fWt6QF0ZQsLTdCL7ur3bJuvPc7Zv4ogcW7m/+f5dHqDwqq6krTku0 + 3hYM8fX7lU/wslLdBaFXnO3Aol8bQUuoQnGn7WCHp6WhwVIMjb4+5H2YEr6WcX4m + Kic3l9cMuPM51VwFbX3tKQwZYE2ADcdlkEo+tK7OiKTIayli0evs3Ff5mLIQCQkW + VolgpTbTrcg/j8VsgFRsRbT8ZInzc1hlIQJfSqrWON/+rxQRW7E3lTTxAz0sV9z7 + vIFu/CoANfW4iszzSae8R+qyYhQ023EmgylwW39NQwNH2dvvInguzqa/pfFEgvJ7 + Jm+3qjBfcVyzxvgHL5u06XoJaAnPUZHG/EBPtntDI10vgLqOSbaNDUgDIPWnrcmz + JHifj30KIJ2FMAJO7Xg1iHYWe9BkTEuniC15246RIl0M6GgE3kErrHqz32Z8lLup + 8rBwKXlANwpfxBjiVltffqScgibyLvpI4MnzP53EpoI3BLGPe1EdKJMBDTj2HHx1 + 6Uru2ioLLfBB74KQIdLodOjJJjeC6MBAq3qDrxm0+v7eaRdON82ozOO57ZnXNbLS + XAGw81wfVK9M32PhtTwE2EXzpDsvxDxcOVs9tWsN2J6cZNForLcXqap8IQ95QAxj + 3/huWbxkFrmNxNqtLMbAk3QUz2nCweV+vqwGkjpsLikHLk1ic9X1D50XxgHV + =AGIq -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:35:44Z" + - created_at: "2026-03-05T19:17:48Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoARAAn60Flv9miDFVu5Uh2S1qcFTZmE2ulJqfwaow4hwuLV4K - iindisjuhKfS5NvVj7CNmASbStomMOo9iPNaMwo6u/gGXLobLTt+mCMvFEcUch/6 - hVjWHYf248thlzT4mFdl1j4oa7QsjmjwbDK3km+Y6hM6IyfTqttiBglri1xmVF0W - xVlLnimMfQhK+5iC+Hk5Fxr9ZW+r28L5+Nhwl3n7LsazPXv60G/JeyQU3Z3GpPCB - Y/uig+PQQiyzB2jCChJuERoByyagVn1fF+Nn1Mgj+wJzAi+Rm9W5AF8lWN6NrE19 - RvncTLgoDGOpalFqACUhwI9kcTf5xckz2ki+IAUHBciblDoxrhMFt+bZstYTt67b - qCRxw5ptVUdaWXjGES83kxX8uVC2tgdKqCu0fwRP5qAz1nJuL07Fgxtd6ZfGv9gq - UXICzlObK+K/4VpQjoC2FPh43mDxKzRZtSIvosiYYGZEAe6PZY2NQSSFJ9c63nrH - cI0/kvY8Ee9uCMlBMsL21ct+vYFh7uymZ/OE1928mecauKC5wa2ZK1jJ0sET4WD5 - A2fjPwxYdatnWoh32BCNtoA0LYSSng5y8Lmlfnil43o5rGa5fCD7JDQl7ePdK1hA - b+wKUwfKxpUB+I1N7MoLlhxYCBSdK71VskTa+mejFQzXb1slEF3ykZq5PSO/R0nS - XAGFud0e1RYgRYXbo0nGkiZZevOMotD0qhbTrurRy6ivEJqZwxVBDg197O6qTB1+ - s8awSixtpiGZSU3+yS37IwVr4nIwqMplwTTRnGzAlkgMFojrKRJjlHp8HJAW - =55pF + hQIMA1Hthzn+T1OoAQ//fNzXjy+69duSkvoeovf3x2m31eeJjhnr/amdzXTDmewR + NwwurJIOkxDC9Y5yVAe1kMZ/GsOKGqcsoiUJsxowcbcE72egVF9UvO/4YCIqTI8y + peuhu4QUjQg+dSXqZ0ALNVX7bsYXptmeEDvmBw6FYt2jn8jfYKPbIfpHkAdTx8kn + uWnbtAFqpVp5u/9GeKBgR4HsUK71gJ5/WbLQWd1roPBehZxqbRhmtFBPrQgkHpux + 3sRHbk/6qKixKEal1A0qScP+i/Od9CduDjEZ8u73dltmv8/JLHTjEQJjNcr8yUvB + XPwJlfthknUrDsdsoMMpdVJaIWCaUsRu17nTgJqgUTmP/pyHIEHfX/w5Dv/5zwNP + 3wKCJtqFq/MLsoEAFz4CKq2CLPZ8gR5yDJb030kDE0nJOSeUy+vZ8fuwQWnuHD6V + qUxwJitnkJztqdtFWZzoiu8/72NbR9f/Ys/Sr201m8OsENC3SmpCeDA3LBDL+AX3 + QROPGfyLIJMApEGET+i2FYme2u0TtEwUAyFbNDKleoe2qQvFgcpFAvefrHnEj2xp + 2Gm74ebaIksguYZ2zX+mggBVVw8q4UaSBsKjgiM1DXjqtDnCcBd/+mRzA8ZXdf8A + cXKkkxSpEIPH2OqvgVtYd3AkLzMN4jJJPpSHZUBA6Y8+jUkMQKqYRZtXvDQGUz3S + XAFeEBuinpfLWgetuH9fhI79BlfHgb9isVw22+SJkUiJzu/GZqSNSXVwVlfmmyns + svSxx/4e0rD3MioIw0WLj+knC6mSIYV6WmmOiWpPKJU9fqXAEpEsDkey7njm + =odkM -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:35:44Z" + - created_at: "2026-03-05T19:17:48Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ/9HCiaw50J5OGeb93OzzxNghPcnpNeMswNIaFYCUsCafi9 - 7HwWZaMok2xNA3petLnyielRsLwiSZAh/LGHoBVD9dsfcSDD3tkQqtmWJ22s8YaX - 7gc4zCp3MhvXkEVFHbp4obrce11sS4yGEHujytzcdzrHuxDnggRNYFouEX8YwEM/ - RsrFgVKMFFez8GwzaHfBNyFDHuopp9vj5RmLaXZ7hA2fTKufTOzwSpap5vZKDRUd - EtNQgB6xPeVb6CalMUE1q2/NH88cJGV3nbQT0X6IPcOKrGaKXhySINtZp0sHtvIR - divH0tzN5FrJmvFCUmWIKt3/Mqi8L703GgZvs3XuZr5klM47BcW0QUYTW9JHn0eP - SxQFbR7QlHAhX9p53o1DZ3Kka5npS4fb7t0mtJf2HijXCL8MoUUCKzdOAY8UKWIW - DnIgkmDAuUeg8mb/+jH1b2s2L+/ssnj4kZXeGJYde0GWVx9goRJs+4FwkKxh8Kku - cODkEAMlollMjcwldAFrww/Ra2Lb/Qwf9q5q34pzuQ9qOBdrE/vTvi293UN2pDlu - u30cFDDWjB3F9lSWUOOutotXPHcmnMUwQJCcAluyW/sVeCTE92U5PWHiF/jUMzH/ - LvCNrBmfqJaaqvughYyibiH2lI0FLmH7KDTXyOF8vMMNtBSNJrT8OZpXRfVHEl3S - XAGaoEMyoERJ4zzNMQZ3TRL0m8romhciRnZbYHaedrY54JXi508SxF8091J25hA0 - L1bdQ7/CcgXgcMGv43Lsnkixqo+FeGoXfKtsIVx7ByxEBFXvVOfVnQHmk0fz - =rYUC + hQIMA46L6MuPqfJqAQ//eWnH6hZTh6xRnPEathehh8oa3GrzBCA+osb9huKsJQWA + be7KTWncXWTCb3YWD2TyRr3tfpqZ+JF0Cy8JOQT/oBAUZlrqJCJXcov0FCHjgfyu + 2nA+B8BcH+W0QmKd4PAgXFAd0/p4oBhD5nWXu7KmgkUGqGNPQm+bOJn+C7tOdrkf + GR20zF7aqvia2vy4e2uPny64qeXtox5ESiipQxU5rIl8C1iMhA5jXyNU5kcM582W + KzbbuBM8nzFwVd2sUWXTUXuBprjSPqlVXaHBdweJGCvCg1wRBTHu5DWoNB3MQICb + 2H+GydEnNjhw7WH2f6FvCI0D0GkYIRtxylsoJLPkITIUHgr/BRWBwtytReQ51+Iw + 85+HY8SzJ7OKgn+UJDP3pc+EtsdGb/Fa6FNGmcd8NAniHwF/Ytwj/xbCBnd6oQL7 + l6/jyg3Cp8vA57UyFaECA4pISlhQVbzRwvycIyfK+HYq4cwxMtJRjmoz1p9SmJYD + io7CBz+kTMtEZbzW3bIJUggG1SycnijIk09wwB0TB0hGtquu+MdutiR46cYsKhhF + ctGor9Nll95X9ebPULJ5WOkH+Q5chvxcAPLt0qppP2ZPdigSEC6q1y4Pw1PG4vIx + HHhr1/wHNrtrWOVrtXSrxl/5EpPEsGvzS1jOtPHoDzRzB181KGwVBsbrvflRXqnS + XAGAKr2sNvGluk8sk3FZ2DODf7qq3i+RpvqEABflW970EQ5vxP9XcH23/WQ9buaI + vxrBTMPNezbNV+XT/761RDkZB1PS3Z1O8jotI11aXu5VpXXiIl4oZwUc+t25 + =onrY -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:35:44Z" + - created_at: "2026-03-05T19:17:48Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdArEE1dIXIW5OpOQMvRx6PRDiCTDa1I6SPMt8NkfKJp2Uw - ow3R8IKd5dkzx57EWJr7FoQS5L33kNp+Dt2bDQ9jK0kRBiFiEa2/owx00G7DURey - 0lwB9ZosctUOj4uxk8bTtWCJoSbTwHHCshxML8SUNFi3CRw+TOWNwYZnAmYiHngN - OqLYdust9d3G4UZVPF8xxjWgh5+qKc3UVEIl9MOOZnjn91GQFyK71LH9CuCH1Q== - =oVPU + hF4DQrf1tCqiJxoSAQdA19MmxNAK8uVguGx9b8X+LtRF/pDNA2rHBdeWvg3z/Bow + xUgJKAhU/XgIUVtIa1XDASzPOIuVPi0LuR3VwBn/Do2DXKLfhYi//exj83FNEM4G + 0lwBcsvxwPGCtghVP8gVkFNSNi10ShYIsA0omMpkZP/UxFz2MQVjwOzEweuODhu0 + v+AxBfZJ5pCWU4BWUG54ks1Vd7Qf/7yaQKwiLh6hZZNM+Olu0xhxItIaDqYP9w== + =fyfU -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:35:44Z" + - created_at: "2026-03-05T19:17:48Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAbesHtUlFPLz4UzYujdBkU/q+8H3GBAYW9BTt8pxBJ0gw - gfj5dW0/Ba4JjZ2KoOALYcJPVaj7lX9zMWHELJDOgAi+VR9myReSZk8e1mRb82FW - 0lYBe7VFCNh7yTRsOsBjU4g+LbE2BNtRWi0XdIMjGm0tsY8SlRziCOE8qTibiA3H - 1nILiGBO6v9+ieQy/RLaxu3IEJVJpwuqYoSl9/EzpFnHC6hGreG8TQ== - =5GDJ + hF4DzAGzViGx4qcSAQdAAe9pap2FR/lseAMS4WilTifq8CfguFIZR2YGxCA3QVMw + 8oKp5Ysxtm44daK2wmgUvMHhTVp1L/d8WpK7KDK4SQ+XrLHYzcPxbODkAaKwIzlu + 0lYBlGWbz0PsEdmbg/cNCc8YHai+3JZRzkJ98t+iEPtQ3v9ySjH3+7KFLztmPoFX + 95pjLP/R8wNfW6Dpip97qBsNbJr0Mz8DwWg6uoQiJRmAbSkUvLYIlQ== + =9L6Q -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:35:44Z" + - created_at: "2026-03-05T19:17:48Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ//aw7+eszWNJaFZYLepE7xLkOrQqHD3ttn7NGcNN44QjGJ - YK0lKL/QBarXEeUA3w5tfX0UeG0Z4mm2u+XXqENsxRQlsdfKX7GVe8R+gr7SRVvS - c1nd2sPJ7Vbt2cQm0XeL7ZNTXtplIHiC9UGy/GmZ16BFIpF5nOy3UpWKak4+0v+U - VOIAvlTGcjILWpXv7hvVMwNmk74uO1AjwXMbmbeMCFFmYXgNKmJLHQySu+dL2+3j - G6AIulfdy4dcjhZG3egoxrxnOwqvXs9NhQr/54YU6/XpNkXzk3dEzd3D39zMYbfX - uPuL7SDne1gcecwbj7lBjGLCK3rTG6peKNj2osqNe1j5kSvxFM2zfmXAZnoq+OAE - XUOYRet0FA/YpcFvxpKx7oR5foiHHMfrJFXvAOaeBzADufeH6tWyEsuPWwby9XbD - JF8I+IVhnl9ep5ZFAc6RFM743lk1Yx6qZylVK/CNoC5YlYmPjOxk6g1CwxArBK4h - SZFpm26Wpre/CPj7Aq9vS64uMeRRtNQS5B9Kc0N0oJjJCKhKbO6Aw00MU7EaTfQw - xcp9CesObmxVNi31wpsyOff69HyDhBmAOVp2FZtqeoH4EwCdGsA/2+fcUtSSQ33q - +q1dTwa7HDVc09BZc0yl1PfMsvxw+w6Kb5B8rp5II6blno+xsJuIy7YcGBJ+OmXU - ZgEJAhDQ8QauoEckNrXuczgxwnMyRQtc1ryMznQ3gbwK/Lrf17+0bOH51cHUP5IM - joZOWhLB1HUcJTcl80q3wBoc10q7Bw+QUUwV2MKEEGCVEsXA8ny3GOj0Ffb8q9Ax - NobsKPENbw== - =l5hg + hQIMA2pVdGTIrZI+ARAAogLxQBnSzhS6oz2Tcu68YlZARmXiM6RihrQE6TPl7680 + xDbAkwL2QsiRQIYfEndcaEZFa/5wVUzErSNlE7ONYO597s4jIs/09o5ToI+jIFtf + C06ExgwfFfJn0Pl54LaO9WIKONeV9yM8GD7nCBIQXvjbpH3U7pPehgN2nTsmJQHO + sotkDjjzgw8OldvIevdgoKdocwu7FWcb6Hy9BJVfe4MFc7wlliLQ8PymdhXu1mHg + OUSgqxzgmAQxDwgHg8ufTfw8D7Pgl9rFMnC7XTtQ7wIJg6xbD4t7hCMlMkm3LbW9 + kEK5hAbh6HCoXAASEuUwMOYuzWyLjocfoe/ebf7+wTjma4XM1yldWKgZibY8uqPf + VlQGCiiq0pDwcER2Q2XMYon60kCu+OTVeALfsJRMEqxyAWzBabxCVOB/49/qjKn5 + gthSZvBXssd5uOWovp3C0tlOWNNn9HHN1Bc3pVPl6TC7sqn/MZyQqqn8qTsL05oN + 6D5upCqQJKdg5+yxJ5gu1YKv0S/w5jEMdOdvuKY7zJUEbIZ38s3AovMPYLDTyP2a + qn0cbn2qMWLpnrRfK+s/PkSc75cXlgqe4Oi+6+1sndv5+YFYtcIhQXnL0aq3+ybA + bsZZOV1J8EHOjYV/bqZVHOmYxd0cSTk5ry78AXqr8zQjB5IKZmZ17cOvP1+jkprS + XAFC8sJzeR2onUivS0bakUma1Xz7rMkCxt/CNQB99GOP9h8VSU9iHyCeL3SZhSAc + 1tTWd5GAvE5HPHkRrZQtzEi6DzlL2Sm0etkuwYZnW7emvUTuR1O8vi24LS9E + =rBil -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:17:48Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAU/KzaoFUtvroNZf1XFGK8cUem/pqLhTg+Dun9af6bUkw + 54KMDjFx4nGgMbPFlEqqxzJ5/x/9KHmM8HgnHkBb+l8NfKWccg0PM4f+NZl8CeuK + 0lwBqoDC4yBE5e1dnMs51zvcnCCc9Jm3H6RZHqOwfe4gngWRGoewD4pKQ04dF9JQ + Tr8djHuGPEeC55FRCdEtOSfWPeHDFOFI21sJMo/xhqG/YJ94mwkU3lzrayMolQ== + =y3UK + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/external/host_vars/status.sops.yaml b/inventories/external/host_vars/status.sops.yaml index 388d07057..52c7c8814 100644 --- a/inventories/external/host_vars/status.sops.yaml +++ b/inventories/external/host_vars/status.sops.yaml @@ -7,204 +7,213 @@ sops: - recipient: age1p546j6whqsyfkjuf674lawrnk2ex653fuvwhcwt46gkrspkq59sqzm5y87 enc: | -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBXdlRML2gwUFVkL0orN0lP - NFVOTWtFWkU1S3hqdXJMZ3ZYd3dnbXc5SnlRCk1uNjVvK3RWSW1HUWpQeHVlMU84 - V2dMZ0lJd0l0R3ByV1hhMmZqNjdDUjQKLS0tIElLeDlmNXFXWmVVcS9qUjE0TW9J - a2hRM3BsQVVoTFhHMWZ5OHUvTURoMk0K3W4U5WGP8FE+YyeVS8exvckTYkk7cUpv - sHEuT7OqYGE1jtZNAhVFRQPqpSjLrbemNWfCOVBfvEfenYCwvkMYMQ== + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAxbmtBWkFhTEUvMi9XNDZI + c2JpV3FmL3B3U3pLWXI4TS9uWWpHWTV6MUVjCkdMdkVmanpFUzFybHFLUi9Scmxl + NGJjNWhyR3dqQWgyRjVvQ1NabGFVY2sKLS0tIDlobnNvdmFEcVVKTWxsVFBwY0pQ + dG9yZTA1a3hGdjVsZG5Ed0hRNDRpV28Kyjy09rx44n1/wGq/2Gw5vq43P87o/rt1 + kwtU2pPSZhqyFj6g+TIaya20jSUGMdPntK3abzmJEzc5qh9G4Vzpsg== -----END AGE ENCRYPTED FILE----- lastmodified: "2026-02-09T16:38:36Z" mac: ENC[AES256_GCM,data:tiIGYUJNapNZVrSq4Hsf+rhklUAHNN+cHXz0UCeev4nXJuidUV5qj+5+V2V1Vl46FTG7PPiNoNtL4UVIfepZ2q/hyR6yE0KGx9C/gv4xjS3ufrGTYavNw7K8bZtUCzmo46Lf40HD8K/wYLPuh9elWdnGLhHrhl6qpI2MKcX9u2Y=,iv:FbTY98dAZtH7+jaaZLdI47+ryZm+ZxGXgc6AZRIiGEY=,tag:OeK+BS3WJeXjnWX/er2YzQ==,type:str] pgp: - - created_at: "2026-02-18T08:35:51Z" + - created_at: "2026-03-05T19:17:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ/+LRvV5PNX2wmk+QJKYkxJ36Iwvvoo2v2yySHukuhcrmcp - JaNLU4It3hxRqCSG5uEvW4VGinnG0dxrcaRyGb3MEVvphmjHE2okbW7EFY8uqB63 - GQLILqjEVx5bScMC+uAPNkT0e4qkNG0MP5+vTJlFxSXWH591krhVJDCMl8+LNqd3 - noSMAYXaax47JQK6z0/eDogy2S6cEc8UVMaauPUCgC82u2ZTYPqVLAUIMM+CLxBr - mGo/nI1Opd0TeZVnBZ0xlobWV8tBBPqOhAked+Q2/WyaxjeLvRV6VxCOz2meYCui - chyzIgIu6qN2CgTgkM+Jcnw9vVYN5qKuFiQYw7+kG8Jn8l+6W3DxW2vmSMw/8yPW - mMA9WTX6tDZowXRvexuuY3GdQv6VHoQpVgbBE7GuhrEGJ4EpaBv1NWl0K4NAI6OU - dgAX+NXeewaOjd7UP5f58QF4SY4vtVGkLe7gOc08vsSnxo0lpUdjcTqp+S3mCe/f - qgD6+aqKQd0IYxG7RzYKH8idnR4419T72oYN+TZ2FRIcp58+NqdysFN5KDt8Z7O7 - sK82jHVxAAU02Ej8VFi2v2/1hJXXl51iLHTVgaILLXrLxpAAWh6fMivicv4gxgdn - E9mILXe3t98/QoSI0hymQtGFL4IZKPXhZ3/dVjc8Y2iRQQv+D1QZMlP25v+lLGrU - aAEJAhCcPGc/dgWH4YDsDmDbeqoS9TGmZQ+P+h3xsaqyn8iav7cUpIpEi8JY1Fv/ - mh2rRie/chVe8Hmhz8pP/81/7zx0Lzjs3ZDHBLSvJMR/10yJ2TefYvYQj7wfbDp3 - MHndigvAvoy2 - =sAnq + hQIMAxK/JaB2/SdtAQ/+KIbAOvt5tNcHQRzoYfinVtvDLNJChmsmA4jzttDkfX2J + wEch2d0SJSRLj2mQ/WHWgGR9oxYAFJRFs6gDcNeDUrv+JT+7QR1eHPrPaeAEabPU + yAJvNW5hX1pR9y/jkiHplXkW+ray6qhkmpG7eoBSswvUlZOgJdMuTcFzbw4LQ35q + tR1nJgUtYIavs9ZXuxvC1D75UYkFCLtcv5Erf9K+OEJlJKFDF7JYvZrQFmlq5EQR + Xr82odIoutcC6SLa27bTHT1I3lojdJWZEhckn2NZP3DRVzlS1qau19Z/vp8Ms8JW + 7MCPSPaQli9XDN/4ml/XXO5L7ylQ0ksqgPoA7KnLPnp+koZOCIbP53gAEhrkojQF + CLMTmzt2XgMaJ15VQ2BuHs0x5br0WUvWjlAyssyIMpIGFodA4NCNqcp2oKI/hQec + 4CbjLtUFoJr0g0YktJHBUlk7iIAqe5pehTfyFrDKO6bPZt6rK4DZCNNIqBXcqF3J + ZMPMkChBuKDstOnteYVeuQVOkrZ64zjVyxU73q99uGXRIn6vx/3z0eGu9f/DLTfL + eI0yrFDZ7NObepbuJe6xLvPFCT+svLnOV/D/ERXzBBCQHHYkWYmxmfOW8cN0I2SY + NetnIIwXjQrbL3TqcyRKh9MyvrHDWsQe1gjsMmxz+hGbbcS4bfCDSbsb0uRhueXS + XgGzWswkSraJ3RvHWgvZd0s1YqPR7yfJRW2Es4StrQ7vk7+IICjv17v9L3/I+pN1 + 84wuUyP6EqDsOTPdrWqom81XKEvpJJJamDr66CuZ1ai7MCIhXzQRYarf8kWvpe4= + =gKIG -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:35:51Z" + - created_at: "2026-03-05T19:17:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQgArADYzjjfjkvkatPfaONowiGu5mMlABYycPpHlo4ddayM - g1356uTRl1qtpqedbeZrnb+RznYgIV5YNEtWduH+ceCOWIuJKG6QvfDZz9AF62E+ - 3qVSQMzagaKRScFQE44xkOk7uVoKIydZ0jsyf/UECAoNXCkyJf3P9n7HKvbAIk3C - RVe7YOqDZ1aFOGIshu10KbKm1MTy4isMYG2YB86pcmiRNZDPUSQlZR015w3CYAtw - dKsh15ze8v5juBOV9VsJvv2ixPcpIfQzQl+2n+Qdb9P0+VcKTD4tWpuemKszQFEM - OY0q/676kvmspSIiQSNtR0mwDchhBs3vLUsZGQiSztJeAWtbwDMp0YDbqhpluM+7 - NF22TPkPp422retwh8sbGLxgvZLqMBgWSENdgEiB8blLOJdM/P8P/jj7x8IfnSGX - 9j7kpgJ/MT5dYsBJe3ibH2MIGLd7Y1xPFLEMNO5xhQ== - =15kJ + hQEMA1QflAioE8i3AQf/Z//YADS15Uma5RdMDXCp+XqfCf56vrguDEQ6N0WXq7y6 + vtBI7/OEUwi3ESYInkIDrRtf9oN1GDJCKZQAgORGIsrCz4c8DWzn1ZJm9efpkbel + V5axhnQ8vKsqM+STb8UQKmx7oeYau6N7d5J67/KzAI2PAuyzIe4uPp/xxrj5hqDa + NGGuVp8pUmtT6HenO4ZtENTK9MwMbA0gNIp146qkEvmvlvKIxGwYRB5ze+hllG/L + X5e7TbMYN1H00TYsatO/3Q7fcuiL8YB+a1Ekh0SOXcqxvzX5qkr4QAKmGrKUiGWe + /dvEYPcdWi536GIvtbGXICAXBDENBncOQLOQtiDzyNJeAe2aaFNecyWTwZR9V/uE + 1RjQRlZqaGQBsaYXbeQazXYMVhSgpwfE46Il8ou8rpSaMxQk4zlol/mERPgAdz0V + 7LqfhzY+FsbqIiHaekwEH/JX47nuUnGT81aPCFQJFg== + =3J32 -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:35:51Z" + - created_at: "2026-03-05T19:17:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJARAAjU6ivUokV5DBA3UDkh9MyaJmfZS3O2hZd3UOWCx0hLf9 - qc7SxA34sr7RQF76sv4kHF38a5PPCYPMdze+Ty13vQPSrg0oceHMoKZoIXUi2WfP - YnKWLaNDXOWx3qA4OcRaLNdZb3BFLcE3QMAmnPVjjGrgmhsJbP/puw/UQZ4Y87Wx - Lmkpjc3906dN0uh4dNvP2GuHLnf7l+XIYQ5B/VJVx2fECrAZRVN0NCUjLoZEU0Rz - F4vKoUoJ2D/mzW9UKp+t0UO6KkTP2FIWekXBQZpk1S55dQdRx44e8+jnpNnd7DHZ - daTn+W0GLS+9zhM/9vNZEoLOf9POE3OWBFKlUzk3v3nA8M/eOiev1IMEhwBYwZmW - kL9efwjV2gwta3PH0SXiDYJXlxv37cgBN0bQYMq8TbJvt2T8ppj1SEhQD2jS4om/ - ClyawNCuhKXjBY5VJn8UZBqEb3Ttc1vTCP62T9Gi4/ZpOrBpZSGYvrhnQepDMsxF - bDUGNDk5tQuhiW5IK5ok4A6XtTi0P+upSHGuI9C5m/kXBt4PAjAF8+N2Cy48xXYJ - PQuU6rL7xe9Jrs1MkYa5W+dDg/n3Q/DUHFzGQE6kxlLzaTO+1gdsIc+VeefDtwXG - nAAXRqeiVEvQV+3/TvJpqO+iL6HqNnvivtAYbHWPb8DqGj60uBw+8/yEQdL705XS - XgFdasSDU+VjXYu+MvSDkmx66xA7LFBxUDMx2m9clqTESk+KspRiAnKKBWTwVybS - HxdAssUTU/P7b3JqMglY3d54JahRaFOrC2tc4f88DZGu0Q4dKn2SmfkPO16UEks= - =T9Is + hQIMAz5uSgHG2iMJAQ//Z5neqON9RGlSHYfBFY8+QLW3lGs9Ow9BiJWSgiIjn0vY + yBa8FmTy9CUMQVol9F4ZOPIWggrWGSvOUEtHUw2iZn9ERoBZQ0i6p6OCfjzY7S6i + +m0P+nte1C1clBqzYutQWGQygCcDbRKbyucrUPPFNqqZH8ANmHDM03lY1/9bbTQK + df9Qz/fc05b+plLtvqZ6LzuRdV3WdS6xp07+40y3kESTjLNSLl6tW8awSWtS+9DV + 9MzZLy4d3occugaizvFWRDtal8HI4X4a5RWldgvKfZxmUQbncVqJGlu9YPQsD7qt + Dlhzn2z7The26hfIVtiYR72M9ZQUfxMQkBxfAr1GB41Z2WIkuk2hegsYBql/Zry5 + RW6X9oc1iRbZUxOhPkkKuP0ZwPDkZro/7Zm2W9Hm4jOmY0HIlcuJ7RDLrJ8R5NHq + zXwfK0s/7RjBV61poENfi5FdCqPklT6Hy2It+BVBq+z72NkgV3x6Ncu1CFWpxazL + JZIT7Cdx3rLiX9mDMS5FFObS2IcyNCmjIrsvzc3oh79nZ+UX6bmtqEdSNpdlVQLS + He8IRtkfef7199bLXd+Jj2LRjjUFkBzNKCxzsUQUnT8jVgYIBLmqxE60qWknJmkH + rlRzGGqlYcOfZyoIKx73gRvxH78pucEBXTIJMEgLxxkrJyZPQSgezmqPwR4mcszS + XgHutQnLOMvi6lH+Fm+dZed8KbkO3M/PDGBpbTsj/VNIHw2NUq98yIzSOy4c3rxL + uYZmqlVezIaG0D+6vIgLvFTUXhRRLbPHc5eJ8qJ/wn0D0wWYy3Ilsxm5XZvauQA= + =V0K4 -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:35:51Z" + - created_at: "2026-03-05T19:17:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1ARAAqfSaQY67xf766E65iiOipWozl1jkgw/gfxiPFXv086dw - EisdxRkdaIzvlTJfyJAQ2OlLOWwEyGp+uMXzNGjZEdcRrPyC+/fBAJaCsmsVKWHJ - ar15bQXJLUO+GF1N02atTcZZTqhiG7iwfz+QvZNyoteZzKBkTI5sBW6NOMwo58W5 - KPb5O3xfaPE6iucEwcxNKXWjYsybEpg5stnN5WmG/DYBRQQ+fbynyQg+NArJ0gvh - 5O+rmlU1qi7ku603UKeGx6uvytCqsrsXuRmtc0OcKqOP0V2nUt+5rYnsOT8b6CL4 - 3zCn/QCEZDSIxRBLrkL+KPfj61BRD5oyYY7w4hPtdTKZRm7hcKq1yS0Y3aniw4E3 - NoTcyET2ghXpqUmLij6kuftGjxY3EVbEKjplXEPMy+3hSB/XRde2eJZmLEraRxgo - u8rYupxoVQz26EmG9fb+Yu2lA+hKdHsckPUBBH9M9A2mytg2EE0svYjcjj07mtO9 - JC7U7qonIxUVFx4GtZG35x+WjQ5WvpKF2zRsllXxGQ+ti4vvZvtGohKVX4v/609T - r10E0/1za6lTy8+LvbKvM44ZZ4KCBRLEiwKJX3zMCykkEAC9Fn+nhu8Tv+Y2eXQg - +G0NJ6cekJgP4ifv1/bhd6ofBBU3Umj0CZsKK5OindpZSklzIi+OEBj6sSD2fUDS - XgEvKteG3AIUAh71Iv4UM8GK7DykTAU298fJ7rnHSImnA/vQnj0i1Uhpk1rcxwn8 - SU/tIOUO/seqcV28DgA1dKnULq3KDCgIon4zWE9iOxusAL5rthwg5919J7wUO4o= - =8pI2 + hQIMAw5vwmoEJHQ1AQ//Xs8JTsZIFJSGF86HfroCAiarJmH83RYDRieSsHFWemez + ReJHRmVIQAU7m01IbwZ+vGV4KsfcqkjpP9TlTU4SfbXbvZLiP/xHEFuvnlI7xBxi + EywVxq7UOJxgzCgJdWsuzZoe3hhab80Qwa8+lJUBpiyIEP6jkCZwLQ6ILyQT5GIb + EwZ3zp98NGyoO8eU9vMwEZwQ9Ltco6r4z4IXYm4UeA6ixWJf92o80n+O1dxeLVNF + LsTWNJGm5M+K18/zB6PF7f3RDSkBsoK9O7KcxeOzEKwvWHzyRcYAm0/Ry7CfTcZU + p938r8CpwjCVHNC8aRMEh7KOy5pHpap+EBNKSQFrg4G4BZZclHvuNBnegFNI1FAU + sN2nKk7wddMmfKYYP7glzGdSFwqW+URsj/31KP9L7R+yIVqFnp5Nz/ty27MvBOlj + LtoW5cOTRO7ZQFvEXfKMgKi8+AKTRJGVncyrcqM0ID/qPzPN1aLT6e30/s2pakti + b0jEbDGZU5/dfvmR3Zl2hz7hHRfFyMGiTCdr+41maWOzkAZWjyslRCbwbO7nVJ9k + Amk6JUXFKYQAjWDTUPpPMb/Yykoufm1spEXpcUPSFubbm+HDi4gEQj6SgYbt/ksj + GK5/GtkvOEVjKcMUFrxvIga6bbWAJnzzzAYHb1DXtiyG7hPpG5laz/YWmSBg+MTS + XgEZ4jhhMN7pGKa6LtO6bQ8AF3T8umX0Fex0XVAVZrdVLe1wawjaNi2o0+OCh7j/ + W2IHXj8jIRRz1KDZyBP9iTn+ggo2XYT+4iGIOO2hTRqnO2O5nmjXApzL37zxlvI= + =j+xJ -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:35:51Z" + - created_at: "2026-03-05T19:17:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdA4QEs4N3q+RzXOI4nRT7bLxwtRjAVQmEfvy8gRd0KO0ww - 4hIs6heVc/lDYxMZmLUBQRmir+TPSt25xgWFqB28AECl5RG1C0wijdBcW4G6fm0z - 0l4BhYuuz4JI6skpR3/EY3G03Xzr47Nq/Jkd+qTPPO6pEbowi4KJbEYidGbMCIzW - Crk9yv3bO+KLKs6XFwD2shckKNs4Cd0WRc3ut62hXMzPCJqlDbUjFr0n7ufOuiej - =+dvP + hF4DerEtaFuTeewSAQdA9JggutbCS9FyRs95K87IbMnEr9UsL+DkefS+UD/guCUw + BI/GOTql54JZ54YlDOnpElDlpUCxUX+pWL3iN6zFiiq9+ne67CoEg2Ye385cAWI7 + 0l4BPaRSxLrFPnUtdGvRpjydCrb6dbABr/ZCHIbmYiMsipNHQl7zBtG/pVLTsHew + 3cbRlVAbRquqngUpPCbPdYBtAZU3HAmU3NN+gauoL8L6brJG8rmyGczxqRfxTcTe + =MQRI -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:35:51Z" + - created_at: "2026-03-05T19:17:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ/9FZklGjVVy4jnX/5udFxMkrS0lwBqeKRrGyQLIX8K/Z/m - 9bNt8PNXPdA+UzZriZMYzoo5JnoM5ZoNMkVeYM7W0r6YUZ5ajv5e6AMqwmTTJpJW - YGh9N7BVPxA2zmvwAMtPa+kJc3PdoYFvE5TRleide5hKOVxsMEP+L+gPPS+HiVax - U/zYtVblUaPaHQb/FTDbrffN/jDNMNuT0l82Ds0clDWHozc1U5ggsc0Hc+OZes4A - AEo/yq7WW/pHrYu4p4FLhfnDWIxv5FeOG5DiOegtZBbGiLqYMFaWzpkW+aFFqjyC - a+a84USO+HQSClY24rRHmOsrBHEfHeNfC1Y2lYP+5QZaIJtmkbLDPVapbXnPuNNd - ZSGiB7EHIJ6KmfcUftTGZKYAQ34RfWH0UHlIT03W1g95orsqpjeDaDu7XTtARXME - WUKYJj981kS6VkGlfzzZXubgZEwkmx3Jo+TXerp77HwWT1jP40AIAP3WPxCGUeqK - kHmWLEZJQPahb6Q8u1hXhJqeO7TWNrhI4MhE9cuVozkIzTQkj7cwYEJKV6kWQjxw - mvTtrhy85n4qg2hy8nHne/EX1JYjmKtZP8lKYiNeY3tkka5/Ea+vcqV6AEYO2o9k - 9EV4eAqEdC/1NvxPAO2Q15XO8hW2qutY2/cpU/C+SrFa0NNQuaS3gm4O9M6DT8/S - XgEyEd/weoytYwBTL5FJHjCjA8uK7UhIl8tXzZNvhTJwyGxOqe9U43xnfgCU1x+K - qTSWadwvvBM35TXqO+eYlBHaEGsuTn0RLz0+QfQaCR3oUPPOHWEQYUDa3dtQuOU= - =LGO2 + hQIMAxjNhCKPP69fAQ//ZXXpOWTheuHPhbJ6qolHZxF/sRx7o9Lsd9tc/rwFeBkS + 3FKu9ASJmX+b7+aaKYoYW5i0JFR436/co/8/S9McXXXgpjVGo60qo5p9rtAm4ylw + BFQ5+UnkF527B6+rLtVENwrquBYp7yGdcxu2TMaquaqFk/SJBWaqKrweDhkROJkD + T4ODX4eSqkfVKiq0urHDSGw8AMpmpb6DYAMPMme14RM2/IB8bmodue8108bGkKBg + hey3Vw4hrHSx/pUEp7X+p/ooAxsGywpo7ciufR95orRJp7VWVl86XKMsT0GH+7lQ + 9MnV8KJIG7OR1mluEqGjLDHnWV4z3UXBFMpTxmKzGZ5LT6MImMYhuQ0+KRaQaWS5 + QcQHIGQl15X3P82n9K78LUtAn1JhUayRBKMHz46LG9z+BhZe1Qaskc2W02hkPzKt + Cm63lBhXrO7xt3f0vU1Iekp2VkJiVjSZSI1L9+rP8CmM9FH0/134d39KhpIJp5Bk + e+vqqe1vjPkf0xv4yZPpgmmlmIki9g8eo/IXjSKKaoTLLVpHUZ85bUBrHK2eCxWj + OwRxVCKACEu3rwwbJ3Lbwyr5JiAR0PQ1B55OeamADL+473WpXkIp+x7YdgrAs1NF + Tu4pXvPqkNvYq//LyS6BtmPX1Bfz0bdgTGU4sWZxzHcVm//0pKC5HUZCtw7f/9nS + XgGfZOyygjKIsORjndoVy2BbR+ZrdN9r41fWVf1v9cBaN4pnN13xmBm957s79H/r + ZXKE/DK4AMPk5+4L1WE5kMRNWHjqKieunJmdnA5ol4/hC+dMhwcKCWb46+7w7jk= + =AU0i -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:35:51Z" + - created_at: "2026-03-05T19:17:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ//W/a9M2UzgkX3gwJwsgQIDK4zl3vwwCSwTJDG862VkghZ - tAhxWwXBE1BQcTcQt1TbMGWRltLWQvgXJskEwSPk8fTGXnZbZ/lBQR0WX8dL1qb0 - i2l08DDcDv0QLTyc5vYLhXpUcZ42gRWj+S+LaruYItdk76tWoEV4ktZoyc3MM31U - MVY1LUlL98yUw6fDSOQuIiRBM35sKUfVnejoGxxoxWq2gFlstglD5HUxG/OEz7Hp - G/ydBtCBKWEmD5XMh2iEDo0vs16RKaoiy7TJfA3x3G60+lQ9KXS0/9GrAm82KayA - PeTrFH49livx4HTAZJUiLAl/UurfQ89zDUVR1YM4zF1S75WmdXbdbbcUBuiYH6Ag - XEyEu6HDqRYfV/R5heC+Hhcsx54N0SW5i8F2HwXpfjz41cjD9ZovYEtBFb+rQKTs - ZnpyTSbGvl9dNt4f3iQFLFD5hAvXIo1lxpr3ayrBxSegD2vOAVkkWM2N78F6Kr9D - WKUqZXLyp8ey8+diJZM7V4ZIi7Do0EMAdyI5IAeKvZpb/Jrmy/flCyKKalvdNltE - YeB+bpVmsa7YgRCeJjtvhI4AB1N0oWPScg/Qeqj2UN+1PgwoBEx9z4ywvbkeZDfl - bFS2TExV99n+rcgpczmx6+3UMdvEx10joOwRyG1+Uby8YepY5DxBWAsbDMNJo1fS - XgHGZ0PiYTP7UyAlBkSJxS1yZB/bfj91MmcvLdJqEsbM0OkG9mBeJYqfk+WNBzOI - ZGQCFaOk18l6vQrkrqvYa3wGM31nfXLtqmtLlGA3TtMSXRTfexEOudX45g9JlLY= - =98e+ + hQIMA1Hthzn+T1OoARAAhf5yIW7zUfg/Otb1TgicDiAH7ghlrBjgJD8odDT/oGpq + kKkIdRz7oyYS6lT+4gCefG5yxvYoLMkV6ZYnKeykbCoc5tdQ+JrBOEitjgAj9UDT + NEDA2kPVee7StDoVV+VmD2Pd3RrhyjcydyUZA4vGMg3GauBlIKSY1sFUB7F8ytHg + TLiispgyihe2rIneQeSUu1u/qM1jelOnytL3g7kx1DMbhBl1rQ0QFQcEKfcrIWaF + kQv/rGhXHboeWldWhMYmkv7V9ljW2h4Y1h/bue0DYLgYLaQ0ZeZc9Vw/km2rQWUn + aNS9GYzD8EazxZwRojuhJ8eoGgf3iZ3wC2j+jtb6fmXBK6GvPRisghMWogl1dZ0Z + auNkPu6CDUwYslhWBwOHvo5yp8WZojcVzaUkygnj8gQlGZzBS0XAMDUHtYU2SN3G + ScE/rcRDZGOxv1on1SgwufdwwG+TnxeRS4r0zwWtdrf653jPHvf1k/1T+Acb4mXo + Z/h6s0uBP+ZzKxjRHweDkYE8zhOHLGhpeZZR5d4MqIRloeGbjWt7BVBIA+syUSZ4 + uU23kXJaGoYjebsxYerXicgniqKeKyQsXdjOhzAi6wnE+9Le97edIX3drgtU6VbU + jvGbCeQx7h3RHksUpknjwJsA/d3Q8KxqDGZL3ktT1pxn42NrSwpMv12/ynk3p93S + XgHqKjx2BVVf5WCe5/7hwQePcg4Bgj6psGud0JpcNe+/XWx7861k9ri0QYsa3nka + lXMF6sU8MfZO+NzA5iOaaZ1XVLG8K9ZaAyjC7xN5/iwslrYexqnwJQZAzQZ1uVY= + =s8JP -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:35:51Z" + - created_at: "2026-03-05T19:17:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ//T2dGbD4UFidMWh3CekTAD9X2XBl97rQT5q+xQvKGicyc - FRubJ0SIIO94rOkiliW7P5kv4VxF84gnkQ5IkAhQxQ6E4hmlu73CbrVvNkQlAC4k - 7FBEm3RDFD3LujycOvFuKA0GsrBfQONSADN2D2NRQT/H1RGjwJCUXI49gu3mYC0/ - H9qBJVGnr/pefM3T5kXF8Ck/wd4YUhVGb26cLAX+TtLzzMYEv4Oj/hHYKPMYEebh - NnCeNOC093nWl/D3gjZAkcglWNPt5liH6JGn+pUcy0EaENyWVybNDLC8LoJlp0Aj - ca6Q2yTSZN29AWmlUhXYPS2enW+p6UalpityvZ6qZ0CHxKsR3aLMAF/qrWEkKq6s - gLJviNUo/CeudZnJc4MI+xD5TRmI1PYi8DmSlpsxVioUoryx3Pn5luDNCWZ4baMp - 9ALh17P0oIUHedLrJuTtjlP59jVL8prUDMofJNhdkn+iDUMlwRP+d/tm+ywQqsA7 - vPuPnVGeMuvuEmgaCF4cq1ort1GbMeHP5c+4Lze2J0wpv7XA5lO1gyEZMwEyFlHU - YT5C23phm/vq4JK4RCEfcc+sCSje8CuRa6vrW84Np/HyJrdtrW4elopg82fd4sji - h2ONsnobJwPe7Kgf1NVfI61vnoZzh+7zERzlDnhldWfi0Xh19q69pAjCm9OG3XHS - XgHyZzUlN9q5TMKYY87D4Si7EDl2pwK/WzzE5t6DlL8ur0a0PWm46IObozDUFjOE - WJPf+lSyus/oaePss/r8IrSl1GFL04mmCXcfwsQGvVN/iuWiMZJeu1HrPDPUenQ= - =ZV9O + hQIMA46L6MuPqfJqARAAl0Wo1nNbckg9eG6MQgqEOp56Gq8XND2/77Vx5duqbVC9 + xtkc/Ggpb+Z9cueyXg84zWRzPBVzcAjfk0GYD+sd+h8Umh/l2DiGT6PrNdzcQRUn + +kMHozFiVxbtQ5xMAyKggnd9+aByyue/zFnNSBiO+CFFLvjx7y0MHGl5hj2cGa8M + rx6ggxpumZ1Z4U6X4+yxmyVRLgOM1yN+fSQPCb4x/BK94KnSf7asuJQuBmn9IWfB + l+ChwhtD73uQne9DdqRwzwaOWLcEzqSisDkLZyx1rYVNuw9/wvFw9ykFCX0ixbTV + 73ZcFUVPuC1CZvVjIXgIf1IUeGjpe/2vbRCTrIqS0eBBO/QaXkVg3Zps8/Xq9u/f + Rr/cZFAMenbBWSQw4WG8jFQ1q6HQpTbQrTTh4xuqpqffIgvD0GCz5MwTQt7hhu0M + ucmWqgAbyJEGAX2MF7aopazeA3OvVc523QYcvILzBnd6Nplo1ussaCBbYsu60/K5 + u9/HjZqfsWM680xgqNVq2RY3S4NV6wT6lOBXbzydEACMN1i7q5HWdWeqLWuQs7/0 + NRneTsbj+uQBey4663qGo/lVHEkdu1r926KKVDOgMZ6gzSQ+B0HXsUBR+SU67V62 + t9uJOgYzvOvjj3pHP+LLKBfH0IFPHHYZxPxxKMBQuLDCPVYd9t3v6Z/2k6eeQuvS + XgHJnr0zD0N2DoYFIVe05tPNgIlxu27Ow3uBwz7TeAVN9zVJDwd4lNrVyZmDjkdi + AQKZWJT1I6NSvSiW9fEeq5RgE1GqNzzqSJ3ClIbaMJOCQ++Akoxs/u/oPb8oWyM= + =igpJ -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:35:51Z" + - created_at: "2026-03-05T19:17:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAXlsLV41D3Wi1dHmyEC6Ldx8iztLlzbed/xPnJXEzLhsw - GhWmAGhbqiKpJX/1J0MEaQjXPsMdd2wj7FABkVDSzEt1vxj5TCDmRxvLzSFvV9Mk - 0l4Bx43VTjdeVTL5hIcwci9tsgno7Kucyk+PXEasMoSdG8QnKs2LNuJInrggc7cQ - ntfE8zH/NdMCGzVRJZ8+AerF7e5+cHkZzXemrvUb230mYR0Qi2Oh+oCDLZ98DVYq - =3HFZ + hF4DQrf1tCqiJxoSAQdAHYVIbbrT91Nmz/d6/0AILnxO8ahT7pzleg5AVwBWXyww + 6d8OzNan8TXdVpfBpSk7wkYXluVj77f23d1HVPcao6Uz3PfSq1bsY8KvRn6mbW8m + 0l4BjBZW0rediEg+coAM/GlqsgI318AWgqnG4M2LaBE455Fggyp6CUHzMgkazi+5 + TtI5+4gqnGe1VFij5PjO1bttF3Ox2TVW+Mg9xporPBo7TIt8/iRebrONSOrcpsM9 + =/phd -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:35:51Z" + - created_at: "2026-03-05T19:17:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAzX5C+/vXjJK5oXH8H0eyx05QNU53e7KpfgY5xFunJWAw - qMcTHRXKMi+MFU8+DJ/DXIX4bWul+NPYP62qWRzNj8m9U8Xkqb+Flavf1XunDTsu - 0lgBIzTlMXRnHxqqvqBTzmhUo4f+W81wFpKH8gg6CTb71XWYhdwDKYSAQ3p3jp4Z - ccgVC5TOBXIuahaH2W7EvRzhFDpAlvEV10iCsx/G7Mq7OUJQKEjvEVwg - =mayZ + hF4DzAGzViGx4qcSAQdAH3LHhTQQBA5lk6X0A0N5ikQz2W03mpGBhNJpD+XKMCgw + pwguIunk5DY4a8m2TM9+v4fFBzN0rG8DMLSAZkVeNr9wagxiWwNFngFko+PyVUtR + 0lgB2kPJp/nxwZNQoxO/ex8018GvYoUeY9ZxhZ21w38ajrYWhkKvm/NCy05B1Zf2 + AmigozP+GfxX46pGjv0ynr9lWJjGqmK9CSVT+XNCF+p2sYvRINZemTiZ + =+gpP -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:35:51Z" + - created_at: "2026-03-05T19:17:46Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+ARAA1OSmmu63L5o4BNZoos34gy1cZS/eWlANZgGCcYjlfS43 - W2teIqa7tdvBVal+xA0DNw0CxL7quDzkY/5fwR2oFOYRIgaDyzh+IrKzBXSMVmnR - WXneDKpDRR9L6tiZNrtuNqgiwfOXddGmfuNn2ks1nT9qTku1+l2BiwFxievvR/HY - wxuqWmYNo/QePdm5y8cJbjCDj0loLzNuf3I7DBhsxLVndNo+2CKsj0GzKqGKvGm5 - EXaNgwoITfYFOtvp+V66YyQX2DkbqkiCpJzuBOxoNcPOwgjEZThxu3xdDqWd/0Td - PZBXLnLDQiUpRG5PM22Nf6h9yJN67hzzvpo7dLgslCVOwqgbOSpVdcrRVH+hrxes - sTnYluFVHzvCaR1Zkrn/DZRQ3EpBPGh1YR830jqg/cB00ZksZPBTZQbPy0ss0mMX - JETEwLIZveSUXRZGu/Kq3sCE4wV+4vbag1fnjpvDQrEze9ocFd2MZVY+2y7+bpUz - 8DV+806y+TAZNuvBEW9mRrIY01Qnjx7dOpn1399BZcqiQfAOPyWmPylLO3/PhG2s - YDHvpy/6MQSonftizjFf3cdASpHoO2Z+jYYEsr+BapjB1gugNUGzY1SI05hOYMeq - p/ut5aU9iessa6UTokYsNlsydSzwWQgBmbum+d4Dn0/F2JzugRTdrahMWIWHoOXU - aAEJAhADccfgfSJzMT89s08GW839JCMXMSTSoNom1jJv8RB6jUAsxHw47qPWDQQX - YAdhIY2djDcTmk3T4HlYnUoLudipqqalTamX95I29RTh/a5kCFdpyjIm31xtZQAK - gJRIsIrSXpAc - =0yYb + hQIMA2pVdGTIrZI+AQ/+Is2gTh0SzsedsONHEztm1jJCZdjxN506HyxQFZM0AJUe + zohG/242J495XMTJIdRyC2dEo61NoLFUSLCejJhubimrKxWxvLABn67SqY/RcUOT + NwAxnzzN/aUkLwtH0RGrKs5teoJskW8ISGcSbjPHrTIIAa+8gGJsmVbWpSSwsET0 + 6Bg1annLsqbgGwvNs/xqaZdpwU3eqygi3yO9VgMzk0vzPGU0t2MlRZrRHnd+cilw + KIdr1vkAwQlBtH8z/Uf/DLjCaZ/bw4rcF0gP8jIkOUb8mAk7Inrj4kBiyPY+eFA1 + pgVfRZCYZZrDrmAxwdRNO1+d5I+f0afQkuGPOfl3cdI25eHmpGP0tprWyAekN18b + h21BI05ybXJUXTgjZaYmiR8QTTHlIkAXjJxTPfkuYoWw8qvw67pRY75S22BqQRN8 + +LZda256uf/sBQwZC5xx2SRB8xSoqbGg1u4b6T4RwgdaLVZGYnL2j+lwaL/Frape + s10SuDFmQamquz3lFk8OdyEisfkF4z13L+YPL61uxuF67OJeesM+Aa9ZvHVQUO6B + bg37mwSibj8OGVXiCcOz0YhnaEezbNk5lyLWBGAvOPCE2UR0XyAyXR5+ybPnRiy7 + HJna6OSPldxJc398vovjyRZDegfzLP3hEIc8Uniqh6vt8Rey1Ab7dS2bu2YEQz7S + XgF1qv+SwU+6hbDn7InBeXjp2desOxwDoWZcHngNGJJESE+cvwVkRAxfOJzqAgV0 + IkXvhs5UcGWGULAUAnbtNGkVR0zdMMPixmLOouvW2Veu4WOaDmrXsKwLHE7HovY= + =/1qJ -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:17:46Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAo7eJx5yu/jiNQP4vWQ6CYOUHMosqrzOa47/VFyTaKGow + sHFcw04n2ETlYCkN0qGZsASDv+7VXwo0jeWmhJ1ogdEFYmYpbYquPPQ45Ts4B285 + 0l4BI3HFe8Fhz6htf1ys1e9WlaINYFPjFnRddfwDPlQenIluQiV8jd4RK807ocEf + DbsLSh/qWVsNh+cQbr9uWmIxqahqhiMLkyQIpprhFBvNV7ge8OR6PY7Y0FeALlzJ + =Mkml + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/z9/group_vars/all.sops.yaml b/inventories/z9/group_vars/all.sops.yaml index 5f738c4f1..3589945df 100644 --- a/inventories/z9/group_vars/all.sops.yaml +++ b/inventories/z9/group_vars/all.sops.yaml @@ -3,195 +3,204 @@ sops: lastmodified: "2026-01-25T19:52:03Z" mac: ENC[AES256_GCM,data:6JXc+K8fmANf22puWyllV5wVSxZSVnN+U7GM9lNhkxbUBM4AaIedIHOXz9zDaZh/nT6onrW2nhKNC00kWziaddOnBxBUCWUk7bDGea6qJMIk4GfyU0f/xX7mHpgYorF/KmQP1uvNNAryn7zeSfS8Vk27GFDPbBO3GvYlOZFUJD8=,iv:6X6uf9obhNix/qLrpiP3bw1CWM7dY+XAEdfhuTTmuVc=,tag:KJHK1Hc/uV8DOw/7txHfEw==,type:str] pgp: - - created_at: "2026-02-18T08:35:20Z" + - created_at: "2026-03-05T19:17:37Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ/9FinixdNstkOoY60J4s1cyGVohPL9QofBZuVxCpcj3N48 - AC6v4dm5Dd89DKBn8aG7vGPmkdv/eTiYH2L4ky/HDqlPd9NDpQ4SNTwWCWTsojmZ - 2xO312iCoN+EuWCmA7t+7fnTAMvlt0VtbBiYeVE4DNIJlhIBltnVjFZw3mJvTnz1 - hacOpPP01TJyOQhcQfa2I7Z0CovsJ7cUX/Z+eg62MiMPa3bK0nSyxnKkucQEZjnV - qx4oL13NpfomjZ98myyAlHJUSJw72vWgAR6upRwRK6DP1m8SKvKcme9MZLpZrXuz - tH0ngQbE94Neha+HTRlytV+227/pj8/8DmWnNbTcpwTdcToiRFEj7HFW/aze/x6M - 3FGgk9MUTdWnYgHuDx4vSUsi+45OLijyTPw1RViJcDS8/7oB40Zv7OknYExwGr/s - 9ogD4kwEDJ2EAYvxa7leRqmGsppH5X4F7nMvVq2T7CHIN4TLd295Iy25MnwdQbBQ - AzwTUFaN9nlp9qz0+4hGC+8+SmuaTwkEFeF/55O8htlcTLOkJgxDOOt0lJIUt5FY - GKpRzsaQygJQ79pPSr4Z+T8Kx8PiWajepWTB/hr87qBFttTTAuXk5v2fdl23jteH - 0txFmTovHlhQPb1cmHXkfaxNLiow85cS77xTvegLdIO/uBF9Fq3XyAFwsmy06PvU - aAEJAhANnt2ie5GrOrOmxTF+SJASieNoLrCidAkkYUQLdehTSmFthrRmNCA2DCJn - 80DpbsirUaMP/nwlPO/56cHsvarpGyKD4VarnlfYynyTOY7X+k8QykKedaGkuPWh - En1zjk8gDWq+ - =tfhu + hQIMAxK/JaB2/SdtAQ//TcWYrR9avzZVfc/5hUqUIAQkMf5MZz422BXcOie/rHlA + J5FwuPMENfiUi5gwJnr0Q5qqPgqtJXtF28xXTy1plE+S0bXFL8DjTvkbRXcfxKOW + p8kg5COOkSot4Bvd76kN4jLU9O/HWbl6WEvgMv/7Q21kxwBYYR6zUYKcYtKIT8Nd + f11tEV8SHfVX/+5CvtXuNI6Mef/OwwCv0O8tCU0zIhHYrf5dVJpO9i5JwzoaVHAm + dH7u3uN8gJhrmHTle5b2XeQW2aCr2NGneNc4LzS4gd0iGF43dQtVoWFLkbUJWK9l + k98WAFqYmkaa4bPF3lnDEYBKse7rKniW9dzl5xWe59Tb21KeLZ2+wLsLPWffKlnQ + elfdWc4d9t+UvvK6okB8NmRisDAfFIoqRu5NnG8YCvF+U3wPXSU/umNIdp9GgcVB + aef+apsogE6Wh7Uc23Cu9NwzpmpQ8aDZfFOs/+r3+N9fS8sRIucplA9p5W4T2ARh + Y3ESpvhg39qhiXgSs6IJO+YAtRQodeoAq1FKFs9pnwpw1Px4QO1KAjyFwTZnTOhj + fE2y42GlfJUbAQTb+yPJInnfuwWS/Ebm/jRWNKgQpe6uQ+bSl4ffrT2s00fPAr5E + S7PcjIKWyDMuW4Vff1lMFxU+W5I0+j2ZrFXU5ha226aXP5O1Nxa4/rNdO45p9wHS + XgFcoRyYsvO7/vAV5aCvTZfX2KpCQ5lyh4+CJc3xevpWvxBidZ3bbgpihcgjpMYv + MBU4NXn7ihd43PB7bVkR5KXIol33pgEd2pUBpTaMeKqycF2mdXKuBOV3gDgWHec= + =n/3Y -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:35:20Z" + - created_at: "2026-03-05T19:17:37Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf/UkYYydw9ktyDiiqXN3Aeyy6LVM8hwVZ1JDyrY2ncshyu - Plqtq2mh1HLjKpmIWOL4xKAY4Chfhn8VG9cODJTWlFV56Zmt+wZmgWtcDfK9kKT8 - 3dXzDPU6xCEs8RO060xztmBUyf2nk4tDnZVfc90kMZhFXuRyBwdEZjGO4GVRYwlM - PUAMHERptZkWHvEfoWRxtjOF3EZ1OP+qLvwphE8u71s3yEHK966TPeklq98oaU8F - Lch0KF44i8eNBdHlGpIAHGkDZlbFmX/Ls9plbpuZKtJpHVNAcs7Ugg+3vaLbl6D3 - 2eUiqtl4s0YiVAmVcsb6APvLvNPX+K6ZHjVxcEa7bNJeAQ7/W3AwMOFKzrhjzmx7 - z/l036bptPnc3y2D+9M0ElV+jRLtFPXwd+uUV4+goADgczYqmJtMlr8kt9cREJZR - +3kGYZNs4h6331P4Hsfo7gswtm/2DP4vfZAiFITQ9g== - =F/iU + hQEMA1QflAioE8i3AQgAmmtQzIOViYV6c7cUBnpwYHaI2WbTo+9zftn9dWE6jtHM + PQpWTqZgvdPiP9yoKmsya8TJURJKAfe2uaJlfZDisI2qwNcc8rRm9QDWUCIypTWY + Hc8dqbu+2e/Oc0wc3g//zvwbaNR03pluNMIA3E6RUlxPv+IsKtjWg3KftsyNSAnB + KCLfVQE84wP6VYOjjQl1VgYjh3I7ralt6s7z/GHNmRYXWdmEIGz+yYsjW4BClKW4 + AMwmOHOXtFgRe21pudK0Ks/duBaGBYvewlHClGMRs0UEZw2ompPyoEJwR7mTDEWu + mhXel8iUCdrynu3nCf1TYDS2Y0Uuqr4H09nyn5+L+tJeAXd2DHFnzofOyVaGEe6+ + +B/iY/kT5w2Eh+ufqQX3VVIugar7T42WCRbzD3gB+f57LHmndzqYytL+COiPpxnM + +WmtlXW3yTOrW5pYcxgSlYn2sCx6tvlWi7WjialxhQ== + =X4dV -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:35:20Z" + - created_at: "2026-03-05T19:17:37Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJAQ/9EMcF6GnYRuaTlGpkXhnJQZY5ALyqgCbSMHtnRhqD0Lyf - sJhjNJ+d1lOQC+gsN7kxUU/sUZXPThS4q2OkR8LUigAHSnZezT18ppOko1cUR86O - KxvAtOYcg5HbmyzmhLZdrdnioZNPptXaebVRMJ1SicBZJPYGk1dvshQzLDODEUHZ - BA7/t11E6Wdt/LF4FSS8RKFeA4vveocj8L9h44DBn+zFo6D8FQ1AsJzlGRTFtTPK - 6owDi3V3JxFIv5F+W+nf/n8Y83e8lqlOva9SOxPpP/3mza0GT9MkN8BtgodPSWN0 - G+k0FHhew44CYWRBw8r+wVZg3ZZ3vQlDXft2j+ETSOBvyErha9ABo5uJzXcAehvW - 3JJDKqbs6LJr/+hgEbuliEM7g+LOPoa05cQYBDk/p3j7zAp0RwohHi4src5HykjE - R/JwYeSuVsN7i2lO2An4mKge72FIIi3Xo2gX5tRwtkH4F8BSvg+IygDrYLRNc1Zm - K4cxEkkYjgazSPJWvIRW5RrLjwjo9Oc/nfgZ6Bz4nto9SCn2vBx66QVx/jc7qoJE - xg6K+sanFqVKJEaO45YXrvIv5erp0umbyBam07WjaJYb/0Ww+4nLvo/4DgOJDFMd - dukNSHcOWwCfw4pD+EyPaTFCk0OoTN3Q2IiJacgP21lp88DQl8Ex0iYibDlnBxzS - XgGXy4KYls5DrKKffxVpnz7kqsIFEC1OoKRKy1rDqOwJShHr5/CT2l9Xx6q1m6jU - Ev15853Jwspjo50fJ+vG3NwyMzDlKpT+2t3GxONxsIakqZZLbKbmfbddm82IyGQ= - =qv3p + hQIMAz5uSgHG2iMJAQ//fZFO4nJpBthrHtnY4hVIMRyJqmtdC4cRQ9NP9Czst58s + 8CE6LI7+TQBVIllndNimr+672pYdkoGsDfWxJdEKsb2MhKsevCZwowfu5wnKJK7p + DPq7WyhYjJsDWiETV48CuQVjX4uw77+2gZDIINsB/dov4fXxqvl0hVM8nLafMoPQ + sHgmoeb/U+nly4vMqejM+YuO5oOWYexNKcqQpAUZspfV409lpvzK0XJNysDcbS4L + nMfCaotJg1OHhhO+Qt6vTf4ZVDiRm7y7cuv2QS+FP0/4KSRxyF3W4dMSRER7ZJvZ + xLBycfr6lJnhIr7hqCssq2gBBczhHUfdZPEgkFSqGkyzCITwxxZpm8O8QxvXaqtF + FpvtUQTMqmP3R8q/LP3+gWV1UehjYA2e94h5P4hZizhuW59n2dytyltSGOWdqHp7 + IGS1OdyeSIZ9DrnU5cpgsytj5lJjSFyi5WjA071PIUfq5TYOTNT3RnadSoCq3sQj + lGASciJtEs67CXlbweI/tn94zdmJRTG7TKpSkDXr6EonMgUtUH6VMckMmskDdpqt + ahAqL7x4JJvrLBoIyj/n/bV5kqN+UHl1EXNIsWW7ZjCzlZhJxFMBFhBZ64EHT9UR + NFVIbuPC1jfggZPjhCLponDXSDYeCYjQb0SFqYKjRknuIb7Hcz7UDfkPlmYiA4LS + XgF3RyZNTm2kvD/uY7UWQZsBPBXks1ptcoM/OfZBrhVU4qqDcbdQJ6L7uxXddyfL + AvdgJNK4bw0O4FOMUb3aPck22Ft7gAhg6I7/2ComQyiJOx7KiDSwsxluxwxb4Rs= + =yW0H -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:35:20Z" + - created_at: "2026-03-05T19:17:37Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1ARAAoQSSLElz+wP/oeIBdh2b5rDOyShN48BXJjM7pBzEdA7q - iFT069Xayv3PSPky9uoxy5zOBoAhYoyX3zlIJF773TfSpLeVI97g13LQYC3DdreS - JQnMug7WbTiB2a4ij3kQdMAnL1yrwT5Q/F7byRCeuZ3CDARfx2fXzykMU6jz7imZ - 72pMc5+Qoierry9ZPgYqRK68t1p6nhHaiVLnfJ2lCzbpCqktiKDqLBGskRP6oPSv - WhnUUtuYAEuZkHc+Xq5/V/aoB4+Qg8lK7mLvNbqVd7rtBJLURdXHst9WwgQ6HQ2R - lTu2ARy/rBdDaV6p1nYZAh2j8kpOgXltxYeV3ys15+hRuO1kib/r8VrqApUy8SGM - eTnfqJb+xqMzgtRSkRfywEZwiDPLVrQ25Fs6xjelrSHxSZF/CzGDV8ItICrgynA6 - gTkZdAMcv1Nv8NDmQEGp8DMyDPji+OiKKXSaA8OQzAO45kMoJUUJY8PcB2mgvO8X - 7NbfZ5CjQi+a+EFgrF+k/c7Gh1sYZivUseRT/H6F+UtiUQBVMQDavivzPcqL4Pmj - C0VArlRfA8URFfcEge23xgjwgu2KZ53A4EnernXYjyYuLrrY32qjTVui4DMK+yf9 - ag0s7eBG5QHBLO7eS07L8S43hyWNJTU1AP20Plx69YyGI7Kw9nDLaFP9sskW8mfS - XgFOjDDHZM95iClFgMx1K/A3x4l1iJDVr3wUvXd76aj+GhBb9Ag4CUmhPrhUEpdz - vVrdsslq6u86x9aBk2TqxyT1s7euoqcbt4NNiSC6RoHxfz1smmkBd1Ahf0Nea14= - =AHeg + hQIMAw5vwmoEJHQ1ARAAiANJ8DyIHE1fymZ/74rvkYvEWAwS7uQtmpkxOAO5/2ol + tEFaieR/JTv/NtiBv9wblutEftIJV+KKSBTSFkIEH4W6S6aULfkj4kcn/74g+xIr + VcBt/VfiV50Y61nqJQwFirgVBBXS7dwuvCkqK+rBw13FZTLHpin6MwgOlyzh4rkD + p4+BrFEpFexRUyTomzgoWHmSmcbcJgxikKRDNRlFeuVyUMrqHCEipWboLyV/mluU + JLbNHKb9b4kc7TTJxUj5ERNhWWu9AG5AXxPWz89ytu0obydRiNZPRgjg2273h90A + 4y9g6YxvBXVIgWmJOq3LVDO/dnwOQdr9P13+Skd6m9qCudPu1r4B2ZiW3Ptn13P2 + 3m8bGuN7wLLbD1YZN9nDiwFa9uo9IRfKAKqBW6p/JGTyKcdmi3dNf+EvKoea8hNl + cfMd/REH9+Xdt89dhjRraBlgyrIwSRihpDmq3jb4s5tl2DUH2CHd0Qcil1hWukk2 + i7hkXO5tLgBWil8LdEP/wyapiHUrJ/lt/Ek61XI9y2sgQUp2qvo+KUl/z5QTggFY + JKTy9rCXJQy0gQ2tO03dE19OQ2XLVm2qYI3/HR/YZdYxlpMQZtozaAzfhF877nBk + 8U5TwsQs2gIRoA7/dXGpDwUA6aUiKp2B7R7uUrua6rAjoKrhGuOZcnaOwq9qf77S + XgEppiLy8qF5MRFsUBlo+FLn/LBetEZxYGmnDfgX6qIfpO7YOoyYv8TAPDF1Yv+X + 5z1ZVLb4EKSMk/v34p7vYNIWMToHWkX1Sg8s8QRH3edzOpWTSXxZ4xtBPwucQTw= + =mESU -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:35:20Z" + - created_at: "2026-03-05T19:17:37Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAfuQXRw5B6dnjfLxfs73z/BEsLgDEfrbosoJ9mK1mZiIw - Y/XVjPzaIEAUzSlNKyPzoTuBENQLgvt+94Y5jkN9T69ZMM9XfWDtnC0MmRsNccKI - 0l4Bgy4tYWNOCkdOLoScyGa7D91f9cG7gHSiBbhFFC+mZi4ijO3Wtdb53kiUvpVM - YgJANTVlqBmdh91mZDt+5C1ortrRVqb3msG5gLbaLcITmKHjHQg30gVyyJ/ybl/Q - =A6tc + hF4DerEtaFuTeewSAQdA73wzEYVqC8sYbxVexlNjIPGhJfgGxlYe+zjcDOfBbW4w + pe6Dy5elm0bS1YQ8aG7mdP+dvajYJJD/oqOfLdrnnGXMbdia/dsNscR4ldjXTET2 + 0l4BV6MzggUd9ztkZwR4ztrPRCrU1ZqVW8X2E4H1tN2JSs2M98QYpUYBQ2ljWmzw + pIN4aJsq6Gp2mApLXDo9keiYyM9pxtk5MIudkg1iSsYwBWugKZuDTzv/fRX6cIQc + =csXR -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:35:20Z" + - created_at: "2026-03-05T19:17:37Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ/8DHmd8fM9ZIvmtojUf9/ArkGm4pbpyGMNs2z1lFbMzJ5r - Rav57JzpzzYkNzG+AeS84vHvUyv1zP+SS9gq61nwIje2IGHsRfEOji49UKhLgW1D - iq3k2JaageV+sltUadNzh3mfDdg7EDBqRa5NnJuwEFe2QKO+ueBiBTtyBum1Gnn5 - FGb7Ae/n3+Da5zewbX2jwOs8EdapTPkrcm45L7oIY+0BZHMco8slxdu0Oh5MAlAv - VxYx+S55MRTA93Zk+7fZ1dkNYo3BCVdLafdhb0wJEtwkvdMGPIOi/ch3kzOaZqQt - fx/nUJMBlOfzuE5WLSE6xAKxtHmT9a2swmIFtQ1BfcM1eJsETdwUPeiiHJN39JbP - F44p4DwmuzkjoDjOi9Wu7zciyZVuvpBFu0T2jRdZvfZqHdhlEQYKOBF2y8cwSAnj - 01hIEpLdpRlxF0ClbEc+RKTSLH+lc/PUE2EHHRAirqVEeh3N4jxliIJwBAbrR0Wx - 6kiAMqaKAfz0j9pmBnJ8EVzpjPBjV8yrJzUPbsF668snworlxKB9dURMOzYOIfWj - /ZfWw7PywpvriZcHBAAAlL0dU8NHysC45PUdCbNSDb2hmf9Km+AkC6kPUBlKfB69 - FodTbf69LByIYzsDUbifn0ETPoUMtadyaFPhfcS30Yhr6Z40MsCffks8MXkBsA3S - XgHDk1JUvZIUID8kuK0kaVhb9PXE/VKTnxdoZ6nycppntPtz8fq5U6BL/p0e9Uqr - 6F3kut9J9GIcGny+hDpFfOTCCvwPaQrO9ulK57U428UiG/rUAPZ/VgrDaTp0880= - =ckYX + hQIMAxjNhCKPP69fAQ//SGHWa2BkIFIciLd/2qPJ6c9BvlF3pcut5syUBzTc5VXW + 5nTXOC72zr0Gc+npgAOC2vt2KcRl7aGuSLgoZ+hnicDW0y0dcUJG1tn8A0nTFb+w + Xaxc8SWE8LhVTy4584ww65cIWDNIypMrSqWRLTpNp7ZTMtrQYL6CXwtAhQ6p4IIb + dj8IYfJ/QF3aMBWAvsSdIhhKkZ/QRjav/AfK30Y2aex6UN7zvfsKaUfsV2YpDEG1 + UuFU632H2kh8QIdePDBwSRrSp56bc83vzAEO9toWBnfKgb2DFayq4Jwo9n9mpbuL + DHJEOlBnWxTyfc0oZaRYdE/8EyU5N3qYYGK406fs5qcwRewiC818SqD0KMnX7wPW + uS1lMumurqDy1QCoB+Eju/zzvZpj01Ib+mXkyH3Y7aVR3M25UXVTWKa2o8fXXBlm + K71kfigOaFQlJFMshO/ssMU26hfMfDERe389UGmE3COBCANSbb+PASz0c4xTzZwA + GqhKYc3JFobIByjInpm0rUe/FElbE6rfJTaFVzzDXDTQmB9/ZN8Bh8TkUNCheGdJ + EYWNWH2YT7Fa9wNPGIJR83Sz15Dwezv2o2OyNp5c7LuevWBpZ5STwPDmE2mACxGi + e1lSbwui8W5B9/w/c9I2fv7CbSRFMmmoMal+R8yyJrmPnAprr8OjOXQ7hs+n6ljS + XgHa2pgfsSSOo5nYGZxk6mCj6qKE2fKLRszDksDAuzgfOk4fcfDrhAvZkBCxX8FU + 7ATL+cgSqsFSZBU2RasPI4k5sT6Ei9GZgDqIDIRLMtoT7vh2t9nGPZPJyOzRRwA= + =6y8M -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:35:20Z" + - created_at: "2026-03-05T19:17:37Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ/+JiItjEyzXeUJTkw+YS064j8iVLd87CSjGSAsiH3JQFSy - 9v4XxI0x0WSPORi2x2rYK12L7OQzj9omfHuroBGAhT2x6hMjTzPhGt8gFWNWhdrw - SX0pq+wFch06nNHqYWmpLcKRRyU10TH7jkh2LLbnZE7I5WY4PLhtGEAOuYpGb9qg - rvqfo3xdyncDvC4FITRGZvMiFsfTV/nyuNc0hacsgFLMUQnttg3DxjR2/Xt48q+p - GFpxjcQIf1BzTDILmn9ZBQBd5R7KjhpUS8GYkulAsm042WapefaE82Mculqpjsny - ler8oo7kICqLxZmEAdGRJ0R1k5iLAvmH1ccgiRyz1wStNYkP6GJwRs84kdHPWVrt - tvQnvxNllkncDwD4kYj99tph7Vujho2QZ31H7AReuytGmw0BykZQMELIHs+N7QUY - Kd89PCW9q1EkFWDXG09PFBaZQn8Z8Iet5oma0r3XU3LCARmZ/rBKUdwibhr1s+/y - s3KTfm0sO1pIQivsXEIjKIDT6cXFQTHlPhzWoqsgN1uqqgprB9jdQ9Jq/PvOCeUb - JAFwTu8S7gnqgnHnbKwJSuIYRU6LM0pXXgjBvcsYMbnwSXuh9Y64/T9roc7S2U11 - nrx9P4o5eHl16oaSMcjCbH8J5Y4H9wOutLHisjMlFcWNnCUNUrgsx13+a0K9xjLS - XgF3DvoE0qn5i/ddopDzI9wry/IFBs1PUL3mXER80m+P7TtDfC2eAOrbI4ddam5l - Kzf5nOMhJJnZqNbdbeZKpTzciNXWExEChU5D9wFwk1/gDTh+X2sdbqfkuSutnaQ= - =3L4i + hQIMA1Hthzn+T1OoAQ/+M1f7Nrxa6kZToz0PjLTVQtAa5l2KS+R7fjMFtVsIdRLV + hMTi9zSsyOS2mHRarkS6coZcAkYc+e110aSf1FOP/hAiWN7R4M3HiOzA3Tx6PBQx + 7DOhQvneTD8lnV1969ZdLMsw0mI0MBX03bNJ8U85Fr867ouX98KXV6Q7ivcFQV8o + K3nC61HbjTuP47tWOw4aUTEDVL+r+NGPAXezTPgDECMdC6M/zb2yrruIlXZVAcMu + FhFUrtiDlQOcDY6H9+y1/QXCLT2afUgso0cqDz0Ww6amN1BV4F5dqjAWZlNjOxzp + S6HwevSIFamqsmZIjmyhxZ5GeTnuQW8tl0nS/CR4KV6yEYD0Jp/Znx9nJft7mfk8 + aY9+W87wNU4BrMF+mLxSnfdOItp4Q/RG/EgYYBIH7yHYlCnwW7FjQee0Mw+LQamF + X63x9NClEpUGQx1+bldR1ih6AkBQ6dRIx8vnpH9D279NRC8h8P1jxjfAwQmXNK10 + d7l5RFCEEZxYNLH7F/3BaYV1zSMsM/5DT69+wyZ6wJ5W6NNEdnfkF4wp1EHL/LTE + N6f4aVh9ABVNm/sl5/qbRGTWHUg/+dEC5Au6QivMYVxhlvfxEgnjJ/m++e5ERJTt + x+PXE1bjdCIFw5rjM5SwNjUN72FiqtN5LIdbfrZpGcDz093rH3YO3wV/8QHSQbnS + XgE40a/kfrLV+ubdp1XX5lVWUmfS/FZXg9j/XCcsUvEdaWXJMWPb4BeS1Wcaqi7X + xu2AkZ3Yc7SSx+jRhQ37R9Gme54HdFCqnSWyW1sWIL3VIz9Ykr4PtvOGRsIAfz0= + =lgdK -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:35:20Z" + - created_at: "2026-03-05T19:17:37Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqAQ//fCWlMO+TZB3lJc1OHjcinFxvN2B1gMbH8AnLsuDC+BPs - delqAE9b1VHlZRZSnbN7c0Me1kXc74w+AojmWTD0pGZE4u/fp98g/R2TIs1yFHWT - TbHJIK/xlpvLlS/7UCFcigso+S1Pzv+HN8eIafGaYovqQ7YRStgHRM4wov6CIpTX - t1PesR2ZHytRtGnDwR2e0PYeaKK3LHIxeZySLzQ3sK8LwtxKipjHpCzStrKe8A/B - 6YcW+7TCLpuDAZiZ5hZhxZOd1RPirnwTXkaQN4gwQNlaMMMhDl69I3vIVUmrPxRe - IDDE9azwgzNEEd2Qrchm5TmYBOKQpF/yvs/6maETaozH3ugBaAAPVqumIr2Q2lGi - uFvR0rm+AuQSjxJ2B9fYdzgLWHgwPIK6vh9zdsfEFaELhRZbTD34XML7MpGMN6gL - Tm38smy2hiQk5QepGU/mowo3RyzCbSKIbmCnqzsCFU0YkWAGDkeLa051iBnRT6tX - dnJ1nYPPxenQ2x43aBvk/tqfoZcHI4YN5CoAfXgZQ5UL10vHgMum1T6QlY+VFnFM - Da42TEPtavUgxggKrmCE7T2o3r/Yt8hplUupUjVeD6BH6Y6Fp0Z46dl3TCVLKJvJ - 5GXBuK+BzUQt9pe5AxarnUpS/87hEAkh61qcmy4+8hvD6R/SpiW3r2xGf5uEGjjS - XgEHhqQILpOZRQ4RNGMeg6o9pijibqsRY6qEo5hkXWO2GUra7JjWcyT7Cb/BCef1 - b3pduhEwtx+gcw6O4D/l7ruRPhpm9AihIXKpQ41iC2FAVdZYxaxPqCF5HgSrtnE= - =HzLK + hQIMA46L6MuPqfJqARAAshG3kn+e+O0fU3VIdI2zI6wmYB+0CfgeZmAiDQR/VLV4 + Lx1qYGzQRV+nq5/URbBuPqHTBCw8aGiKZ6Z2LcTA8Qnp0tYsRHK1m5q1ZDb3oOi3 + hcZ7JUiYhzb43rgattSlu8rr5XrD3MZM3HD01z+poDhJFK7zttB2MnJuj/sWKGo2 + AY8KsKK8KQg5Mft7uyERe4ds78fJq9gSVIREPYfpSxDKLoO1fgqAW83zhelNF8cj + NAotL0pZByF4j2PBIN2IIJsmeRzrC/YVN74gC12eJR6nqU1hSy8mxAEMJY+YJPbP + Elzsp/C46TQpfXpp5ZX7syZUNGsNqEXfJrMuB+Yw1AVZRe7wI1Nhsxw/PvwusOzT + fYL6phNYRHDdcoonC0O7LWnc2YObdtEAqTvBRskhoLldz5n5HB1MSoxPI/ax4sGg + C1c1jkezlc4vABViC5aJRrFYCEZYl/hS7lzSKcSDv12tFLJvC6CTJXuGZAgUvusn + +RyiwkcHLem9bI+xwTaYfov3gxW0Hl2uE8AHepdPhneRgXzIabDol1iEsb6DBQ66 + KqoBuG5tyJUWxG78e/moabrs1qrjqZMClNdNoKQanjT5vRGQHPHfkuk4NXXaPgtE + SR+/fnR2MTjQws9RwQV+s0FL2z1vf5Q0MTt5TlM02woHp0airNTW7a1tesgdpuTS + XgHHgveDtgyYD2rlcb4XE16w1nj/uB4pCnZWWj88alqPMT3RdAo2k6MkT6YPwTa4 + ocdFYOIRYPgeIHzoutAvOsEGPdUyWTYu/ezidKkRAo4wgcdXr/LWn+Hd/ehtt90= + =FBeg -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:35:20Z" + - created_at: "2026-03-05T19:17:37Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdA3zKjF0IpFaNsBU3l6pklLR4AcyexBff6RBgKOOf+lSkw - MIcUhoBFEFejpG+RlQLAMfyp4Z8+1mTCkhVpUF+WVMwUuRk4C62Yfj8qjOco7VNR - 0l4B16tIDFvdffAmGF9KrqrxmiFR8VkP2MR8h6rLbMvT6Jpc+HTLKnu9jRYPOTXE - SAFVlMn39u4fXCd312AMtxKBYHfBrXQ7pEFOXD82PsWPK0lBYwRure8K9fs6FRZ6 - =xQ+D + hF4DQrf1tCqiJxoSAQdAxwjhhKZfKbMWGSvnqkLozGsPpnMzXQwhAjTnwj2Ctxww + Mn4Nf4lLBbhzBdHJcdHoKr+j3uO2U3UkAt8NcyOcPK63PpHhHPx7osPyI/sio4u/ + 0l4BcVEHLdBkJ81wm13Pmzsl2JQSyhy3skvT0jfVsZBo5+K1653FKHWPQ7vbXJ7R + 3x1PpeWe3+sTZE4GASTwPROHyHc3nI8fcYLKpBhgXC8TOWJwUDyZ5ZtQPM4T84bf + =MRlP -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:35:20Z" + - created_at: "2026-03-05T19:17:37Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdA5XjXlnbPli2BAfwDvnMkPsREtvwkzaJq/T1XBDrqbl8w - Txis0tn5VDvtn4LmV2uL7IwnElPHoxii05JNmbkhIvR769384LSZLgeyfEzFGR3O - 0lgBt8JuNNDqAcxzFtw50XyfJyQbUKSCUHK/nWEmpsesmInynDYVxoVP3NAX8rdv - WR0zvD/5ugNiFqLbWNDEAb+0tVdvk+45OQKCeHcHtdwe7prc/DMNzCrx - =RkFJ + hF4DzAGzViGx4qcSAQdAbKZyPZJBt/MimC2KsMklS8jqPAjbmkrRXObmh2ZPCVQw + DOlXtJl5f8bdRlpUtxwrIpmlqD1zU3l9T3mZOonhPcrNJjISZVl9UVjPOEZ3oSH7 + 0lgBM+2R61zXfhG0VJhLEw70st+39CHvLuJNYNGkgNVQ8ySx/k8Ii3V/nIpmBGTE + cJatkb8RzhMK8nNDmxP4W+wE3dX0FoR3vQolHpSGqJF8ivsHY9Jswz6n + =wlDe -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:35:20Z" + - created_at: "2026-03-05T19:17:37Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+AQ/9EQe2IwD4XdmH68ffbyc/jDr9UbnjBMgAGRuMZ6aPEe2V - fPp4eBEYrY+Ez2xO9R6p/6YsziDOG/OEDvyCC16tFFewCXZCtpz+DJbM70Lp45jn - TTu26eb/8sllJFBiRU2mqnyhXag7BKwpVaiLIIuARIdtUcuTTX2TEnHHXNu3wVzk - Nsnh+cSjKU5WqQU704WZpIrxJ45yiQkxdx9aM4apjPJ+loWRNT1OwwjcTRWUyAld - Ix8GyRgAoDRZrzawqLwYtK0crxglJwYY5GwbGGO5+eWDZfmuwxgyApIB2s3ntdmK - fIzvYpxs12SzkDykNAeggYewo0eDY2w2szYHy5YXqXUp14+hZNDMDRcI6c/0B/Gp - KGBHL0ZSRYKh/2SPGib2xPwsxIR39+d6nQWfUaKZo/fKCaXfieS1MPL6xrFHdOP+ - BzJ1mPl3ufDFCp17yTCZ7im0Kz2LprxIUwKocRcC6rVmad/EclW4Zk8lGKSmCpNI - IfLCm+6duiVgIkIkZZ5oMP7ZKnQ6N2lAiUkdT8JvOZuZ2oLUvJezmMw+681DVlm7 - rFXRtL0MWfhYtF4C+2VOnBKoecQbBAKfspZr6riEXh4IAkEbuhjRKtlc8gYridxf - EhpeBCmwJJe0GBPSxsITtpSFxP7rTBoAMycPGSgS/4qV7Mk6kgVbXkVwKzO7YmfU - aAEJAhARAPHV3mYN7N65PgVUR1+1Pn5OCQhaSLk0JgTgxurS1C7NkVHNWh5mLpqo - HtRAnPJQ8lO0lWjXqUZsHXDGehqqjQVqfVEjLyey0zzBwH4ekyrUl6OCQJVVA943 - s12tDEKSTtEM - =CXbD + hQIMA2pVdGTIrZI+ARAAkwIEToUypnv91qt47E5glaktiUhZRTJY/XeIY2ModOkz + AVnC0DS1WUEXMhl9eStEvItEcO/YS7vNUbOA7MdkiAcvMRKyZjmp/Cw7nWUTVEUH + YGIJYUNWSj7yyGFj8nurz/EDV52+PmK1RuiW/rfA9TKFJwda+jDkHHEMoO1qN5Aw + peVOeExnA8CAzF7QylN9l3Dxfn1oOqHLpRIR8yYwjrSeCwrVxkK5IAn2foBHOAAf + sMi3uwS92l4sv0LTM4yvkZ9Jz4wLOkYr0EmXAp88ikXE+y5FJaBbQ0Li+Jq9PRpr + eIVAdRwVpbA7N+WiX7ghwNimr8pSRZSAiNRmo1KB0tc/qvv/8cMqQpNDtVt20Z0C + /WaHExSPkMcDvMqixohluiVzoZDLJkC+NWi8/ePnrt8CPy6mfEPpgdgukXgVltno + n2kzBaxXvmKOQzj/g56LbZNJd3jFjV9ZnxZ1bw6Dyb3uiiFiSLh5zH9NO2AcoOU4 + 1x9Dp85bOxgMWRZ1lKhzLO8ORQE1pFYgt7ZE0SW9W9+uTAVV9HGvURqlnXvxjjFA + NL743VHNbdaLHd00AN1zSJXDOkxbiwSBGPEPv2Fhb5ZhsrIdSR97HZOgyCM50nGF + nHSJkT3sziiWu2nFQHsJ2PQAmrZiy3uhqU8v0SGwuupUD2ybRJE06QAyAKNfLrzS + XgF8+xkP5CowGwq6JL7X4g0G7Iw+sq0akU33RGM6frT8mjVGGk9JSw4soADA8Gl0 + rx0/Wi7QORJJsbZI38o4UaR/fIlENOSoCxcSRlXpIAMv4aJ+A3UElF8F9HS+Yuw= + =E34S -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:17:37Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAR6jwDdjLSZe/Pi0+/Phgl5OJzMHiKFQZmIZUqR0VDnQw + fcSY0l1NdbtddvKjZWeEaTvNDi7CyT+FY/D38+tER5dIrLaynzC7VP3a075N/czq + 0l4BvnN6Qv0MpHH0XOpKAR/3eYQQso2w6udkurunsx2XFRN455gHcNFOJGPP1V5S + ushQg7O/Eqql+JpO4l/5cU9ZDac/bibZQnKifUqSJSuGiobsNgEN32keiMG8eIJE + =HrSD + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/inventories/z9/host_vars/dooris.sops.yaml b/inventories/z9/host_vars/dooris.sops.yaml index d24fd7dc2..dba092380 100644 --- a/inventories/z9/host_vars/dooris.sops.yaml +++ b/inventories/z9/host_vars/dooris.sops.yaml @@ -4,195 +4,204 @@ sops: lastmodified: "2025-05-29T13:28:08Z" mac: ENC[AES256_GCM,data:SkqMlgJBdM+CMLE/um7m8V0ni04Xi3S9GovNsADrws6VbSWTX+50oc6HtWl+Kj2XugLfp2XpVnlzggCiq3fePsdt1af2+ZfSCue1d+dexjo5Q/gvE/olKlmn6aj5qiosUsLgu7v2bCOIb9m9WiEhlQLKx1wGiqVNQDabiLOJV6E=,iv:NUUOcXtbg+xMHqthipKpRAWLTXda8rup4aCbbP8sVEg=,tag:wyh+hrZreOyT7uQQrghb7w==,type:str] pgp: - - created_at: "2026-02-18T08:35:28Z" + - created_at: "2026-03-05T19:17:43Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ/6A/lgBm+uZNZdRHric3h62vSboV42jMOlDkpRUlpsZgFb - /0W4MH58p9HkYZGyYTJte5XxzJO5AGOXE+4nLuYM8NIjf3UnKCRf4Ccqve+Dv+gM - NxTEj62V02L2jXt4oUGpFw7lbJeG0QzlRkevRYYosu29rXckmojBEzyptUCZ++me - hs3kaCBwMnHlhiSSPsLP2AcBTgKDdK8a28DFA73549ihrJywGAKjKJ+ALEf5fRIS - Yp7pi1BOvFRhGRfbfbAjbZ2fsiKuWuuE8nh8js/oPt4xyaOpfW/XVEJ7nxAh7YrG - aREjX0VG/Ox4fqu2806t4liShmsq1Q6QRZb6CGmlUD/gZNEkdqPTk14MoevUGN7h - 6QT02GLVgikIJMkoDIlYBaKk9IsO/RBJLz1/1JTl8ukWMn1LXvXggsP2GtvAlY8z - AxqMOSJviehzYi8xyJsJWI/xFfBABJewelpm/mUahyN/C6BxKQO4BFt2UnRMI8Iv - smbAUp7Ed6xxEo1St/vm+4gVvS87m9f6d7JNnD+E7BCupOkHsWD2ltgdpfKItKK8 - h2+2EGzdZw6AMouehoHfTDRqsXkHXzXiDRhIxePtL6x+3AKBbN9iDTn0lwKMoNql - qZBKTqxO9i6EkEGY1M46sFoAARtR0nEtyGZGYbUu4tebjvVMDxaem+wez5bFhOvU - aAEJAhDF69KK8aN/0ELkrH/13bmE0CboMmdWNqnkQqly2grMOrf5P5FbFKB3XiIn - n/ow0x1g3SNdxaeuAfsN8xx314hDr0knftIGFdF5YhwnfD5G8NQCDVh9mHhYKjj7 - +I6/VxWIiH+1 - =k+HQ + hQIMAxK/JaB2/SdtAQ/8C5XMRolgR9UkSiIgjExuO7Gm4hzWLz5ra1CPdMSkdcIE + skAzILtNe8SDANB5k+/cOCbTrGvhr6dqdtsw+4q6lzasm9ALh9cHNCL7mw5J1B5r + f2BilsPGsdWnCHXTsfYIXoJCvWA17CmIpQkBsXhszohZI+8Lej0bWOE0bvgag8U1 + LpMOpEOrPZURKkIQMzGOyPAsBTlyGpy3sWbgQQ5jQvZYCKYqFBZ3A0tiBNgsahTx + 8CVI6+kmlw9gVM4j7DOjl1snT+EbmKUzMPC7yHplwtz7OUmSBgVGOsMiHGVFWkLl + ty5vkGhRk+3cC2Uo5ShfX7CD0zdNI1tegOulGwTn05epn75SrBIMEKc+gYUBv5IX + hMtttDhawtdJulDSsYPGntc3b79fG377yXithVQXiHYM8P/LXyo9Bg8BbiMnggnb + 1tETT/Ybx/WMF9jRsW53VazbMYQ6VLCRpUX+Eg++fYhHO8zxGCWoLmRGamIGffUo + xUwpIugm4hV9GjlrM2LF8ra6TvwsFtIm5NEbVx1ongyaYKiqIxc5jRJQ0D0zswh0 + hPmE1vuQzTgkEl+e2xRWbrrFl4Ty9JKfr/qsoMcxAAhH+8go6QAZfX42IYtzgw6L + C8I5lWYrt2iH4FqKZ0i8W/Z7ZeIhRzgDUvX3U809t9+ADtmcpnyY55be7jQk6evS + XgEYcUALkXao6Qr2xY4TCwfx3bTm6Sx+iFe2cWfb8vT8YawIPj73t/WyNBO0fZkE + c16cwG6hvoZD7/NeOaoIjBqe3+Q4daT2vwbai6n+7pS1ter0HmWO3SJS+OR9pbg= + =62AU -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:35:28Z" + - created_at: "2026-03-05T19:17:43Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf/QPEpZOhtJC5/0aHtu7AIyodukKNzeJ9YMn/+6W5ShWfE - M9I7esBz2vLBOfu5YiFhHHbvoSlNL0BfJwLxSStAvRTWSpTqT5hVXWAQgG3dlnxL - gOM7Aax2MzLQ8TQ55sd/aEX2NztacJCPsWuvx+ccnO/oeeC3gmD5OK7bDiIePsq2 - sIdoxxsea7aKNee3+vdm6bgz9XxOcGVP3GaTIq7g0OK29Stx1T8Am1Tn2b4PqlJG - DQwFOdeHj56oOYlxMpiBLUM4OnJIS+AQRXBVNn8HLCGRjOWqZyjpX2oCHvld6/Um - YqSPuUKJR2lfd4hTd7HyvN7E1coV5PnTWeAm7GVCZ9JeAeiOiRDx4kHxk1gwGrcq - M/7aRJTZYaiUca2DdiooMl5tIYzhaWHABkLSfugHLhvF6ouhaPqDD6AA+WjYt5/D - gL4sma4gQNgp3Bj0W3caAWGz0bAeWZgwbmC91xtypQ== - =Nfng + hQEMA1QflAioE8i3AQgAgyq82gjOkSQ49tbq7MaFWq1V+LPI0JghJxiiWIVND3WL + j0ZDzigtVicY9ktJeDxdQhnw+OlInzYmWmPAmAXVa/cr3zIxVIPPNqhOZbtAFjN+ + UEHSpwRbSdeVY+mlUBX9vn2lmKDsym80RAkabOT5RGqp1dNWybPkGHdxpDZJndT4 + Z1jBnDuOeg1TUGNY8SYCY11hiA9IsF/RwEKPqCIrKqVfJjxOcvJCq+oMS7FlcmrK + kXU0a/xINKRMfwvyMSGL52F0ZYr3VqEfGTbgcCIFnRdWKQTnH0ev57+B3unSCkiG + ixJCHxkC0V9681Px+RNz0QiEqOo5uiDeL9KFRMcGNtJeAf1rVqkz12bKL3ZU+DCI + f19vpfiCcFgiFm4/VX5UT4iexrB5d8d+Y0iCh9/BHBoooYLcZaS8FD3Eu4k5QHMu + Spau8+x0aw9/pDzyoGnptsfFpOK5XsD8I3fnwXk1Dw== + =jdSi -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:35:28Z" + - created_at: "2026-03-05T19:17:43Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJARAAyq5soaQqxEhbADY3hAa3Q4eu3YDp4rGwketPLR4v5iZu - R4onr2biENdCqOUDWCzQy9URnNIN3ngb5Xd0CoX0YTi2p5GROnupncqrJj6e/k+g - ia3u+5ZUCJdsvFeHyVFPSEJopbQoAUKd3FAKSLmy3JJ03MzK/74/zyh2O5TTpJJo - eJHi9YmL+D6KsbAdyoazgdDUiLiIFRwuMfsA4L9/m0Ba9C7cDRd93g37Q0P8ASC6 - g8obpTqI/70CJ/49WUv/7cXxKQtPEEeh33BN3ypKeHJe5XfPqirdMZ0HWKwYtcg4 - YCxvVLq0nHxZWNmrl3OO6mWZgV7wBdgBXB+HJIXbS+KxocGdh15uCmxNQ5W+FRNW - NXTOEiVV4lS9wN/6vHzkXIKtZjKLg63vb9I6C7gA/OmyEZuq76Ek7m85Yo/zBPjo - vxuBWnOaGZpGRehxzL9hkEDm0TOaWnjQtSbgUAP3CVdnRmcDifYWgyuFoATOEfL7 - cA9kocqaiAcsCE11zZTG0/khAe187VbeCse7bXIdyFbg6U5TUUaUTSuIIUdGQOvt - AB3VVYTabLcEvn2ZXUB672bOdXhcRNfj6OOfnY9w4uVMZ0PlTWYgMgrcq6qd/lix - weDMetnQ2qdCbQoKxlaI1JLRQFL5jQ7OLCXx3D5nins7GfyPd7NrVAZPfhoBohDS - XgEN6TQAKAOlAbvGqXHKJ1IN4I2pu9/WMZsng9BYQZ0zYRRK/FaCaJA1X4YUW/mj - Bt/3mkRMt7gp2EYMvDZca/Kt3/BpTk8nhvABPY1ZpK+cPYdQ6ZLItlgZt1AVvew= - =AnUB + hQIMAz5uSgHG2iMJARAAquNdHUjkEdTZTAEALkiRYC3mg6srf3zAU1X6KgdsNuLW + ujYvakcOG+K8sZM5iyFL+a+lescc1jc9l1CaebUiES9s9w+0MwgIjCbUCs1Fa5+1 + XBTcQtqpoEn+NrAq1aBeoxj1aNZB1a7Q3rUXB1+O04mQOqDPLXX+D/wsSV6CPedc + HVHxaYkMjlIJdlZroTUz2IgYLz7WioPz7POm9vA9zhtopfnXKK15oWShSj0YyqAx + hzOF1pbn1/GEF++cw7eiF65X9CE2Tfnp8Hjqn9KzfnFGbwbQzLI206WxViVPrJbS + aAq/T2BpjyDV37RHiCeR54Y8ciMkaaV5Ws2/ZcYRnZl5X/hLbEvK7RvI7nqR8jy6 + k8cP5ilrrfwxAhddpns8zcqe+hBtV8T+zYSWLnJesHh07ccH4CHMpUqCpV2Ftomv + Md4frNFTlXOVNX5cKmmUqtZ5sIfI0MuO59C6MRFyXp216nCFfvVBNWJt80NxQe1U + A28kD7TMWbTbCUp1t8Hn4H7iuVRImCftvp8XWAWiLrOS5UkhlBX4gg+ERZeGKNAX + Zl59METwAee9rwV8f5WtI3yiuuv0SFzOpmdDyWDjKaIcRxDwpfpwL7cRUsDay7t7 + 8h6WpOfolp4RfszNz1RA9JIYQKC1Bcse9j+IAprHdsyLaE5eagFWMi4Q8EOadlbS + XgE7veW9DHJqxCIZQHDAEVqDeSxst2fpSlITxdxNBRyPR680xqVQIAe6I7kQgDBd + GvVoNX5NsACbeuLbDQunFRXO9YpOotR2JQtfDU9VP8ME6IVltVd3EsWdcwcCA/s= + =iORs -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:35:28Z" + - created_at: "2026-03-05T19:17:43Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1AQ/7BeRPTp3RXoFHlqEI7c1XEh6zx9w8Jx4tTf+8XMOQRbrC - aQNM6DYYXXeHfoZl3CB22IXNajSPUbAgU9Yi25uMXyvPBKjFudD+Wj8he8pCcfHf - 4UvaL2vm44NTByz2ATybxhs0ytoD546XiqD7VMqy+9zWZt1PtsHQpPRsNPhRUKC+ - MxgDoJBYvEUxI1fU7GpsbGoVqiRyA3odJS7jR4R32eU7wlUZngORuD/HB/gKaxVz - gV8bP4fN4MY+td1HO7j+jXHU6Fyhg8uE1wTJHkMT2b5H8sR4vHoIi4ZpvFdybkyr - LXyAWGDYlkj9z+X5yL33HRzmklNmwcaKNjdtsyVZZjiyAORgERU883J5lJidAgEb - 93cryWbkKcSer1pQkCItAyVMbA3qsX3TEyVebjOvleezeky64txqFwLrZp1DMkEC - NWz0RqSK6sv32r5CjXh85cuvPHTEeoMoDfCes3U9hYZz2RW5D288qUnafsP5cnL1 - KJ5MnKZHC+uI+bFnryrVW5V7lTVx+cmplEnXpHd4jJHsd0IPCvMSYZayeYEVMLgh - xjcRYjOZ7DFLos83FCoVXnmM3R1j5U+IDd3xS+7eRmezJg/chDalwALLq2kJL4Lv - uuhoKbUCJeRnQJ0tFDXbh29Yty5Ajn9aaVXZYBfhSSsuz5CburZUrNNeNl1atqTS - XgGzH/zp+Tc/xFLAT5vMYRKYnfzX930UTgwD2xecOjFrOLyFpyK39EISKGVXrixs - r7UmY+FzpSWHJUmnnU201GhUiN9wFOt7Rkfji50wqpOO+17V0WCNkCT7g0VNyk8= - =v3lc + hQIMAw5vwmoEJHQ1AQ//Uz8hsSKWasiw4iX0d+yh56S9xyfvL7EwR3KgxKnOp0um + Q1VOmjRs+ZpfAJiObl8MfUYXXB3pU9vdSbcRA9rozNZ22zAcfRSebm0UeSd/yfjG + breMapLVMXWJkyPIVE4PyxzmyK+vscDxlXBkZi+5y1RsaE/tmfEA+AShHLg4Tiky + Fzr5gEa8Z9NnN7n0cGxM79ofbRszdASRWgEVWw0jwl/vp82UMI2OOkwuhcIJg2dC + L8eQVaWmavOqDyky9Aw+Znd62vGapA6BjU8cTVY4xpnzA/1TgaJwIXL3LTmfomam + wpsh16yOVRqY2SwrVc7rNy0J7P33zaxCXVqFr8bzc2+mA+cQKlEhsHmJUaAupkIE + bsY3st6LeQySGKt4+MDo/hU0NvvsB+lwauBDs5EE/9xchFmLsGH5rVcd4Mw+PVdc + VvrZKg+Jdjudi6oirIfcQME0BDNjKTuPli9czqYWJ/Hc7bYGQ5tN8lu4+KemK85K + s/qwFnZgBDlmeZQHqJ0tSQnKzEDbKlMa9oeEg3LLQ7HQ8tMX8QHxeYZI5x5FrBSr + W87NVDyn9orUo/c+mDreGZqcdXHUXxbA+2q0/pQjV6Wn+VbZgJleLeZfrDlS5YCX + rbTCdPJjFaqvVinWIES6BPwZ7+VXBPRXCvv9WeCMPPXD3ntVU0XBEz/8rVDKBfHS + XgE+NuNonR6+01Ws+5DSMytt8nVkA7aVytP2MIndA8niUicYZXHwemrQ3xl4NjdZ + uGhgxbXWzc5/VJoD9jPBQuy7e6wfXUESP+zL0vX8aRWzL0mMrn9KLZnuEgVT3qo= + =kO2h -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:35:28Z" + - created_at: "2026-03-05T19:17:43Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAIEO0tbFB6OOYBxmF/P2UCVTAD+L6Hr39CSdDWKzvPREw - VsNmdXNy1bcYSAb6qfaoC/XgqK8AprbOiIY7JyBKTRYQaO0pQT2+u3pK1ip+qxOW - 0l4BtF4uIt58p1c7PmRHoB7z0XR19lVYgDHQ+1+897tzuqO1SrsjHLvgdfkq4zf9 - G1+/Ikj0VQWPRmnq7xSZXmWrKnX38p7Xj73DLVfVXBGaV5UBduGUqB954gUyvJBK - =SRgg + hF4DerEtaFuTeewSAQdArjAPG8JwI7MSVIvrOQrmQfodbFIEbEhMFXOg2iqkjyAw + uocceofmFL0joy/5ipLgszsscncatvfnPUHUsd8YS5mLdztZh1F8S7WsV80Oau7O + 0l4BthmCqIxWx6mU+oHqAcP9Dv6VNS8T9FwMoAY56KfxfJgSWlguyxlPkYU28HVC + OUkj5/4AO3pY0aAed7pLkghZDaJ0WZoTscQjbxQNEjYFWjOyAgFrnSgj+K/vrkw8 + =A4YE -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:35:28Z" + - created_at: "2026-03-05T19:17:43Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ//ZmOSeA9yW2oNYC9vYUbtDTt7fMQgh3qnWP8gw1A+QgSO - YhXR19YpxdJ25w/LyXIY4Vl7gZ+At6PhIAfFpxrKc5i2R8zo66AewT+ogAWAoZYO - PUPZ+ZglYdp+bQc3RjqJ2etkAyUSNPUH6xWK1Qr76/345R/w/atDC+Nx1D3FGA/9 - IGd7sAhmLqdF6L6IzdlwEVQFY+QiOJPEVkqRMI9y+c+rc6WhX2wLkQqRWXcUPoeW - ccnKHY/eiUTsEBxkQWTJ9XLySmcxtDDfOYZ382/jM3uywKL279vtv5bwhm12kgWt - Is8kqCy30LgzCgiciUfBegRvpYtQmroGGIZiI5LLwC/hpaMrL/WJdlmIWiKtMXq4 - BfElx9rR1qjRtpIxf5TZopq6EbiGf0LRQnks4jNkDNIOasX/aDLnTA8zKHfnQxvc - NGXIcFT0X7vUDwOjX4uwzaZotLJD8MaafGGeABMfcIwuya8dopNUD+PHXhd6PGo8 - mKnHMvzYMPePb+3tCzYaIzd5VVC9/pLmL5uceXvTjFsQ/oUbQ+xrnlrDcRJst9Dw - HADZFz0w/fGT4hSh91IS8XBkh6zB4R3r7PdkIHTxVzYubpjFl+BQBBBNrFv9H0Rw - Wzfr6s+Pq3jyWyRcDfYgP3PbIJ7WIli6GoqaJrCK1Sx4do64sGQjzp8fmwl4eszS - XgHQa+42Sltp9Rt34uJXu2mgGR3/jaOTZ0vutS55f6eCf9tsW9RrwZ6SvKL61rID - dlODmp9WH7+a3s7s8Vsjs+l92eYHKghcusLRS69b5c/IdQimUGYVFV471hribmU= - =HCPT + hQIMAxjNhCKPP69fARAAjEZSTaRdyN/yQygLsmkzpmLbWAQtC7pDA557HUvnUy08 + b6Cf+tl7B++uPpnbsJiGDzqDAa1keK/Jj814rME132Jlzj/lRtb/Pj+uBymOnvHO + pH6V9DeGesPmONa+USwClae9PIWwKEm17/mcoQl4RYsGJfZ1LN5wCKceeOy05Fh3 + GTugvI+ujU4ssMixr7mN4I5/sMHgHvZVXs8KG4uvU7IH6Sa077Mf1qnVK2+e0SW7 + q/hkWYzZWQIeiRxTtADdFPVvXYeSPOCu4qOAj1I+OZ1zMyglXypyecgNhqqLwAUS + kwTotd2oGkHvzE5DAQlmQOPUorrwAsXKgNgN9RegwbN0hVnACoivYDHN0a9U7L8Z + 2HfM41UpJPEJMOkw6/1QtaYNHRNe2LKTscDHyudcRPLmRFLrtp0WJwRif/SZgxZo + mpsEJdtmIP5S0QXuq/bFc7tw/cj098fJUsyIhggisHcffmRg3WuMIzzgOEMsxr4q + cCiTryZWQrUqx35ak6H4eESssE+X3BFzcx8RNBnITDrYjWgq6lQTnyz3AAwAa0Vv + Xk0M3tDZVf2wwrXeSOhjHv7tRN4hXsJRzZ/6pFFgIx59G9iN8mxc27IIhpR5uXO6 + 56rR/XeiMgxkQnhsN0FuR5OInVu0ASlH1PBTHb46SfnOShpI8FuzFbi6/JZgcu/S + XgH1g0GfNdc9YRstfg1btJKwuhrAEONpXNwywtelTkwEL+yObdr3uba15WHY5ChU + cUc3hMY+55PiefhrfdpV/iOUxemS2sRwAS4z+hQem/XJwiAn0t6l9KAmtAz+1mI= + =XOhj -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:35:28Z" + - created_at: "2026-03-05T19:17:43Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoARAAiMOlwesLMz4jqDnFtE7MMcNOu8FRbmXgKlvxlt1K0GF9 - CsXU5KR63L2h11Nsrnd9AvDJZfMjUbYavitQYxrHfdmP3Lp+goQthqrA/i0MnDXP - frTcOCRymezlPkHP9QxMjWwA6KSkKbXRIVxMntnrtDTxvpvdef/VT1SK30LrjY2B - DcThKVwX/f0Den8IG6ZKrZOcdvofSUm3tq+NOh0S8992Cf3ycV3+9Obrxz6Fx01/ - PAHoOP88BlNa1K42fNjMMYXzOLxoueUdDAWCHnxiOrqFcn8/q6IuieB5ZO+bC/+e - U1ixKAT0QZxtl4xH+XVRowscGDxxmFu1AIPa7vMM7eBCQGz43k05W3OosgTbRDjU - XEF5ct77mkkAtVybidVxwSRRQKoMi81C7z3Y1aXN+5KlfFzhodPSqUPzj25nln2+ - pUlt5XBFmZo57X8GQRpzXIWUinckIZvIjT1IH6bmk1REhbdxaOPxsOHqfqObK27i - mDABs/sCq1lLcUhyQx2exqct8hc+n+4iW81BTqKZbnK5+7tAy5R/9AoJk7zfDi2r - qn0bbf2N1eo8CKlGtmibeSoEaUQVxEEHI3TqTqdfvdRpf3sune7lAkcOe7LgctJN - iIHphZuNEZNR1zSgjJOjIoFdsK4F0DGV+3NRLjvmjyl8LeYA3agnEoZvVXvq9N/S - XgHi/ztVdAPjjkYPpEr8IzabnAN1Ghi7NWMqQ3etvocsK8AJ7Kk9ITG0IvQbU7nQ - qgQc+IM0UrveQWXtks4iMJi3LvmG/zYr0IEl+JE1+KFlH3uf1XlocfamnhT5uO8= - =ySAp + hQIMA1Hthzn+T1OoAQ//SlGtzjerCP3Y3iDjM5SGWzLIQi72PHGfznvbDjyt4WMw + XSptcL/TyWNXRxlaKZQVVD5TH6bWwTi5ykhJNHpBWVdcGo+g+ww/7BqaZ/C6Md3R + qN3DagIqlzyqgxowVIMGpZpSfnh3fiKNY10CnUQWu74LTDG6MTPHA7zLdKVbVnWo + HFM6yW5vPm9IWoMzJjKRClaJDob3LsbEctwrLVYm+M/3A9PVDM5ajzfuBwh6rpPH + csn/lyDIYTzK1hhp68UDFLrYf3KPDNQEJ4/GUIJ0f2QZoLgaA7S1NVtB/ovh8VdS + xQJx+ocYMKP3q5OTqZOfat5LDGHid7ekAfIioerGCd0zPZ2bNC06+Pe9RlSbs+4k + H8axqdHeyjpM1MlA7mIBZ/HiWz5jZNosMygpiBnZCd8ovM1uoiLYDQMQkQ7szlTO + ddJ1QgQMXqeE1Jz/zr+uwXHUaBlIIpxFesVGCqFGaIk3BAjNpY8puzlv+4zhsNu+ + POgwTmdZ2gQdGqZuIz9H7y5vux0L/38sOhx/gWGlcBbXDNLuLbAil0krFOgmtx4i + x8mMh6yW0i3I51vHHwkrvyjNazwwEMaBR11Z4cGmJegg8JSZLOb+CMAYN5RwQLMb + zd6E/BbBDt7qiCBOAd4WnuwVe5lyoIlSTZ7AVvc2D7NIQGrVSX5p7SPp1MpZVOzS + XgF2HcgjBMfJevm0t5N/A4yjpQt5Jnn4HpweIl+z8iPH/RCXWqVFoWEHJ1OMIiVf + GA3F1PKQ10GbWY7Jtim6liAyq9o4FHVuo+EXnvNejn4fHanLbpbtJhy+vUd8XP0= + =9Ln3 -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:35:28Z" + - created_at: "2026-03-05T19:17:43Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqARAAsjNQEQ5fS5c0nL9z5W2vYZafXpf4i8I2aW9rztu3hSaW - 5bWo/Jlt166O89Bpehng7z//dzqzkTUCaU8WMqz9F6MVUySwmcae2dkqhPOfj387 - hC1HCpfGF533ZARSCF7tJVSTikuvomdAEwc68ablVu2eVu5Y/0xHpVC4Qigd89Xv - kFwvyCXqQCRzY8tJlIefgIRPA8e3OPzTDMlYRllZ5LfIRfYAnrd6SzRlAlGHV+0P - ZgdhUy/uA2aQkSOotR6aTYQnDb1hPhRNkEI67Yg+h/PNVxjzcVQ4TkiuDPQOkGcD - arwrMmS98qr7AJquVxd8gFVZPd2l8PDIFCvre2n6PpTHCnn63Ui7bC2YdAdI9DoH - 6lKzGCka1s45QJy2hPRLju8qhCF8BXbiztVy7NpcM3MfCy1K+8BMKkfXFW8ClOEP - Kx6BvpnQlP+uTaZZQc4pjmo73symuQFzaaQWMmC+vNEp36Wx4nlhatwDtLqIJcvd - zPcLCyr2yDbY63/6m7LTr0d/ImrfRFMLepX9ifxugVsfc9of408LiQZmmnmBgFNV - 4gk7Zmb0SfWMwrkNwdzG2AiLosiHeKZHh+aUKM2hwPeOW+RiWpgj+t75Jstpl1IV - stMYK64U9nCNzw7ipyK53odBy/mfT7r2/5Yq2HY7d/ZQt8erINcoWYJkR1t8xLbS - XgEI6TkUb5SkZyTaAJ4owjIutM9XU2snQw+pGpy0TH0mxGI4BuYdGMM7eNkH0DoL - Tr8HvPBGQSTiA1W+FqlppfhQRvvl3xtjG+3zJ6IAD3nvL4yBBZAsluYpawkizzI= - =pclF + hQIMA46L6MuPqfJqAQ/+KwdMtBPERLJTxmH1hfLic9+8+vybNjZz3xPaiL1/O3PS + 6UKNr29A/O7VD0DVwqzTOej+EYltiBy4IiFyJzsIKU924rSyR7ZxYuui5en8p/8O + /wkm7LJSTHk2iTHYXZlFeSt7ba+9//QXfCbdRI9LgNwANwlUV+PDH+S9OsZMRZqJ + xuwRXJiWN1EGy85yWpJtqQT8UtT9PNNNiciRCcXtI1WfncPi8scvQXBrXmXGkrLP + 6b/Jy2JNRaBw+ZtshdhN3D7pFr/FmMgcEAIVMambQp3OZG4VQPcTs4MJbDsif/L/ + QL4mpU9QSFCIje6DyVuaIQ1FDrQxqYtAWUMsA68ORZgrFQAx01DX1uDgGKY0RbyO + j1vTVfzqrV4KPMW2f6rW43rERo5Y1/1+uRqkG1j5JdAyT58Z57dhySp+EDAHs3Fz + JWMvfAbW8LWf7KfhZ+MnOXPLTHd6UnjlVyZZM9b85Lx8yE4gdn6U3VTfi/qpAPsU + 233kSdIlzCYKZZ/7Jog7nohALHM6o7aYvjftyBaYAjJpIAUU6DS6YzXfKwAzeDsw + /5u4qh6bp3xUpSOG/NSlNrvb9eOJmgFmnCv5BMQOmS8QQaSgH2MAQOlV6Re2b5lo + tuqSNRErpvq2FtA707QHl/J6qGMioqeq5CDgTWhgT9ySxYlOOgVjEysXrH624zbS + XgGGLSE4s0VShf8F9e6Im5U5veh61+iyEZ2L73DtBQIdLWo6c7PPYNJJsyZ3uy9q + 1L2Iw17xdga+LCzyGhDiwyY3IAFHS9IQnFDUHDX9k3jEWoPnO7Z5IA7FMdWYws8= + =7FYy -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:35:28Z" + - created_at: "2026-03-05T19:17:43Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdAsmm2N1l9cuLvam7J9zEWzR5+KtgB80FcF/znPArrY3ow - LTx90dyPOuIk4m5Z2crdZ3ZPZuBCrgOscQw6hQHrUrfZgNkU7mUg043xV7Vvw8k3 - 0l4B6oy2wpYGIKRpwx5vvRl2jjS+S5jJfbA6qFjjX+Dk7igtPnRlkHzIFydua5sI - fe7t7JLLfXnSAmfrZ9K+oAztuPi/ZdSZChEy0EdYbp9eXRqXxJJdl80VPvBsqJym - =ki+W + hF4DQrf1tCqiJxoSAQdAkKGcYNyKnku5JMpoogj+GJlf23OMq9cfCkYQtrF6bEww + jOMwwS4vQlO08feLBGUw19w1185rtvSiul0aBZDrUp2uvRjIy6SyAvunZ5dHhD1z + 0l4BOtHH7AK89m4bNDcfV9c9nWkWvzkd6IzzKjR7sflsbBJZ356cS9Wz4LsZH2bb + tYjjfNAp7gtiOhfVG7+DwU3pMbhmSKLeeghSHsXPvaq/g6Fg+tNb/KmcEfguJyoD + =lxzC -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:35:28Z" + - created_at: "2026-03-05T19:17:43Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAOJjn0jLimaBSD58/8fCBc3s82TeveQCisiU4B7g3V0Yw - 5pZ2aLiyraVC3NnjyR5V+55jNp5NJuvN2l2WNSF5YwDhXy7nyTWxd7DEbp7nKFfs - 0lgBlIVnPtXPlYCHBvVNBsTpSlQPB5ewMr1MwckaVXWaq0RRcqNq/LKAi1r3+DST - ZQ58xcnmFU5n47Gb8jHY5g1W81m45WuU0yqujo6iFzxMt+3x+G0NZy87 - =6cGO + hF4DzAGzViGx4qcSAQdAHig4hyb2xvFShh7kQIgI1CATzaHZP9Th0/h/f1FW0DQw + pzfQYuXr96VsgR7uLbXZdQmT9y7ouWvlDtlDqDeOu3wTXLoDkvQot+FHrkLIM5LB + 0lgBHLvA52eXR7Tbiw8J4I75jWtc+ewnzjw1XNLgRpFLadyD8dSrD7+EhHKcEi+b + 0d0Kk5QqjsC/Rpl7V+YfPWq0gk3ms4RMnWXta7Qw+uSDcqeHzzFXOzqJ + =75tM -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:35:28Z" + - created_at: "2026-03-05T19:17:43Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+ARAAjaOxUq8HUXrYIH9JWBVgi5fIkOONCOrgaj30fvm/CpFu - IZef+L8fpmWwBBNAx4UWu2sfax5GH1FjTuhGe3b7se0+gJpWDb7oN29El7Gzr69q - WSoGY0RMDrydRqOGYvMCAVzX9IVa76wf/O3GXZcWDb5CmSM1RK38LMjGyKqK6vM/ - /kz0DiXBrAyvcsXmhtYqoGK6PwclUiaLzrooZB4Vtc36Jwk6h0h1fQlK6Nj6Foot - NO+3p0ZdSErQzpNWMNVh+bhvZ4K2Wxh/59l8wNwk0XNtKLRJMde5ikEuKwdcNo38 - +n/mXHGQbhCPrcl4CpnP5YhMVRBKe+4leO/XVVmHcY10ThJEfRB476RdtjQTuQGS - ZSZDZb41s35McmW1EffET9pSLGayxuQRac0LxximxFFw+ZlOw5A+9RTN+lky6KjN - DZiAKHLC8z7u+USsiMmUSIUgCj5OkpRhdqBGf88StIICS8nwO7a6E8Mvml1LEc8Q - xMH+2XRkNMfCEh9YuYh4gSv95+MIPMv2f/pm37TYurtD0x0gUD/QAyBYqQuB/cWU - Ku/PeX8W6OaMCN/6tCtnAmG7Cv8DyMdzlWjyDcfAIl9eImMVWm7HLnJB3kjOC40K - WQU5JJ74VgXisSODbEAiExbSbLrGwO1exMu0v6Z2eprlw/bbr39AvFZvI4335MzU - aAEJAhBHPKbvmWRbL7/PPry4R2M7S9eqkDOvH68y1HCliKB9vWonorI4+HWoMkFH - HJk11RKtaQBpfe9nMorQJxjYEp2n3MI7iCxvPgL08lIhybLe5udvOo/E7fZs8cV+ - Jm1f4UpCbIwg - =/wCO + hQIMA2pVdGTIrZI+AQ/+IRTNV78c/srbVxtt0JpliN+ZHcJPeHsB/deCZicZwKE5 + WbqNmOnWtJEt4wPRK6mwUsCiiowX9Q31X7IY42+08gi6+VBYoT/MapwqnwdBXoRX + fia5OYdnAibJfvlC1pgiykAuS8UGLh4KAMoA88F4pNRT8+AtutJ88oF+2l73nhvA + 6VoHTpjPhN4v12WMxKXE3jpxnr7Wh9sFMaJTk2YHRgjf2gQafP2DZ/dsmqVhJG6I + 0GtDtZNxuonF+gRwah9wlGmohF8dA4EcZF32HEDfFPoUtpSdcDYJ6eflmXZd8hN4 + UyZ3q0O6wkCCgSyACITVvr59W9HjzxCdRpb6dqb4VQGk4sC0mEST0qtAd7aSrO9v + LHv3krq/bcECNNHXn3uMc8fz5RZ9RWSzKMOx3j15UQg9J3olDL8S0krUNTBnYewR + g10CNcxpW2WXyHE7budJfyOVfRYKMtg3vE320bDEIjpVUetCHT0Z255yFTSKbz// + rY/w3UtUjouwjGU4+G0SFnspY99MNQxB/Qbdc7UDv+0OEZ8bTrar9p+SkMbdBn6X + Or6CN9pYZhz+2d53mUp2IaFyG9tzimS92UB4M4jNoEedO7eTx3maT1myVmDWLnsZ + Ch+APzymbWp7AE2TC8i4mr3Ty1YwxMd1O241OgO4LpMl6n1VbfEwva8taTiTfgbS + XgF2xuSEnYSa70nFbp1fBwQJ6ZDoiUCH+KbwbNDdBEYc6i1daXugri2lCPXZJydz + tOXu4MGlRaC1ZJXFfjNrw2rWbMRralKxLdPHeOnkiE1g0EKUuw5fVXfJhtxwh24= + =+RGB -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:17:43Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAgXkUpIKbVD1YqizQm5NtHKTPlkzRHaEyha74e2Hat1Yw + NijeBoYgzp3quHy97lgpBQl+9qslfbG8Qcdm4c8i77L0DwNzROUSWQw3Q58yI4pN + 0l4BQZxv39fof+ySJkMYFO+87WM6TVG6h9cUXd4tXGrGqcnWsupwQvOFe1/L8QH9 + Y8IHBk3w7OKJGFt6t2SO54jhA1UbXws39qPNJ66/LE3T7eX3dJcj37LvOJ3OEjrM + =YiA9 + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.10.2 diff --git a/inventories/z9/host_vars/yate.sops.yaml b/inventories/z9/host_vars/yate.sops.yaml index 71e36618c..1bc049faa 100644 --- a/inventories/z9/host_vars/yate.sops.yaml +++ b/inventories/z9/host_vars/yate.sops.yaml @@ -13,195 +13,204 @@ sops: lastmodified: "2025-08-02T07:43:00Z" mac: ENC[AES256_GCM,data:Irv3y4/QbofyM5BvE4h/T6zNF3A6oTjDssMOcqmGxUOGpqL11Am1DMHBivkUgEYe4ir9N0kvPUmed1XOyDwImrl06E1mGAT6hOlfVSYKtZP0Pwvi4VVeeP6IAYN56zu8k4X8oIxv7AEfS3Fq94sJ52Fd3xDPPCG4aVtUXxxDuwQ=,iv:HdqbgUVR0lIysZnnPkOkW9gDp9G/EOrHDkwmQH6LVKQ=,tag:amVPLxjvx1Qtv+v27SGtGA==,type:str] pgp: - - created_at: "2026-02-18T08:35:36Z" + - created_at: "2026-03-05T19:17:40Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxK/JaB2/SdtAQ//c5gVekJL/ey5F1Cbm5+P+f3wEz7I8jaCz9NGhIC2ltHg - 2H1Nw+boJ9hcNFY+VB64Ynr95Rs/e63iF31RDSm9qtpiuRAJ4mhMuDn9eqgr9V0b - dcresuuhX2Z+F9FhNxHaplgu5by584oo6vAfHEOtS3PrYRd+a2FIARlqD/qrdik0 - NH4rqYF5Q3WPNUIipP2Ef0RGCgQaW/HlS6Nnvw2yzS9qqWYZWOXND7ooWYh1IIuO - crZObpcpSPM+yFbsFdnS+nQk0MkYkFP8X4xlf8i5YfHJZStEwLKoN4P7DHanc+Cz - 8HuRcqomUhv0VrxjeOkzqGxsjTx+s6TcgG9le3R0gdqw9HMOJZVJx715zK0QPMd/ - 7QibpVX0wpoj4mfr1SQ+QdacvXsS8yzdHOFHzulnii8pZh9juSENCHYqjysUuwhI - PlF8iDMXa7KTGEXMT9m87HwbCIpxrDz6ZE/P6PFBAcrWpeYfW+Th4Dmf4HBsMpzp - GqxLxmShdIqTAqrZYwrtbQaH55f2F6U9ASfLWHO1x4MqevkxPNzB52vGefOs6EKe - tgjMLSRsbcZG63DcHdSzRTG6IshlEyiMwY7gr2ZDJZSGe1PAEtmpA8bdm0cnxudL - 86xjxZGQ2ue+tvdBtAeXT5YkipxTf2a6UjBi5QL/78+q6Mh+JJvEaQLPrUlfbr3U - ZgEJAhBQrpXtyaUJJS2hpxs93YwopIbjumjnmSylsqyz52LOh36dt78NT1DPdluR - GFrP1KdA3FbUwREmRLIjOnHvt1OC4/TrBOXbCzcfXXRD/rW4KRlqpfwnXPSYcf9Q - 4wmGl4gV7w== - =enRg + hQIMAxK/JaB2/SdtAQ/9GH9BGLJtNngNAZgvMQwfcoWTtJPmUoZVtQbpz7wb8Ktk + fmwlQTKi9984Dtw2LWwhPT9fMvTg0XMuR6G94dnn56QfUnjQpG+/8yK/npKe3OUS + q2jhZtb0fN3f0TltPZGLMfP/ExNQ4SRXRybkbJdkNyMe+ZJB64xheLL5Lg2sPNW4 + MzjkIFPqQExoqYztqatGBo61c/sE5diQx6tlhD44jDGRpWQZCSImE7eadJRSvV7K + 2TQCXYB5MSiMgdfj3YL8DNa8vaCSQRVYN94YggnbGzrbmQdLbbsleFiy1tGVboCP + lhDXPLR5bhrwNG3HIu04RigAdg5TLwpU73SetgQm9xyMDc2QRRrEq3qC0636Y6tB + 13JPWW/g4XMnS7ZWP8SHAUy4RqfZmzYCzr8vujEPRIraVFOArDZ3XZpJLzD8POuN + Y/nXGCqN8JecTrlKaXwRiJ69KEkWBck7lWpNU3o5sGVPrGHb3s12WIi09UeFp98F + OWJhYWOiqdb6YIwNFt3kWolJHosTfOMkljvZk/ZkSPPxLcddPfSKGDXC9e5Fq6oX + XbbvIENFyVRhV98YqScdmpYzxh1onZRK4APUR/a/xNBG+YbYMJL/tJD3dYQYzAio + UylkH+q+++73E3gvWqFzTI+x7i2USEDIWBkXA4g0K8Qn8LJDcDAd3wdY/Ko33wnS + XAEO3ReeLVempqElPbI9A0O0eI/e6Y+HDjTcAXPlrLFDii1iJLa7ojKIvGNE1j0U + LwDtJUrKtXmRQkDqHeFil4yTk1ryVX3kRb1APkG3B/pdz6AFj+ngVZLGbyAG + =Pxkf -----END PGP MESSAGE----- fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2026-02-18T08:35:36Z" + - created_at: "2026-03-05T19:17:40Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA1QflAioE8i3AQf/bULAsS5q8zweT4ClDPZk8A9PV9EC0BOcIPIdfY2dGcZS - I3tHIanRNHBBA9xckqzudDugbW/IYyPdo0KNaW4f7wX5RnK8pOk7Ok8YB8XfmwPY - rYj03wG2XcGoXgPnYCh6GWYLLVHsvA6fYA8M1IPa0MC1Q0AGQ+saDYTHK5tNYaZo - NoXCAoETi5yR3gyrc0B5GVxnURG35VCyP9rNeO8CqyeinXHaMjPyzRMjDnfNEjtE - SCco9qgU4rn/dTiX9n9N1xYpU4/Gysj5eEZB1MjURgOagJDAP7udjlXWw30mevDF - Fx7H8diueMYcxMwwz4wrmEUYP4SIYkCVO4se/5KfkdJcAV7rFrKcOo+nA1QjJSZW - 6mVr9yMN6jjMbB5l6WFxjGOCnmKEJhFueY6eFqyLo0bzbwGJkMKNQfwwxS/9Ncab - i33DyJgNu4DBkXkd3sR94Zza1EpGeaKHjIlCsYY= - =sseb + hQEMA1QflAioE8i3AQf/Y5/uw5e9xnogpsNwhXTnwuEbuhaSKlX2jY66iQnYK006 + 28+bZp2tLRFHvB1V1WQKS9p6pByCELoAEOSt06tPSAq6i/Y1FwGtAGvmb1i3t4w+ + JTG6knQpAICnmJZfTZnDaEaXG1HfUtBJAOBw8cvVWSVbH4DeMVuYFracz3UbKJ0E + GWgWL+EiDcb04ND21dK54uHVgW57w3sILkCFJG85MxUDHFpiSgsaz920Y3aaptQ2 + fv30flnf3CUd9IsVfQ1nfWNXawC/fO/w9QJivyoC9S+Dm8r3eeRZuqcTypR+HbeJ + wx8gj1su5pAGu8ce0fuvK7ANfLiqqVDxG/cj0NafatJcAT+6IRapPAuPf5YGPBHp + UwA7jbxwlGal/2r/KjWAM/K8lfWwk370vFX6SDFH7jX3aLB+XuqWkDHsnHtoWH26 + WqSJsIQWuwUwJqvWDpWo0pSDcKYg7xwNiRPiEbw= + =VJjN -----END PGP MESSAGE----- fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 - - created_at: "2026-02-18T08:35:36Z" + - created_at: "2026-03-05T19:17:40Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAz5uSgHG2iMJARAA4KzhhXCFxP3YI7efSEn34qYTSV7TKtpPm8HO0dqyCK6O - W+WoeabEoQcW/VyqtZgpP54F5UrWyxxeY8qNqOHQDlu9+/mLzPoxj1FM+jMXEkZK - ZVGRqdfWKQBF3h42OBUt48xCiGTNSATI64yA+Eg/at1WwMxjMaxGdQFMg4ukTyOD - r5I2tavB90ng4IPy2HGwX4tsoEIsvs3hg6po0UuMm3h8+tAinSfZv1UpmNHecjyu - 1yt8X61/be+z50f4pZQ+jpJL6Rh5NVwuZRk7YumZnIS02lyWULWGFGOh6DianeRX - kgp4mAZnyrqKyH514Wyn1pZvJe1zJ8SX6v0VQzQPmI6FeO0IL9K0k2H05ucdOZqP - jXn0YXslRD1e+c44jhV74MorbmKhoMl4L6+/c+zbYHrxJZBXyTJn4vuSIksJsqoU - yIukXNthzM+vakCXNGoydjekSuZBbVCKG5cDPsVHnSii/RIqqgr7xsWEYxH3SAYQ - 90HeFsAn+FUCLwo6QsNpQdpTqQN162fpS7KUD2aUNAj10Im0HPsDCjBNYuDMr07E - rHiBQxotaMFlvw8XgnSi3RZe0TPz0McG3ZJ9I07R6h9Ofj6vE8+o4xex3vNFp9BX - Qauge6sjLSc+nxcTZv+je3kz8MUXc0ow4QroenZ/+hx7JLuTLbTs+TPsduhVHmDS - XAFgKv9KdsYMBQnrSQv6a51Mmgrlvy5GwKtHLqNtUETpjEYx2Zfkq0RoeS09qcKt - U1kWQEhNGN5R5lUlTJfxENO+7uts5FFL9tmXzqt4RJA2E9y8wt8HhM2olXyn - =47Cb + hQIMAz5uSgHG2iMJARAApsmk4Mgh8vBxJD4lL2zrGpOCJBCZy55vplxLAj/1HV3i + zX0E8alU/6GwF1g51WLGp9dgYaWriLcK4JnXHaJClWVxHR2bBxA4HEncer+c112q + a7ECI+w+/ff3NBi8h/HKy3xeDWQ20/KxD+n1DCjPZYeYgHLwlcMupZT6vMdEE0My + gg1MMgLe3W/Py5mGbibE+saBqUD6iC8OjErez92g2z7WBZt+FE6s05Vx7euHggJq + tAlbM0IAy1p8j1BH8b4uTl59MQwlejjgIiXw3D6yOegoxRbI3BXx2vm9Bn4H5AES + 5iI9ZpwTqMnAbZayLOjJ/mYA2Q3W9gTcw4qNCXO+tuzLtzI9g+NX+qf/Tw2fn0ws + qVrYJE5iCnLlVC5VG3gJzWl3y8UBg+E636Akv2wlgkOHUF2dYw7q1t09B6KQ8XdA + 9KDrEGMGQ+oMBhQOPBcMkLrQrAefKDLkef7Gm9CpKJKt1ynxwWJwBrk9D+OlXmjU + xNGAhuYTE94UKAs1xqCllGGwpfC8ExukDzR6kYF/b0QzTiX5HreiFBV5JUjZUZem + 1rQz5gDoe7peS3pxQzNQKsnTH2NxpuThx1SieyhDiwrOcnkDxSxnDkh7JM9b48ne + tyx6CkSE0nz+aLLNtmVErQy7a9mT3Ibz/WyM3BZBMsahReNXSy9RPzWzyG+B6F/S + XAGMtreQYxsFP71MgRkblG1Pk/QpZ6fOkyUWo1fT+ikQAkEH07myG2k9pXZzwtFq + HM29IWlr6qVrEtxd4eJp4JkQuyU1Ew1gN0KmnMoMqfPzzZtpVgBGtml2VVpU + =PU7x -----END PGP MESSAGE----- fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2026-02-18T08:35:36Z" + - created_at: "2026-03-05T19:17:40Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAw5vwmoEJHQ1ARAAqcYDnnf6IaIrDz7MKdRYA+6v+tzdIdGGOl2vwhNIDKlb - N6qggPc1JTPUys2doeZKbgozw2GBDG8qwTzGPCI5czj2VwUzo556xIFLc01ZoJt8 - v02Zn1oxPY5CwV2OfECDa4finy3n4a+AvjwLB1w9pFVpzU66LIRXhRWBPCxodLmI - 9vE0NbRcE7gDva+Y35CP3L9QpHDmq0g3Gnp5LmZVzyD5VXt6MnZaYZqNLN5gPdlz - FKD3GBIACUk300VEVH6QSgCx23YF/0vBZ41s1pyytT9fNrNlMbpiqffiLywcjzio - m5PRiVEzSBHllhlz/HmPvdnoPxu2nbuqJtOTnciwMVkqHuMXnK3Wn2fMzYd52JK1 - 0xaeTVIUXblmvbDlM0hk6+jwrTPn/906VVomJkhppVsSH7qOdaxj/7Vx4JigXe+5 - OVFr5JYUSnjQ9lZRKr4RfbS94nMQoOOZSNNWyxEfIC1x2TJis/TW+UiuvSBqJ4np - JyphmPhIVgQbgdhGu0qEA5waC8bb5umUKKPiJONMYlmk5JUfu4xjGCU++iqJlwvG - dm80PJm5O4qvdDMjRnfIFdlrFN1nL8GzPvwUXB1aDG7oNawp5pRBc+04n/Wx0xHk - iy7XMmMurgi0sDpAIsk0Yj6eaWH8d1ST+SzkfL+8RKDVNbb9jl+g5IH6QTaJC7nS - XAETQPx8iTK8HcSWu9KaXcmnC6d8LTywrrE8XRxFQJHgfku3D3+u3pOX/h1QiHzY - l80NOh1i8ax7Hg6tqOudpdrl2DMIyPKQyeE0fOTkf13QQoiDu9vAxTdjfJmt - =kRxY + hQIMAw5vwmoEJHQ1AQ/+PTuTVW8rSoZJozu7VaGmAMPkziiIPWpKR3pXShqXVNBq + yhEqev/kZifumJdtzRWviA2BBR9PsHCS/k5TJGLd6gqWPwuiQfq/R3kJSboqGtth + 8aLy2jLvBfwuEYvqkA2skoZuXRvcNd9bAZyLjOyK8WZ/vrZQhuoYwTkANZubAB6H + Pjbzd6+cd4PzYhKcyotrplg+E0fVGKSgZfe9e2OpUEIKbPTiGIZRn0RMsfoKtiuv + OcXgLA4SxWmbZg2XgLK9M1+GpAJMDNPdCqmEdjHnwheUZezntXWEBkqJam8WVfxo + V1yPthcj94WxwaLDWX61ibdwD88JaoSP8h8El2Q8ptYhypuOCZm0pqWaf3hp+6pi + 51kbxqg1JIQZFY36p25DCBsoKjHsERHpLUQGfQo6ZepP8YYe2an6LEazIHKphQAl + f9nvTTB6G81Wmy9io96qF/6BJPWGQ4/BhBqrFjnIz9btkwfPjcggis5W24mckWbY + W1pi4LFsf7L5b9rQ8RWRgb+jdPd7Zw6KIcAtTp8+nUPMHIRxstClTqk8BUzsXgyd + Erbpmdgm6M18GFKT05bjh6wEthU5ASJnlJDwVrCHTXj8XhqG+s4FqESfVa+oykT2 + 8jIF0MgfoE5NoFIuUg8+l6qe9dPeALL/Eh1WUILbwXv/q+Y0v0XyG8A/FbeGRybS + XAENpQExYi7IYHhBcvfaHMhkZX/rHsibAQwGmoVElndmtLf06OEoeR+Qq3AVK3fc + 42EH33db3H8H1Z4FYM0/eL5NEpC3a01dq8Rc/h3OigOGMQXa127MUU43lRja + =4IyN -----END PGP MESSAGE----- fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2026-02-18T08:35:36Z" + - created_at: "2026-03-05T19:17:40Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DerEtaFuTeewSAQdAJvWHYk5G3O/MD7QDhV5kzfM8GtXJFUy9zPj9e/x9piow - aHpWZ2JuUAJU80bRigMsBxG5xcz23aZ89TV1t6+5FJPDmbPUvSEmNiduKVkFeJN+ - 0lwBs0JigSM89bqBMU+Y1N/5Z+o6lsdgNyCVYEGjTVL75cJPYJw58xK+Y7ytAAAu - NfGezMGeGJ2k61szLC6tsKHf8M4RXN222HNSYGC9SJsbQ+j4oZdOtLUy2vpEyA== - =ZwRa + hF4DerEtaFuTeewSAQdADc0D86pvsxMWDNwsfy409to+GMhAiaIwaxkoZ8erAU8w + vcuBIg/KkoP7A1zPP2t0vR4CEsuH1soGbe4sbYq/y16WaIzY+pM7V839ATVAgaeg + 0lwBS+qD7Wx0FHcmEPm2W6E5RclGbBvTVbnk7M1hWpV7ibovyP6R2UthMvrbLOkT + 7ZovNeDCXmtALJzMJQrPPjc7dBfVzJro4ksW/Ayrhymh7bsFJ+MolDWBO+R+Mg== + =iWQK -----END PGP MESSAGE----- fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 - - created_at: "2026-02-18T08:35:36Z" + - created_at: "2026-03-05T19:17:40Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAxjNhCKPP69fAQ/9Gih4n/6wVedkWL++ByDcA7k8eL5q8vHYPaw1SJoKPO/T - 68M13sdkm8je4kL3EnJYrwYw8ycPUgv24URL5IlmEHQWlpfqB9DkgiFH3WzqIwk7 - ujCGepVUtf/pQiFRC0F6aKXo935D9dqxyZxEe77EbfZLPDTRvJE+uQdwtwKdqDi/ - 34ydxlXsmw/5EwFbN671TCoANa86/lZPOFO+qVDy2hPxA51P2y+xfJpnn6xNjk0V - 5rJA9VjAl2okmBmcHA8TZzZki7fNRX79Lq6y2Gzqs5PLUVzmzzBLSIKGaMf8e/Kd - ei4/NExWltnYWwTFeTq8ud8DD3juit3USNIX1/HAHFL+USuYmygHgIguQ51Q1f1O - DMQZxnVn/MGzZrVtiOd2xqD560IjeQqlt4xaITyRPUik3dXZpun18LKaCzLJKFkI - CsY1AHi1IQSMfNmIMGUnK9r9vZLA99hUkQivBSJM20+2AR/QXz8syOssOwqcMThw - 9wv7dPZYPjhkoGOC1oSbC23CdHfS4u9HsvvPHhEY38zAQ9oxW9eUP9/Qhvxm4tUX - MNuBVHUGGvhEiKny9LbSkG1nU+PiqnzFm7lbMcAn4+c2EAqbxB/jWpiUhqfLEUGf - 9zbd/0xqTmpGejvykYFoDYYmO8273Xp57bsCBx1k4F/213D91v03vXMXVC97R+3S - XAGHtLPZGLPn9pQnRc50wD2QNxNwzZvApzpnjCBRMShcwd0l/+tpmwvIoZD2JzAD - /qYd2yltT4LqCj/oQqdhkhrwnsXMscuRD8ofXcCJ5zaS4FkPf0GaOFURf8te - =5Mug + hQIMAxjNhCKPP69fARAAoUOp+YsKylWifkJkAp92gHrB7PQFHxwK0LD9oyInbPeD + ZFaIikW2qhBUrKQ18dot9RGZdII3lBXhbjHMrGrj0FuglK1fbgdLrlVoxtTOexiE + hMlBDDETMBkxhx71dh0i2Gh7nWCoAAJMNPdXqz9Vgpcjv3yOgo4EqVMsVpQOqmFy + BRAkhKr3EZSgZ9NLGplBsTuKvSBIzWAdEZ5FUDDx9uMMDoJniOi7ReUcLQfq0eBj + mC2JrUNfbgiQCqz0zz3y05vE9rQjH8STXplMv1UQPIA5sFwRXm17g0DGVJWDLS0k + iesssdn959M2j0iMszUHDafnSGy2DrYrk1/cUevUNdfQ67Y6bUmFGpzI3xgKag+n + 209qwqKGpXUCzOsOx8kxN5cNctNOI/5X0WEZZn4/wucssUiAmrZektjlO8Gjh0MN + BiCufaOjjdIlTonDrdVP1Mskrhbqf83bV4tlyOuCIh5wU+ABElQ12welUsfbMF+c + 5EJXKjJCMr6jEf7UtWDP7oEkopNkCWTrdiUTSjSuWKZGlDKl9UYh2gnv5fT7uTbB + HFg7JgNvLG34JylR6diZ9ZlDZSg60nYu1OFre+UG+veTu+OGAsGoficdqLp4LGbX + NedMxD7VEO6GG5G5Ris7XWW7mOzbLmijrAuTJU0RS0iyqsVpsWUnTNIrk5ByBufS + XAGnZg0HNNf8gFN0xG/CkIV4XM/vRKJF974i4ANeWb1KRsHzIAEjN36HoPQfRUQZ + C1kzOek65ktqK+bWGVV/UlMQZibL1m+z33szEZTfcdvyPYO9+RZZt1L4PwN8 + =X6zd -----END PGP MESSAGE----- fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2026-02-18T08:35:36Z" + - created_at: "2026-03-05T19:17:40Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA1Hthzn+T1OoAQ//b/TYHH9WXedc4cVdmj8vfs8Rkvpdv2yYvapAgw7MADyP - zLVjLTW564soYEZWm5TycUAEdXAGkGBvdyYyzwvqxgf1cE94wlWEaIea6Gnkbiv/ - nZZqePlApovhfpPAqZWIjPjMrIeEwVzTLMEHfsVXxLr/4UlMYLIHlrKqiosr3Gsc - tvXvV9VJ8NF89zbdTtE+/kOnGfi023qFDMxzhuOJpHlShJyz7aIzTWLRaSLUJQcW - tHLLP1nrV01GkV64UFRwehvZo/3Y+ne0MWMEKilOnNABGqUR0eVOzuZuwrCKPYUB - cs5v26abUSczoUGMVdaD+plFPBcP5O883ztefg0MTnAc+dAcB+0zgHLc7YjPWdxU - HATQlQMkUIa20A3XE2+jqUcUmszxLkO37YOU1C2wUMkPNUVIakZyrJ+BXTz9U98r - HUXCpFN5Gcph7MEtowUdg6uL9dUtc/AKEirvm/+PfyT6q6QbkmhQ6pdWPglbbFh/ - WiY4qEc2xJiZIxvb+l+Qt0Bnh2QPVIwpFSv/euS+D5TUqqIvw2OJvVQYl5YRTeXi - 7RGjJddslf6MNpITXOPL7Qytt8hCHZk6AKBPQMpBgV0+SGH+7JxZ6T0i6iEl6brE - XmW5NgDGH70zKyf96pBIAO6kPffDSLlxocywFhwezyhnbj/bKGCQYZS4Ne4YC1rS - XAEMsugvtq/0MbaQEsRs/dXZRdcpLeL3iA7cSYzmSvWsSasT1z7ycdeatNoAuSgw - 609CckXtyzjxAaLObGrp/ntW2tN041XaCQtiB7Ctylm3aDhnNDEF9VoOkVPP - =Si51 + hQIMA1Hthzn+T1OoAQ/7BgHs/UPUZUW2aj7dVAwk0jnmzYKA89IfHGa6ZOkv+6zi + p7maUaVSue8ST7JI5W2lPuTa4+vngXuTGdmp2OlitJhpGvUvM2dlkZ60L/FGisgu + KJajfO90ULGZsnE7KmsrTdymiZ8MevErGIDLqbxcQB+YvaNDtLVW4RwdbLMnJtaV + ZudXE+uTSl7QD6KPC+YDflI0iV45sTLpCqO6GUR03ng4H2wdfjveCOJg4sqNovgd + vkbJ0cdrlP2OcqzOfR9c+brLNpBwTbazQt/af+pZtMuTGWlJ81Y56brqK7lyzLaO + jIWn0KCY5B4KrjD1nXcrDl+gZmrFVkgTvh26zJMGJd8rTiTfYdiYtLD2VMnMs2lW + 04LeDj1VplNqy6vxbYnHE5qnS76KTzoW84KpgH/1q1D8lP3HWwTeHASMx2fqppQN + gZFzZNCNbZszYJ/no390Py+xCNBDgi/nOQdstJSrfYw2MdGk7QTKVkhrBFOf2QvC + kFaWZRnE/cZVWa5EKs2VO7ffsYT1ZrKuBdBPB3SU/pPevwii04yoZac0Cu2rFWbY + 2B2whVKh8x8qkStwafaKIn5SS+Ej9wR4/r6j7t2bg9wis6sp3eIgNSMT3z6kIk9P + opEtsTIyDadjEzQSPZs8qbTr8Rii9pAhEXAEzI7/Ki47DnDfrjtugKrmWL4coJ/S + XAE7zxuQ4uhFAwSWivT1OTpfGFz3glboTacb4Ma2MzAEM/zaAg4nOUn1OHFzNjb9 + 1GyfurhPhBTCaPZcmdGKE53KgOJLI1qxxr9KZQWz/g0R8yUU+cpmlgmx2Mj7 + =doa3 -----END PGP MESSAGE----- fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2026-02-18T08:35:36Z" + - created_at: "2026-03-05T19:17:40Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA46L6MuPqfJqARAApHLg9LGq0cFRbmX7UdBQmP5IP/gHjcfWy9D9UOgAVkYI - lHxdk5Yc8GyA8oq7W4Xg1SpWJ//BJvWSkmjQV1Nz+a7Ek8UNPdrDynTUDMN2XULm - nqhzo9dyVjrBm/jJG4Nt4IRsvvCSXVJCIQN/RuTa5HxDCLpU1sDPp3VFDaXJofKK - g7TMLUP9YCBxD1lTaxXQVm8yUUYE/Cciz9B1HOVE0fbpzZ0fFj5RR8lpWr48Y9oF - co1jestulZppulnz5yxvtKQEVpkcmXvpp7qS/tx/aDgRRgQ6hm2ykn2CJiiyhpSH - JnE2qAEwvMlAU2tdHHY+uTysLIVxM6H7ALFUWd5ktO1wrRvKKuMOHIXWGErXfc0t - +tZ9IjaLGrrLqHD0AAccJzzohMpcAFaWHzMuq0qk8F9MmCCRc6woZJJf29i+Zh9U - Nef0t5uH2h1RH/cAZraDXNmOxiVlJDVffGagjkoH0FsupmWOan3JuHmtoRtJA/hE - ZawvjrbaA2Tst6QIwzQScawz3WqTFaKR1Y7MpRwKcHDO93zYII5Pe8tz9YgjuJKO - MHJl1LZsJ2fCctY8PItNZRfzDTnoM6PRr2mkxLWZaVd6VOZ368R0dbd52ekaKwLq - gLEFyu180i2Jeea+HLfUda69qJuW6NNTC+fvsU1+z7ZA+pIyMlh/q392a01ntRfS - XAFY5SKJSMx978RT/SHI2vJoRA8z0kDd997taP8bBHPNTNmpb5zmqHN03KpcMuCX - 6ziQNvLvqZ8u6IBISX10KotCUqk5DXGFmZ+WUvSGHwe8hGhMYZdCvH8QGtqY - =t7Lg + hQIMA46L6MuPqfJqAQ/6Ag8Pq5PHZPcg+FSS/YI9l1HOdAHSoQPo9RKD3QHDBHOR + wPrrnFv0SOTaPbx/R+8akAjsGdknetq8RsbGmMJ6vBA4EeixaFOMG53b4mDhCCrr + 2BmUJ1dHTS5lqMer1jZgcmGuneGOKrtsgt9WVULgIPzAAJsoqYnB3Nwb3yxlCUsK + DUyE1mHyujMZi0mo/ZaI3K4bKqwRGgPyMIjomYWFZDjei3J5jSmQqUqVcoLU5z5d + sf4Lnt66F5RmGW3uoGX1mNaFBtw4xjHZt5AA6ao3ZHBHCSEbAnDA1YXGU75yrqXb + WG5MYnRTLbn3DVFIrtTrFmDG47vJpdOcv8wIGWoKi6Hxphzf+c9F5fBq3RmLhEF7 + ckz/yGJ10eTtanh8puVhTPOGeiYrzhPXpvo3dFZND4sTg+SDJ4rwyiFviM3DIUPQ + vfY8A876U3f7pM9hkZEfSbwcDcYfb1jxTLPRjquk1ujoe7NSX673G10x52AoTFKC + uKaO+G6Tv901PwgYrH3gzGfRg+89HRa33U+DQhCbdAS4oAYlkOI7II3DMlJHCaf/ + 2/v4OHjcqjQxzbgZUJOoT91htepi+f8+bqdjUKQLB6YF9U0wkI0x8N11xj4+rYPV + HVq65iwhizPG9dFOV99Xb1Z1xO9fzNcXiRR/YhtqzY5jEO4UFRvurg9e3I/XronS + XAFclhloL+Jd9N90yKXDN1GxJtAva2xd7CzWNmuoZvV8Eb1mL0vTHsH6AfbApghr + Gec5yLUMOlpWnRGuOBhBkH6VPtsEvvyHGAI3pfAoGQLKN9JVxk9YFGSeadnO + =1xbh -----END PGP MESSAGE----- fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2026-02-18T08:35:36Z" + - created_at: "2026-03-05T19:17:40Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DQrf1tCqiJxoSAQdANuHW9MBppn++aYWPU6DEUZNIdAJ0hWVMV63pee2qZWAw - Tkc1J+CDOTsCEamrwZU7SOEFaafhPzrXZRNJoxslwgL0b+Cby7+8pZIchwhIQSAr - 0lwBGfAwlZwFp6UCUY8aJJc7p/KydAbeLAIeGT9a48z9p55U4CHqfPtEVlRNZTg9 - u3hP33LaXypBsxQqls5yhUYlV8eu0G03RWgX+1/G0ytv2iKdLMUyTZUv8JW3ew== - =0d0V + hF4DQrf1tCqiJxoSAQdAn+Dcq0/Y6D1Id3qqLu1QF1r7c+CC+ld5ZUU9AV0loAIw + ZzIjW7Z7xTFRL5MXMTNVV360L+S9f5qR/qkJx4H6ew4iSY+NBPxoKrFBxujfYWG8 + 0lwBDVVtJNP+pu9IX3FCv18wKISjCW++wetYpB3GWlkq6gVfPV/oIm4UjLNnDPCE + xpqf3ZBAn347DLRsbe4+/mckkkK930AFiLYfrKGDI82kZX/tYEiNUEAMiZCzJw== + =x0cl -----END PGP MESSAGE----- fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2026-02-18T08:35:36Z" + - created_at: "2026-03-05T19:17:40Z" enc: |- -----BEGIN PGP MESSAGE----- - hF4DzAGzViGx4qcSAQdAoE0esHXYa+xIJSyKYUXKBpqQL+WMFAVUQHZYSzt8JkQw - hiT5VHNDGvsDSH4l5fLKZjyheVUr7d2nVzAoTIFfEskS4jfj6Yf7uMwyC26Xp0uA - 0lYB919LBA5uK8IFOj7Mw7J2TFf7a5UrCNLGHtHmQWt8VUus/PTvczN5WYmSIhPB - kfs1mjNUzFZPhZwATmC8bYEXnBe5VvJ/yuUyM1GBiPJuLt39dR+QMQ== - =WdHs + hF4DzAGzViGx4qcSAQdAIndREUDCYyeDAAwlIDomsWZEViMexZmysQuyoSQAhAow + wxZHNCV0dJeRQ7b1jeIY3dFT7zMozXtUopVIgG3x4IEyIcnez77V+oyPrWVa3AOE + 0lYBfLhq+zcnJUGQblBiEZH/qVzRECsSyn3fCEg8JpqwyDmLaQDqAwScM1Rr2Sof + friMPCncwlahTLkxyxoFy8mwZ03p2JUMyNUBtLvsT2kby7fJO+hgCA== + =p10m -----END PGP MESSAGE----- fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2026-02-18T08:35:36Z" + - created_at: "2026-03-05T19:17:40Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA2pVdGTIrZI+ARAA4fU/kkfWFIOHqg0zgfMdS02Vx7Tye4M0z5bTJ5BHTPzT - jfH//iZroqShmzqlRB1q4er26eh3PbGvt6gS2MZYW7m9ccAmrf0TFgjruF9h61Gx - dbAvFp8rnxF3LZM4tR7MlzggmQHwKT4L20+5opsHe9IaINPPKMiMfKBSYFWCHo9X - kM9Etw0PCKLkYgglX9zjpZ2VZquuSdWyu7ERDk+4Ck6Xa4JEldjb5gHs9p8aSgdy - e+6QD3WfBFtC4gD88H0hSSNFZoWFAA2rOtFuCafEZSgIkFmnsgAVvuTlBoyGDKEg - gTBvgf7n3k473eteETfXNFA4OwgO3ohwFjH4SSdreSMq69BqY04BqjhRvQLX0FjB - Z1cEoPwVbe9A6CwP9jd8ReA6/PA8i2yVLK9c3Et8LDboMEFi9a4n7x8ai9wJCNtK - fVdxjqD5eLX5UJKm9l8tCJovv23tTqb4E6jZb1LaT6LfcAmpNCWUt+fkjKovfiY7 - LkL7v95rrOFykpXyzK1nScckzM5O1KmjYt4eL/pDucDDQbETvR5uMTzKVPwgaZJQ - I05ZZMfHC7dVU+9WXkHrYIT5zklwo+g0Tf7TTAj9xv7SqjB+YHbPMRDQOP4f5/PD - dsFNwbZQYKZq0MRCjvg2s4XH5oVB/AqvsARAZ5/Ha1QTJ8yeI+jboTx6ADteNmrU - ZgEJAhD1stH84y2rIaCAxyhqCr+Ys8Bzre3bsQwU/YPtfbFVTAtfrlkIAsYXrVE9 - J+yue+yMI5dIv4E9af29SoG+ya5Z7fBJRGEHGxGUOBwBqSd6MmJk7KidnIjVvE0I - ofnx5Bh32A== - =vR9d + hQIMA2pVdGTIrZI+AQ//a3rqUTuoGPrTA8JcRNG5ll/X4H/mK1gnfDImzuf0uUPf + CSqg8jsHJaIn77LACAZiLJGjpO8N76/Y7h9M0zG8A3kBmNtknmjDKzVHnUKH6agz + A/DPE/aApZE1TytkqWK26NWgaiOGQO5v5bFa9iqp+1nU75HQ6l7TeXmdIcyvoS0J + sUs9Bf9Mke5omL+XjGMFQ2BklUiiySeNGwWhKn2ZD3bGTS1Kp6FAG4K/gjKMmRlv + Wtx0WTYU9I41xOy06gFHB6V358eylWsEu9URrH2je6Dj/4JMpPORcekidDm7c7KY + MeY9vpEB0a55HK7d2atGawyD9eEOwLglftjW4VgD3I9uY1RH9lJnyVJtdRncAx1N + uz3E3FM8yHGTybWaOnDMBMuwplIO2kq6R1MN9G766NsizeCeceB4d8nI5+T4AzJL + 7dwA9eceqUBxP16gPy+nFP3ezo6Fjcd/FnUn7FfFb6AixKVjFONrixMJ801BzW6c + MR7cAfkbHKRyLy7+mm/aVQ3YRIG9XnlnlLwbM6ZuFKDsZl/jUSCKYeTxY68j9hmo + ye/AXhQIZFH2U+FKGcZ3ZGH8MPCsYHyT+ZgWzYvKDboJmZcEIzJRg8vVhR1YY60S + Xd00tEhDAutnZHZ+dtBwOVPo9KTLa59XU3hIyKJ8/Gw2fRKv3rTVAQbUMmVEYEvS + XAER4yw9Kt0EVcJSWtMvIsaAcHW535NS2MG7h7XwLmGwr5fTB41jFOC8xU1qwTb6 + Mx8ZSUmxrqwMVHuSzrTb8K/W9uSiFOBLhJkbx1YMIqI7kz518fzjD2PAKYnG + =sJIx -----END PGP MESSAGE----- fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - created_at: "2026-03-05T19:17:40Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DKKbvh61jX5USAQdAcm73t6mZQ6i2rmLwZJnRzK2rdBcRDBDrlyOU1oGSsHYw + m79vYbO0nFX4yF8gr7wbPfWeGMl5mNMdEjECbt8lEM/XbfJUt95TCXSQ+Tl2T6yt + 0lwBEK/RJhGYQy+acSQQhnVz3pQQJ5bzwAXMoaAOKO7bhvUnDm/XAZpK+LJvQOvd + x2bd6CfNLY9wRJoqohCuGxPsM/8XhspOgYEwhnuItOs203kAQA+beIwl6TciEA== + =qjkS + -----END PGP MESSAGE----- + fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted version: 3.10.2 From e98f6d68bdabaffe90c6a4e8707114c7a1d4e19c Mon Sep 17 00:00:00 2001 From: June Date: Fri, 6 Mar 2026 19:15:55 +0100 Subject: [PATCH 134/142] Revert "wip: test renovate" This reverts commit 05d8c39b75e00a3df17a61b690371c44d930e880. Doesn't work. --- renovate.json | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/renovate.json b/renovate.json index 023194924..41787b7aa 100644 --- a/renovate.json +++ b/renovate.json @@ -30,8 +30,7 @@ "matchUpdateTypes": [ "minor", "patch" - ], - "matchJsonata": ["isBreaking != true"] + ] }, { "matchDatasources": ["docker"], @@ -41,8 +40,7 @@ { "matchDatasources": ["docker"], "matchPackageNames": ["docker.io/pretalx/standalone"], - "matchUpdateTypes": ["minor"], - "isBreaking": true + "versioning": "regex:^v(?\\d+\\.\\d+)(?:\\.(?\\d+))$" } ], "customManagers": [ From f345ff5e0023dfade75889ecea2b6139c7463ed0 Mon Sep 17 00:00:00 2001 From: June Date: Fri, 6 Mar 2026 19:53:24 +0100 Subject: [PATCH 135/142] renovate: make exclusion of CalVer non-patch/-minor upgrades work Pretix and Pretalx both use CalVer, so we don't want to have upgrades to their second number be identified as minor updates and get grouped with all the other minor and patch updates. The regex to re-classify the second number as major doesn't work. Probably because of: "Important: all capture groups must contain only purely numeric values." (https://docs.renovatebot.com/modules/versioning/regex/) So instead match on the minor update type for Pretix and Pretalx and set the group name to null. --- renovate.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/renovate.json b/renovate.json index 41787b7aa..9a6bababd 100644 --- a/renovate.json +++ b/renovate.json @@ -35,12 +35,14 @@ { "matchDatasources": ["docker"], "matchPackageNames": ["docker.io/pretix/standalone"], - "versioning": "regex:^(?\\d+\\.\\d+)(?:\\.(?\\d+))$" + "matchUpdateTypes": ["minor"], + "groupName": null }, { "matchDatasources": ["docker"], "matchPackageNames": ["docker.io/pretalx/standalone"], - "versioning": "regex:^v(?\\d+\\.\\d+)(?:\\.(?\\d+))$" + "matchUpdateTypes": ["minor"], + "groupName": null } ], "customManagers": [ From 0788fde69dd514a9e891ac00d493eaea01b7d78a Mon Sep 17 00:00:00 2001 From: lilly Date: Thu, 5 Mar 2026 20:23:36 +0100 Subject: [PATCH 136/142] only allow sops encryption of *.sops.* files --- .sops.yaml | 60 +++++++++++++++++++++++++++--------------------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/.sops.yaml b/.sops.yaml index c659d62bf..fcb0b45d4 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -43,170 +43,170 @@ keys: creation_rules: ## group vars - - path_regex: inventories/chaosknoten/group_vars/all.* + - path_regex: "inventories/chaosknoten/group_vars/.+\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: *host_chaosknoten_age_keys - - path_regex: inventories/external/group_vars/all.* + - path_regex: "inventories/external/group_vars/.+\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: *host_external_age_keys - - path_regex: inventories/z9/group_vars/all.* + - path_regex: "inventories/z9/group_vars/.+\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys ## host vars # chaosknoten hosts - - path_regex: inventories/chaosknoten/host_vars/acmedns.* + - path_regex: "inventories/chaosknoten/host_vars/acmedns\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_acmedns_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/cloud.* + - path_regex: "inventories/chaosknoten/host_vars/cloud\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_cloud_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/keycloak.* + - path_regex: "inventories/chaosknoten/host_vars/keycloak\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_keycloak_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/grafana.* + - path_regex: "inventories/chaosknoten/host_vars/grafana\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_grafana_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/pad.* + - path_regex: "inventories/chaosknoten/host_vars/pad\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_pad_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/ccchoir.* + - path_regex: "inventories/chaosknoten/host_vars/ccchoir\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_ccchoir_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/pretalx.* + - path_regex: "inventories/chaosknoten/host_vars/pretalx\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_pretalx_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/netbox.* + - path_regex: "inventories/chaosknoten/host_vars/netbox\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_netbox_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/tickets.* + - path_regex: "inventories/chaosknoten/host_vars/tickets\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_tickets_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/onlyoffice.* + - path_regex: "inventories/chaosknoten/host_vars/onlyoffice\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_onlyoffice_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/zammad.* + - path_regex: "inventories/chaosknoten/host_vars/zammad\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_zammad_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/ntfy.* + - path_regex: "inventories/chaosknoten/host_vars/ntfy\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_ntfy_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/eh22-wiki.* + - path_regex: "inventories/chaosknoten/host_vars/eh22-wiki\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_eh22_wiki_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/sunders.* + - path_regex: "inventories/chaosknoten/host_vars/sunders\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_sunders_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/wiki.* + - path_regex: "inventories/chaosknoten/host_vars/wiki\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_wiki_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/renovate.* + - path_regex: "inventories/chaosknoten/host_vars/renovate\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_renovate_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/lists.* + - path_regex: "inventories/chaosknoten/host_vars/lists\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_lists_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/mumble.* + - path_regex: "inventories/chaosknoten/host_vars/mumble\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_mumble_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/public-reverse-proxy.* + - path_regex: "inventories/chaosknoten/host_vars/public-reverse-proxy\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_public_reverse_proxy_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/spaceapiccc.* + - path_regex: "inventories/chaosknoten/host_vars/spaceapiccc\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_spaceapiccc_ansible_pull_age_key - - path_regex: inventories/chaosknoten/host_vars/mjolnir.* + - path_regex: "inventories/chaosknoten/host_vars/mjolnir\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_mjolnir_ansible_pull_age_key # external hosts - - path_regex: inventories/external/host_vars/status.* + - path_regex: "inventories/external/host_vars/status\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys age: - *host_status_ansible_pull_age_key # z9 hosts - - path_regex: inventories/z9/host_vars/dooris.* + - path_regex: "inventories/z9/host_vars/dooris\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys - - path_regex: inventories/z9/host_vars/yate.* + - path_regex: "inventories/z9/host_vars/yate\\.sops\\..+" key_groups: - pgp: *admin_gpg_keys # general - - key_groups: - - pgp: - *admin_gpg_keys + - path_regex: ".+\\.sops\\..+" + key_groups: + - pgp: *admin_gpg_keys stores: yaml: From 2b5f261cd3691d60a2c65e51e3c17d87062f93f2 Mon Sep 17 00:00:00 2001 From: June Date: Fri, 6 Mar 2026 21:09:47 +0100 Subject: [PATCH 137/142] docker(role): move automatic cleanup of unused Docker data here Move the automatic cleanup of unused Docker data to the docker role from the docker_compose role, so that hosts, which only use Docker (like renovate) also have an automatic cleanup set up. Also use a systemd timer instead of cron. --- roles/docker/files/docker-cleanup.service | 8 ++++++ roles/docker/files/docker-cleanup.timer | 9 ++++++ roles/docker/handlers/main.yaml | 4 +++ roles/docker/tasks/main.yaml | 4 +++ .../tasks/main/04_docker_auto_cleanup.yaml | 28 +++++++++++++++++++ roles/docker_compose/tasks/main.yaml | 8 ------ 6 files changed, 53 insertions(+), 8 deletions(-) create mode 100644 roles/docker/files/docker-cleanup.service create mode 100644 roles/docker/files/docker-cleanup.timer create mode 100644 roles/docker/handlers/main.yaml create mode 100644 roles/docker/tasks/main/04_docker_auto_cleanup.yaml diff --git a/roles/docker/files/docker-cleanup.service b/roles/docker/files/docker-cleanup.service new file mode 100644 index 000000000..c3a4806fe --- /dev/null +++ b/roles/docker/files/docker-cleanup.service @@ -0,0 +1,8 @@ +[Unit] +Description=cleanup unused docker data +After=network-online.target docker.service +Wants=network-online.target docker.service + +[Service] +Type=oneshot +ExecStart=/usr/bin/docker system prune --all --force diff --git a/roles/docker/files/docker-cleanup.timer b/roles/docker/files/docker-cleanup.timer new file mode 100644 index 000000000..7acbb9d68 --- /dev/null +++ b/roles/docker/files/docker-cleanup.timer @@ -0,0 +1,9 @@ +[Unit] +Description=cleanup unused docker data every day + +[Timer] +OnCalendar=daily +RandomizedDelaySec=1h + +[Install] +WantedBy=timers.target diff --git a/roles/docker/handlers/main.yaml b/roles/docker/handlers/main.yaml new file mode 100644 index 000000000..ada24261a --- /dev/null +++ b/roles/docker/handlers/main.yaml @@ -0,0 +1,4 @@ +- name: systemd daemon reload + ansible.builtin.systemd_service: + daemon_reload: true + become: true diff --git a/roles/docker/tasks/main.yaml b/roles/docker/tasks/main.yaml index 8c8044d6c..ae08dcd9d 100644 --- a/roles/docker/tasks/main.yaml +++ b/roles/docker/tasks/main.yaml @@ -9,3 +9,7 @@ - name: Ensure Docker daemon configuration ansible.builtin.import_tasks: file: main/03_docker_config.yaml + +- name: Ensure automatic cleanup of unused Docker data is set up + ansible.builtin.import_tasks: + file: main/04_docker_auto_cleanup.yaml diff --git a/roles/docker/tasks/main/04_docker_auto_cleanup.yaml b/roles/docker/tasks/main/04_docker_auto_cleanup.yaml new file mode 100644 index 000000000..ed43bfcb8 --- /dev/null +++ b/roles/docker/tasks/main/04_docker_auto_cleanup.yaml @@ -0,0 +1,28 @@ +- name: ensure systemd service exists + ansible.builtin.copy: + src: docker-cleanup.service + dest: /etc/systemd/system/docker-cleanup.service + owner: root + group: root + mode: "0644" + become: true + notify: + - systemd daemon reload + +- name: ensure systemd timer exists + ansible.builtin.copy: + src: docker-cleanup.timer + dest: /etc/systemd/system/docker-cleanup.timer + owner: root + group: root + mode: "0644" + become: true + notify: + - systemd daemon reload + +- name: ensure systemd timer is started and enabled + ansible.builtin.systemd_service: + name: docker-cleanup.timer + state: started + enabled: true + become: true diff --git a/roles/docker_compose/tasks/main.yaml b/roles/docker_compose/tasks/main.yaml index 588371686..bf02828b2 100644 --- a/roles/docker_compose/tasks/main.yaml +++ b/roles/docker_compose/tasks/main.yaml @@ -108,11 +108,3 @@ minute: "0" hour: "5" job: "cd /ansible_docker_compose; docker compose pull && docker compose up -d" - -- name: ensure automatic cleanup cron job is present - become: true - ansible.builtin.cron: - name: 'ansible docker compose auto cleanup' - minute: "23" - hour: "4" - job: "docker system prune -a -f" From 9b092d0dafcf7715ad25762ccbfe36da5d778983 Mon Sep 17 00:00:00 2001 From: Renovate Date: Fri, 6 Mar 2026 20:16:48 +0000 Subject: [PATCH 138/142] Update all stable non-major dependencies --- .forgejo/workflows/lint.yaml | 2 +- inventories/chaosknoten/host_vars/cloud.yaml | 2 +- inventories/chaosknoten/host_vars/netbox.yaml | 2 +- .../chaosknoten/acmedns/docker_compose/compose.yaml.j2 | 2 +- .../chaosknoten/grafana/docker_compose/compose.yaml.j2 | 10 +++++----- .../keycloak/docker_compose/compose.yaml.j2 | 4 ++-- .../chaosknoten/mjolnir/docker_compose/compose.yaml | 2 +- .../chaosknoten/ntfy/docker_compose/compose.yaml.j2 | 2 +- .../onlyoffice/docker_compose/compose.yaml.j2 | 2 +- .../chaosknoten/pad/docker_compose/compose.yaml.j2 | 2 +- .../chaosknoten/pretalx/docker_compose/compose.yaml.j2 | 4 ++-- .../chaosknoten/sunders/docker_compose/compose.yaml.j2 | 2 +- .../chaosknoten/tickets/docker_compose/compose.yaml.j2 | 2 +- .../external/status/docker_compose/compose.yaml.j2 | 4 ++-- 14 files changed, 21 insertions(+), 21 deletions(-) diff --git a/.forgejo/workflows/lint.yaml b/.forgejo/workflows/lint.yaml index 5113e9fba..bdd53f559 100644 --- a/.forgejo/workflows/lint.yaml +++ b/.forgejo/workflows/lint.yaml @@ -24,7 +24,7 @@ jobs: # work in our environmnet. # Rather manually setup python (pip) before instead. - name: Run ansible-lint - uses: https://github.com/ansible/ansible-lint@v26.1.1 + uses: https://github.com/ansible/ansible-lint@v26.3.0 with: setup_python: "false" requirements_file: "requirements.yml" diff --git a/inventories/chaosknoten/host_vars/cloud.yaml b/inventories/chaosknoten/host_vars/cloud.yaml index b6cf77155..9c28d58b8 100644 --- a/inventories/chaosknoten/host_vars/cloud.yaml +++ b/inventories/chaosknoten/host_vars/cloud.yaml @@ -1,7 +1,7 @@ # renovate: datasource=docker depName=git.hamburg.ccc.de/ccchh/oci-images/nextcloud nextcloud__version: 32 # renovate: datasource=docker depName=docker.io/library/postgres -nextcloud__postgres_version: 15.15 +nextcloud__postgres_version: 15.17 nextcloud__fqdn: cloud.hamburg.ccc.de nextcloud__data_dir: /data/nextcloud nextcloud__extra_configuration: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/cloud/nextcloud/extra_configuration.config.php.j2') }}" diff --git a/inventories/chaosknoten/host_vars/netbox.yaml b/inventories/chaosknoten/host_vars/netbox.yaml index 8982a22df..0cace5c14 100644 --- a/inventories/chaosknoten/host_vars/netbox.yaml +++ b/inventories/chaosknoten/host_vars/netbox.yaml @@ -1,5 +1,5 @@ # renovate: datasource=github-releases depName=netbox packageName=netbox-community/netbox -netbox__version: "v4.5.0" +netbox__version: "v4.5.4" netbox__config: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/netbox/netbox/configuration.py.j2') }}" netbox__custom_pipeline_oidc_group_and_role_mapping: true diff --git a/resources/chaosknoten/acmedns/docker_compose/compose.yaml.j2 b/resources/chaosknoten/acmedns/docker_compose/compose.yaml.j2 index d2b111b94..65558f9ed 100644 --- a/resources/chaosknoten/acmedns/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/acmedns/docker_compose/compose.yaml.j2 @@ -2,7 +2,7 @@ services: oauth2-proxy: container_name: oauth2-proxy - image: quay.io/oauth2-proxy/oauth2-proxy:v7.14.2 + image: quay.io/oauth2-proxy/oauth2-proxy:v7.14.3 command: --config /oauth2-proxy.cfg hostname: oauth2-proxy volumes: diff --git a/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 b/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 index c2c312c24..fb685d293 100644 --- a/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/grafana/docker_compose/compose.yaml.j2 @@ -2,7 +2,7 @@ services: prometheus: - image: docker.io/prom/prometheus:v3.9.1 + image: docker.io/prom/prometheus:v3.10.0 container_name: prometheus command: - '--config.file=/etc/prometheus/prometheus.yml' @@ -19,7 +19,7 @@ services: - prom_data:/prometheus alertmanager: - image: docker.io/prom/alertmanager:v0.30.1 + image: docker.io/prom/alertmanager:v0.31.1 container_name: alertmanager command: - '--config.file=/etc/alertmanager/alertmanager.yaml' @@ -32,7 +32,7 @@ services: - alertmanager_data:/alertmanager grafana: - image: docker.io/grafana/grafana:12.3.1 + image: docker.io/grafana/grafana:12.4.0 container_name: grafana ports: - 3000:3000 @@ -46,7 +46,7 @@ services: - graf_data:/var/lib/grafana pve-exporter: - image: docker.io/prompve/prometheus-pve-exporter:3.8.0 + image: docker.io/prompve/prometheus-pve-exporter:3.8.1 container_name: pve-exporter ports: - 9221:9221 @@ -59,7 +59,7 @@ services: - /dev/null:/etc/prometheus/pve.yml loki: - image: docker.io/grafana/loki:3.6.4 + image: docker.io/grafana/loki:3.6.7 container_name: loki ports: - 13100:3100 diff --git a/resources/chaosknoten/keycloak/docker_compose/compose.yaml.j2 b/resources/chaosknoten/keycloak/docker_compose/compose.yaml.j2 index a260ab113..165c62d37 100644 --- a/resources/chaosknoten/keycloak/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/keycloak/docker_compose/compose.yaml.j2 @@ -22,7 +22,7 @@ services: keycloak: - image: git.hamburg.ccc.de/ccchh/oci-images/keycloak:26.4 + image: git.hamburg.ccc.de/ccchh/oci-images/keycloak:26.5 pull_policy: always restart: unless-stopped command: start --optimized @@ -46,7 +46,7 @@ services: - "8080:8080" db: - image: docker.io/library/postgres:15.15 + image: docker.io/library/postgres:15.17 restart: unless-stopped networks: - keycloak diff --git a/resources/chaosknoten/mjolnir/docker_compose/compose.yaml b/resources/chaosknoten/mjolnir/docker_compose/compose.yaml index 931b0a172..c46a1b70e 100644 --- a/resources/chaosknoten/mjolnir/docker_compose/compose.yaml +++ b/resources/chaosknoten/mjolnir/docker_compose/compose.yaml @@ -3,7 +3,7 @@ services: mjolnir: - image: docker.io/matrixdotorg/mjolnir:v1.11.0 + image: docker.io/matrixdotorg/mjolnir:v1.12.0 restart: unless-stopped volumes: - ./mjolnir_data:/data diff --git a/resources/chaosknoten/ntfy/docker_compose/compose.yaml.j2 b/resources/chaosknoten/ntfy/docker_compose/compose.yaml.j2 index 50df05d56..ef4a8cc95 100644 --- a/resources/chaosknoten/ntfy/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/ntfy/docker_compose/compose.yaml.j2 @@ -1,7 +1,7 @@ --- services: ntfy: - image: docker.io/binwiederhier/ntfy:v2.15.0 + image: docker.io/binwiederhier/ntfy:v2.17.0 container_name: ntfy command: - serve diff --git a/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 b/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 index 5f3478d36..77f139598 100644 --- a/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/onlyoffice/docker_compose/compose.yaml.j2 @@ -4,7 +4,7 @@ services: onlyoffice: - image: docker.io/onlyoffice/documentserver:9.2.1 + image: docker.io/onlyoffice/documentserver:9.3.1 restart: unless-stopped volumes: - "./onlyoffice/DocumentServer/logs:/var/log/onlyoffice" diff --git a/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 b/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 index 790cf952f..a1501dd83 100644 --- a/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 @@ -13,7 +13,7 @@ services: restart: unless-stopped app: - image: quay.io/hedgedoc/hedgedoc:1.10.5 + image: quay.io/hedgedoc/hedgedoc:1.10.7 environment: - "CMD_DB_URL=postgres://hedgedoc:{{ secret__hedgedoc_db_password }}@database:5432/hedgedoc" - "CMD_DOMAIN=pad.hamburg.ccc.de" diff --git a/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 b/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 index 091d11331..66559e083 100644 --- a/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/pretalx/docker_compose/compose.yaml.j2 @@ -15,7 +15,7 @@ services: - pretalx_net redis: - image: docker.io/library/redis:8.4.0 + image: docker.io/library/redis:8.6.1 restart: unless-stopped volumes: - redis:/data @@ -23,7 +23,7 @@ services: - pretalx_net static: - image: docker.io/library/nginx:1.29.4 + image: docker.io/library/nginx:1.29.5 restart: unless-stopped volumes: - public:/usr/share/nginx/html diff --git a/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 b/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 index 1df2bcae0..8257b1735 100644 --- a/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/sunders/docker_compose/compose.yaml.j2 @@ -3,7 +3,7 @@ services: db: - image: mariadb:12.1.2 + image: mariadb:12.2.2 command: --max_allowed_packet=3250585600 environment: MYSQL_ROOT_PASSWORD: "{{ secret__sunders_db_root_password }}" diff --git a/resources/chaosknoten/tickets/docker_compose/compose.yaml.j2 b/resources/chaosknoten/tickets/docker_compose/compose.yaml.j2 index 938883b0d..ce7398b1a 100644 --- a/resources/chaosknoten/tickets/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/tickets/docker_compose/compose.yaml.j2 @@ -13,7 +13,7 @@ services: restart: unless-stopped redis: - image: docker.io/library/redis:7.4.7 + image: docker.io/library/redis:7.4.8 ports: - "6379:6379" volumes: diff --git a/resources/external/status/docker_compose/compose.yaml.j2 b/resources/external/status/docker_compose/compose.yaml.j2 index ae5681be1..bd5e4da97 100644 --- a/resources/external/status/docker_compose/compose.yaml.j2 +++ b/resources/external/status/docker_compose/compose.yaml.j2 @@ -4,7 +4,7 @@ services: database: - image: docker.io/library/postgres:18.1 + image: docker.io/library/postgres:18.3 volumes: - ./database:/var/lib/postgresql environment: @@ -15,7 +15,7 @@ services: - gatus gatus: - image: ghcr.io/twin/gatus:v5.34.0 + image: ghcr.io/twin/gatus:v5.35.0 restart: always ports: - "8080:8080" From c246a6815c0474bbad572dd55f728038f4047344 Mon Sep 17 00:00:00 2001 From: June Date: Fri, 6 Mar 2026 21:26:36 +0100 Subject: [PATCH 139/142] ansible-lint: fix issues --- inventories/chaosknoten/host_vars/www2.yaml | 1 - inventories/z9/group_vars/all.yaml | 1 - .../chaosknoten/zammad/docker_compose/compose.yaml | 12 ++++++------ 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/inventories/chaosknoten/host_vars/www2.yaml b/inventories/chaosknoten/host_vars/www2.yaml index a8a9ce893..0a8071a83 100644 --- a/inventories/chaosknoten/host_vars/www2.yaml +++ b/inventories/chaosknoten/host_vars/www2.yaml @@ -2,4 +2,3 @@ nginx__version_spec: "" nginx__configurations: - name: diday.org content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/www2/nginx/diday.org.conf') }}" - diff --git a/inventories/z9/group_vars/all.yaml b/inventories/z9/group_vars/all.yaml index 9a312517e..ed45a86c8 100644 --- a/inventories/z9/group_vars/all.yaml +++ b/inventories/z9/group_vars/all.yaml @@ -40,4 +40,3 @@ alloy_config_default: | targets = prometheus.exporter.unix.local_system.targets forward_to = [prometheus.relabel.z9_common.receiver] } - diff --git a/resources/chaosknoten/zammad/docker_compose/compose.yaml b/resources/chaosknoten/zammad/docker_compose/compose.yaml index 66192da5c..80217d7b5 100644 --- a/resources/chaosknoten/zammad/docker_compose/compose.yaml +++ b/resources/chaosknoten/zammad/docker_compose/compose.yaml @@ -69,7 +69,7 @@ x-shared: services: zammad-backup: <<: *zammad-service - command: ["zammad-backup"] + command: [ "zammad-backup" ] volumes: - zammad-backup:/var/tmp/zammad - zammad-storage:/opt/zammad/storage:ro @@ -87,7 +87,7 @@ services: zammad-init: <<: *zammad-service - command: ["zammad-init"] + command: [ "zammad-init" ] depends_on: - zammad-postgresql restart: on-failure @@ -100,7 +100,7 @@ services: zammad-nginx: <<: *zammad-service - command: ["zammad-nginx"] + command: [ "zammad-nginx" ] expose: - "${NGINX_PORT:-8080}" ports: @@ -120,7 +120,7 @@ services: zammad-railsserver: <<: *zammad-service - command: ["zammad-railsserver"] + command: [ "zammad-railsserver" ] zammad-redis: image: redis:${REDIS_VERSION:-7.4.5-alpine} @@ -130,11 +130,11 @@ services: zammad-scheduler: <<: *zammad-service - command: ["zammad-scheduler"] + command: [ "zammad-scheduler" ] zammad-websocket: <<: *zammad-service - command: ["zammad-websocket"] + command: [ "zammad-websocket" ] volumes: elasticsearch-data: From e961886972b540e8c8d7da5621fa9f7c817c5000 Mon Sep 17 00:00:00 2001 From: June Date: Mon, 9 Mar 2026 21:09:08 +0100 Subject: [PATCH 140/142] pad(host): set session secret, so users won't be logged out on restart Closes #74 --- inventories/chaosknoten/host_vars/pad.sops.yaml | 7 ++++--- resources/chaosknoten/pad/docker_compose/compose.yaml.j2 | 1 + 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/inventories/chaosknoten/host_vars/pad.sops.yaml b/inventories/chaosknoten/host_vars/pad.sops.yaml index ae0d3823e..b256777ea 100644 --- a/inventories/chaosknoten/host_vars/pad.sops.yaml +++ b/inventories/chaosknoten/host_vars/pad.sops.yaml @@ -1,6 +1,7 @@ secret__hedgedoc_db_password: ENC[AES256_GCM,data:5Pw0orOTzb1xCefwx/n9h9m8gmEY6irE,iv:nZvnPSb6sXjS6k4wNUoo2PCJyOcwjm36gs9l0mxwAeo=,tag:0seJlVi9qTfBiol7mP6DQA==,type:str] secret__hedgedoc_kc_secret: ENC[AES256_GCM,data:7RyM9jfKnaaP7kJ1JwucPa/IAwaRc7Hhe9VYIKGEmlc=,iv:RvtaWLsf/X/y8s+DLANcyVgagJqGB7EkvQ2nYm2Xo24=,tag:amdgqknDGeZxUBmXsd1ksw==,type:str] secret__pad_smtp_password: ENC[AES256_GCM,data:msnYZYl8vP+OeISI5OOglQsCQ8vxMZ0gig==,iv:oqov/myWJNzUoAn4BSX6hN1fWyab5vud8NmT+z4ECqs=,tag:0T3Xm2zw5k5WmC9Ks03XhA==,type:str] +secret__hedgedoc_session_secret: ENC[AES256_GCM,data:pHm05ETouEOfbjnallwvhifEz0qB/sMdhYNYqDKKcQyOpk970WRfjNYXh2Be+MCcM9aZjJkHv/2Jc23jngETfg==,iv:z+IWBen08PJGdz9kc8RbPu07oZua2e+IlOfhhleAqUo=,tag:JJ8MM8WP8z53TrafVJ0/PQ==,type:str] ansible_pull__age_private_key: ENC[AES256_GCM,data:r9j1ikemQXl+Fq3D141P/MVltGLR27UyHxCCWnZphOLyGhyhQgqcuFqwPy1kZhnbg/mj5DclJ8rzqyH65T0XQu9h8d/vh7Apm4c=,iv:xOmxBTVIOTRt3rzWM8wHKVD7UHeuPj2+NSHJnCvU4xo=,tag:CA9dR+/rB/wfcPuU/+zwsA==,type:str] sops: age: @@ -13,8 +14,8 @@ sops: SzRBbUNaWUZMb2hXckQ5ekFPQ0hSQ2MKYcb+ylmw46a5xmDZSW5HfxUvwtsH2Aqw hgMNTkiAKyo9JWjhbAwdkZd75BTsukIB5846Fbblpjo8kGdP10H6vg== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-10-20T18:59:09Z" - mac: ENC[AES256_GCM,data:3BwneKrw8YKmfwIoDyNRo+SG6i6VMW5tECQrhMXiq/mB/14xHHrUcrWRanFknm6JB518Ohv5HEjeHsrYdUehwpzsl1vtCji95osa8JdZY5moAt+4f06viRFTYa6GrfnNKToUR9obZFiPAHlMXcTTx6y0m/nPrtFZhuNtFssOdxg=,iv:4fElvIvapfqSqxRLE/NSiWyun5hAA8JLsai/Eoa5K68=,tag:mPKOquAMj43I0WhK6budLQ==,type:str] + lastmodified: "2026-03-09T20:05:54Z" + mac: ENC[AES256_GCM,data:iTfsv2WoOoP4RHWRhau/8olT5BQn2jWE+iizKuVSGIqcG/MZKastj536ZjhM5GYZXyROXEObAenB7G7Zjy9rK5cv4QUIw0FiYN0irObOcXm6/mlVb0OoYHv4ObPhRvGidDNONhILIJwW8+TOHPMfwnhswff8+32gkVvdZtk1u4A=,iv:elNrdohgQVtqxSX6IC8lNUF0mWPV+maYX2MrletkqV0=,tag:RHAlazcp6mp+BLomFV7Z3w==,type:str] pgp: - created_at: "2026-03-05T19:18:04Z" enc: |- @@ -216,4 +217,4 @@ sops: -----END PGP MESSAGE----- fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 unencrypted_suffix: _unencrypted - version: 3.11.0 + version: 3.12.1 diff --git a/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 b/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 index a1501dd83..9ec25b2de 100644 --- a/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 +++ b/resources/chaosknoten/pad/docker_compose/compose.yaml.j2 @@ -37,6 +37,7 @@ services: - "CMD_OAUTH2_CLIENT_SECRET={{ secret__hedgedoc_kc_secret }}" - "CMD_OAUTH2_PROVIDERNAME=Keycloak" - "CMD_OAUTH2_SCOPE=openid email profile" + - "CMD_SESSION_SECRET={{ secret__hedgedoc_session_secret }}" volumes: - uploads:/hedgedoc/public/uploads ports: From 242746bcbd76930156c10510307a24ac877abacb Mon Sep 17 00:00:00 2001 From: chris Date: Mon, 9 Mar 2026 21:13:20 +0100 Subject: [PATCH 141/142] alerts-fux: add alert for blackbox exporter probes --- .../docker_compose/prometheus_alerts-fux.rules.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/resources/chaosknoten/grafana/docker_compose/prometheus_alerts-fux.rules.yaml b/resources/chaosknoten/grafana/docker_compose/prometheus_alerts-fux.rules.yaml index b1836a3c4..97de74489 100644 --- a/resources/chaosknoten/grafana/docker_compose/prometheus_alerts-fux.rules.yaml +++ b/resources/chaosknoten/grafana/docker_compose/prometheus_alerts-fux.rules.yaml @@ -10,6 +10,15 @@ groups: annotations: summary: Job {{ $labels.job }} flaky on (instance {{ $labels.instance }}) description: "The job {{ $labels.job }} on target: {{ $labels.instance }} has been flaky over the last 24 hours." + - alert: ProbeFailed + expr: group by(instance, job, ip) (probe_success{org="fux"} == 0) + for: 1m + labels: + severity: critical + org: fux + annotations: + summary: "Probe failed for {{ $labels.instance }} (job: {{ $labels.job }})" + description: "The Probe: {{ $labels.job }} can not complete its job for {{ $labels.instance }}, this most likely means that the instance is unreachable." - name: Fux-SNMP rules: - alert: SnmpTargetMissing From 904c50c17cabdcf176518229141fb4e674383130 Mon Sep 17 00:00:00 2001 From: chris Date: Tue, 10 Mar 2026 21:45:52 +0100 Subject: [PATCH 142/142] fux alert: set for to 2min --- .../grafana/docker_compose/prometheus_alerts-fux.rules.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/chaosknoten/grafana/docker_compose/prometheus_alerts-fux.rules.yaml b/resources/chaosknoten/grafana/docker_compose/prometheus_alerts-fux.rules.yaml index 97de74489..08e9318fd 100644 --- a/resources/chaosknoten/grafana/docker_compose/prometheus_alerts-fux.rules.yaml +++ b/resources/chaosknoten/grafana/docker_compose/prometheus_alerts-fux.rules.yaml @@ -12,7 +12,7 @@ groups: description: "The job {{ $labels.job }} on target: {{ $labels.instance }} has been flaky over the last 24 hours." - alert: ProbeFailed expr: group by(instance, job, ip) (probe_success{org="fux"} == 0) - for: 1m + for: 2m labels: severity: critical org: fux