Compare commits

...

3 commits

Author SHA1 Message Date
ad062b280d Update all stable non-major dependencies
All checks were successful
/ Ansible Lint (pull_request) Successful in 3m19s
/ Ansible Lint (push) Successful in 3m22s
2026-04-29 19:30:54 +00:00
d9fc1ef401
add host auth-dns.hamburg.ccc.de
All checks were successful
/ Ansible Lint (push) Successful in 2m27s
2026-04-29 21:24:59 +02:00
69fcd2691e
clarify some docs 2026-04-29 21:24:50 +02:00
13 changed files with 494 additions and 249 deletions

View file

@ -24,7 +24,7 @@ jobs:
# work in our environmnet. # work in our environmnet.
# Rather manually setup python (pip) before instead. # Rather manually setup python (pip) before instead.
- name: Run ansible-lint - name: Run ansible-lint
uses: https://github.com/ansible/ansible-lint@v26.3.0 uses: https://github.com/ansible/ansible-lint@v26.4.0
with: with:
setup_python: "false" setup_python: "false"
requirements_file: "requirements.yml" requirements_file: "requirements.yml"

View file

@ -38,6 +38,7 @@ keys:
- &host_acmedns_ansible_pull_age_key age16pxqxdj25xz6w200sf8duc62vyk0xkhzc7y63nyhg29sm077vp8qy4sywv - &host_acmedns_ansible_pull_age_key age16pxqxdj25xz6w200sf8duc62vyk0xkhzc7y63nyhg29sm077vp8qy4sywv
- &host_mjolnir_ansible_pull_age_key age1hv7m3xypesdfm0dfzwgctde8v307g9xaunnfu2687y0lagcs5q7s3eg0kj - &host_mjolnir_ansible_pull_age_key age1hv7m3xypesdfm0dfzwgctde8v307g9xaunnfu2687y0lagcs5q7s3eg0kj
- &host_diday_staging_runner_ansible_pull_age_key age1522f3qzddm82w63j7ajdkr0khvced6ht7tzp3grvp0j3hewtvesssr5kpf - &host_diday_staging_runner_ansible_pull_age_key age1522f3qzddm82w63j7ajdkr0khvced6ht7tzp3grvp0j3hewtvesssr5kpf
- &host_auth_dns_ansible_pull_age_key age18zgt4y2sd75hxnpe333zz39048ctxpr0q8a3uqh3jajjkyawsdrq8yg5ve
external: external:
age: &host_external_age_keys age: &host_external_age_keys
- &host_status_ansible_pull_age_key age1p546j6whqsyfkjuf674lawrnk2ex653fuvwhcwt46gkrspkq59sqzm5y87 - &host_status_ansible_pull_age_key age1p546j6whqsyfkjuf674lawrnk2ex653fuvwhcwt46gkrspkq59sqzm5y87
@ -202,6 +203,12 @@ creation_rules:
*admin_gpg_keys *admin_gpg_keys
age: age:
- *host_diday_staging_runner_ansible_pull_age_key - *host_diday_staging_runner_ansible_pull_age_key
- path_regex: "inventories/chaosknoten/host_vars/auth-dns\\.sops\\..+"
key_groups:
- pgp:
*admin_gpg_keys
age:
- *host_auth_dns_ansible_pull_age_key
# external hosts # external hosts
- path_regex: "inventories/external/host_vars/status\\.sops\\..+" - path_regex: "inventories/external/host_vars/status\\.sops\\..+"
key_groups: key_groups:

View file

@ -14,6 +14,7 @@ Let's assume that you want to add a new web service `example.hamburg.ccc.de` whi
1. Create a new VM, for example by cloning the Debian template 9023. 1. Create a new VM, for example by cloning the Debian template 9023.
Give it the name `example`. Give it the name `example`.
2. Edit the ethernet interface to be connected to `vmbr0`, VLAN tag `2`. 2. Edit the ethernet interface to be connected to `vmbr0`, VLAN tag `2`.
Good $genders also enable the proxmox firewall.
3. Configure the IPv6 address in the Cloud-Init section. Leave IPv4 set to DHCP. 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). 4. Make sure the VM is started at boot (options).
5. Adjust any other VM parameters as needed. 5. Adjust any other VM parameters as needed.
@ -54,6 +55,10 @@ As the first step, we need to make the host known to Ansible.
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. 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. * Add an entry `ansible_pull__age_private_key` with the age private key you generated above.
## Ansible-Pull Configuration
Since you added your host to the `ansible_pull_hosts`, you also need to follow [Setting Up Secrets Using SOPS for a New Host](/docs/setting_up_secrets_using_sops_for_a_new_host.md) before continuing.
## Service-specific config ## 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. 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.

View file

@ -6,16 +6,18 @@ Because we're using the `community.sops.sops` vars plugin, the SOPS-encrypted se
``` ```
age-keygen age-keygen
``` ```
Then add an entry to `keys.hosts.chaosknoten.age` Then add the public key part under `keys.hosts.chaosknoten.age` in [.sops.yaml](../.sops.yaml).
2. Add a new creation rule for the hosts `host_vars` file in the sops config at `.sops.yaml`. 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. It should probably hold all admin keys plus the host entry you just added.
You can use existing creation rules as a reference. You can use existing creation rules as a reference.
3. Re-encrypt existing files with the new key (manly `group_var/all.sops.yaml`): `find inventories -name "*.sops.*" | xargs sops updatekeys --yes` 3. Re-encrypt existing files with the new key (manly `group_var/all.sops.yaml`): `find inventories -name "*.sops.*" | xargs sops updatekeys --yes`.
If GPG yells at you, follow the instructions in our [password-store](https://git.hamburg.ccc.de/CCCHH/password-store).
4. Create a SOPS secrets file in the `host_vars` subdirectory of the relevant inventory. 4. 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. 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: This can be accomplished with a command similar to this:
``` ```
sops inventories/[chaosknoten|z9]/host_vars/[HOSTNAME].secrets.yaml sops inventories/[chaosknoten|z9]/host_vars/[HOSTNAME].sops.yaml
``` ```
5. With the editor now open, add the secrets you want to store. 5. 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. Because we're using the `community.sops.sops` vars plugin, the stored secrets will be exposed as Ansible variables.

View file

@ -5,383 +5,401 @@ sops:
- recipient: age1ss82zwqkj438re78355p886r89csqrrfmkfp8lrrf8v23nza492qza4ey3 - recipient: age1ss82zwqkj438re78355p886r89csqrrfmkfp8lrrf8v23nza492qza4ey3
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB0SHhPV2tlWkR3N052b29C YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA1MEM5UjJTdEJpamc3NGxV
b2w2Ui9XOGw0OFV6SlU2UmVMaEdpbCtFQnhzClZaR216L0VsRkFxRmcvR3JZUVJy MHdsOGFVUlQzRCtVMnJCVnkrRGRET2FZZFhNCk5pdWpBRUZWdndraFNialdJNEcv
eDFuRVpTYzV6QkhtcisrV1E1NktYWUUKLS0tIFVzVmliZE5TYlpUdHlLSEl5SEVB T1J4NjFzT3F3cUcyWU9GNlFlSlR3WU0KLS0tIEJqZHhsQ3FGcHJmT2NwRFArTWNT
UzBVci9zNGJMNDc3dFMrUWtPcG5SdHMKfCAdWj5685bbR50R+RSd6S7b4C72vqiV QllFcmhFRWNHMW9wU3ZOaUM4bm44UmMKxpl5t6H6mUz784WD01MwLbqbVRnI6MGE
elD/28Abm7ESlAz9pm/iKFqamyCg7m2Vp6Ys2r6ovwDOb5KMnR+n/A== dzAftZGjZOQUgO2DWMyHJJR0kbmp0XP68AipBdfnh1DCBGZdmT6RhQ==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age1gdfhx5hy829uqkw4nwjwlpvl7zqvljguzsnjv0dpwz5q5u7dtf6s90wndt - recipient: age1gdfhx5hy829uqkw4nwjwlpvl7zqvljguzsnjv0dpwz5q5u7dtf6s90wndt
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA3T2JmOVhzcnlFOXdDRUx6 YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBaOTViNi9tcGN2WERKM29J
Z0Nwd2h6bXh6bDZFUnRXN3hmak1kOE9JYWtRCitvOFFpU3VYMmZQUm5XZm1VSUpj R0NaeTdYRXVvZmo3eFlDRHgxbEpFWlUyekVJCi9zcmkyekxUeXhUWlM0eHhHZXpE
ekxISXRPQXYrQUlTbTQ1aWtOQnJoQnMKLS0tIGlvUURQK3NQWnNxc0ZTK21DUWRO eDJiZjJJZjdITTFITlJhQVNoNm5ZV3MKLS0tIFA1OVU2UkFJV1kwN2dobXRZRzNY
dlJ3UnpPWGpkZ3RPc3lMZ3hTeVVydEkKY+hjz62dxezXLiCxnIzDHu+AD+hPBntO REUrelZJN3RWRzdaVUVQTy9iL3cwSXcK4cDs3CPbh/7wNok6q421Qt/A8XaYdWuj
ZI7QFFKXnioS/xt2AVvqc5UxIleVbyxK8soPooYGKJ4wJjkVYk53qQ== C6O16WbA7/OqMuPsEdzpvUMCXA7t8ibX0XuifOf5Ddfc2N8J2MpvEg==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age13nm6hfz66ce4wpn89fye05mag3l3h04etvz6wj7szm3vzrdlfupqhrp3fa - recipient: age13nm6hfz66ce4wpn89fye05mag3l3h04etvz6wj7szm3vzrdlfupqhrp3fa
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBXeXlIWVNhdnRpakZaWXpQ YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQSUt6RGloTE9WWjNLNG1V
WGZxN29uRUVVQ09OTi9SZ0xic1BQUkxVVXlRCk9vUTJxWXdDekxkRDBKL09vU1lv Zks1eEpvTE8reERpRkR1ZGhIZUhqTnhaRVNRClNQd1RDVzR2cmIzUVNHYmgwRlFi
ZWR6eElpWkZmNk1DakdpWEJGR0VYdHcKLS0tIDh5c05MNy9aWXdGMXpBRUk0eS9a Y01temJrY1paTE01OUtWZGQrb016TUkKLS0tIEdCb2s4cE5FZ3hkbFJpSy9ZNThn
anhYWnIxUGNyZDJCQVpEaDk4RTU1OUEKrEMfvOQsuhqKe6n+a/JWtxzhxmDETKR+ b2xuSUFhOU0zSHdBQVNCSUFwclFTNmMKqzaCRypoN6qZV6Z2wxazS5pdAZxNOG4r
tHZSOX6iOAYHOxB+wJLszzIEMZJ3fYO5lstz1PMeOvimMPPRODWo6g== dGjlX7prmYT3AeoM6Ez3QA6i6talIwV/XPUTA2BNBSya70P1rXy3WA==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age1jtusr294t8mzar2qy857v6s329ret9s353y4kuulxwnlyy4dvpjsvyl67m - recipient: age1jtusr294t8mzar2qy857v6s329ret9s353y4kuulxwnlyy4dvpjsvyl67m
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBlTXV6KzVhZ29MOUx6RGlD YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBZVGZkZ0V6S0xBSzNiRnk5
TXkrUWJ2bTZWc2ZHRFZDaFdCYUFLNXJZMFZBCnp6d2w0MzcrRDFqUW1CeTU0d053 ZjJheWNyTDFZbTlYbFJROVpNSi8xcTgrRkZjCkhWQW5KSnFZRTNYUTV0blR0NU5J
NXdkZDR3N2dwN2xzNmhNb0dmeXViRlkKLS0tIEkxYzRHK1ZvaDc3c1JUaDFDTlJY NlpLQU43akVxZ2VwYnA2THBOeWhVcXcKLS0tIFAvcXMxaVpiL1cvN0I5akE1UytU
aEdLdFdoL3NXMUhxblRvUkhoT2pUSjgKgTxyWIn5Ma8R/Q9+vw+Rqv7s0pGaxZz1 NVpZRVFHTmFJUTZqVkN3NUJMUjJGNVkKSkvfZL0AuhQ7g43clsafTBMcPTmfaxc7
HNKGBfsCf13SPjiiy4v7d2+a8GJLa9J6pDyKq0/Jg1OGMSKksK4aKA== ugimVl7J9W94FGc1JWpiNLKPElJrmBwfzWK+ymsSvqMnZsha2L0tRw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age1a27euccw8j23wec76ls8vmzp7mntfcn4v8tkyegmg8alzfhk3suqwm6vgv - recipient: age1a27euccw8j23wec76ls8vmzp7mntfcn4v8tkyegmg8alzfhk3suqwm6vgv
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBzZG1KZEgvMFVoUk45dWxr YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQOXZaWGZUaUZObXlzbUhj
N3h6bkZuMzJ5WnRFN1ppdDQ3Wjc4YTJ1aFhBCkdPSmpmRytKUVJkUjlpcWZaREpT MEVxQ2pXWUhzdEdMVUpvMThSQWVDVjFZNVVNCmhlM1ZxNmhEaFdwclU4dFRXaWo5
MzhGOFdSblpXWmV6eW9oVlpZd0lVWHcKLS0tIHVETTgvRVJFYlp3ellTTVVGbjJ5 MkswbGNJVEs1bFN1RGxYVy9BSE1qbFkKLS0tIGUwYnFVbW5ZQnlxTkVJSDlTVlZt
SnUvN0N3cytrMDJsZkRyczFxYzNFeG8KLzDzXx30xHBoy15NPmHlE49ZwhMWBEb8 d3NlbEpxTUw3UzRQUFNMMmVFY0NxSW8KeGHRbJpeM983lZ+dydLCh6m1KAu+GBjv
HWGjJKVsH4XL6u9C9pPc4ttN35KkW3SnYTe0O1w2VCMmMG8vOCCC4A== +WvXCS8zwNJAlWYrerEc9dyMdm8ziqWFWf+vdExvWw8W3V9AXunCrg==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age133wy6sxhgx3kkwxecra6xf9ey2uhnvtjpgwawwfmpvz0jpd0s5dqe385u3 - recipient: age133wy6sxhgx3kkwxecra6xf9ey2uhnvtjpgwawwfmpvz0jpd0s5dqe385u3
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBjcXhYcFpiUDJ6Qm5TSGFT YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBYa1laTUZLMExaYVdWcGpF
N1QyZEJXUEdtdTZoUTdVeXhFcUVvVXdYbWtNCi9RbytrM2laS0xYUzdVSk94TS9n RGVaTXJoWno5UkxPaytRZHBoWEhzMnB2ZFdRCncxT1ByQ09oNmoxVFh6UTFrVVRq
eEI2MUlZcCtqckl2NmNvdWNub05mcGMKLS0tIEpVc3Q1R0JIcTJmYnBOTGRiK01n allLSXF3cVpjVGp0VE9QOExyVEhPL1UKLS0tIGx1SkJrU3NhVUFLdW5UY0U0UmhQ
YUZlNjh6MkZoemROLyt6bjZrMisrUWcK2xLt4YKc9N9uWoNuvEf7XrgNOBeYaUpw WjUvTzE3T0hzSytuVmlaZDVlV2VjTUUKbpqnjckJ5IhUDA5JDCtPn9R5bbtoj529
0nW5Q9jnQgDxJwl+Gs2uCgsSP8pB1pJYxdoiHZ43yF30GTAhlqNIiA== A5LgDR7jQxncYugKgS8NEn3W9jn+qir0QCfA3/SCQXoCIphgMqCG2w==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age1na0nh9ndnr9cxpnlvstrxskr4fxf4spnkw48ufl7m43f98y40y7shhnvgd - recipient: age1na0nh9ndnr9cxpnlvstrxskr4fxf4spnkw48ufl7m43f98y40y7shhnvgd
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBtNit1YmkzSlRxak1XNk8z YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAxTjMrc0ExT1dLNGpaZzdq
OVZUS1lUeHlQc3dxZXczelBsMktXVjhWaWhjCmI3RGl2VEtQNjhoM3FhbTNUTExv UGhSTlk1UTVrUWtmRzJNY1JVN21vOVh4OUVJCmJWU0xhb2NiZG93RG4xUEFManYw
RTZHdjlLTHdzN2V4SWk5RDIwbnhGK2MKLS0tIE9VMUFhY2JrZFJ3MUFxanZnVVpr RTgrSjZ0bTdzaXpENS9VbWlLV1R5dzgKLS0tIDhMOERucG1mSTFaL2Z4THkybEI5
SjVuNmNJM25wRjB0RFk5NUVpN0FidmcK3hjlhkN3ESTn54/CP2QPanwfHTELS1hj L1ZSZlJwTU1VZWpOM3E3K3JpeUMyWlkKEO6owT1gMaOQrbIy7xPZxSG1KwD+m5Rj
J1aJRmmpmUcwK2SmiM4BOBjN5BWopT/9hz3J2h9JlxDNnAg8amLfqg== NYZEKIS79ULKHbMx5hW8Lz9KWOFtMxBt6WlIOgE+CUu+FJSt44EgTw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age1sqs05anv4acculyap35e6vehdxw3g6ycwnvh6hsuv8u33re984zsnqfvqv - recipient: age1sqs05anv4acculyap35e6vehdxw3g6ycwnvh6hsuv8u33re984zsnqfvqv
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBTMi8vUUlZTXdQQWk0UzhP YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBHM3NJS0IrUjJ6dmVFYlVR
SkV0eEcxeUtLYU5IYnpBbmlvdnJadVIvRFRFCjE4c29jMVZ2OHhtU1hjRmU5RHY0 TFRvTkFpYVpoaUFkZTc4VjN1UXkyTjRpYXpRCmh5SUJZVEZMUjRkRVFGcWJDZTNo
UnpDTWRHaXFOMnM5bDdXZ2pKc1ZyancKLS0tIFFmUEE5amtQVm1ubml4Yk5EVkdU YU5pbmV3Z3lML0x3dUp2cmw4REFVMlUKLS0tIER2cVhQOTlMME9LNmpIYnI4cmlt
SjcxVmpzYThJcFVpK0lFZysrVktmM0EK3kQd5WC+rhBhaM8r1qU/a+Ycg91xtyLb eDAySGZEK3NvOXY3OGxoU3BTdER4MHcKSKUdU4cBePruQl7gksmrmc+gSPxKUixO
PHMkHu36zdZZDy8FHF10XBATR8Wl7CK0SPiAPQy96kFMtlOdbNPUdw== 1F0sJo5kXOxI3F78XBS1Xt0LwC+Tbd4w0jfdevNaC6MaRv/KdsX7Pw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age18qam683rva3ee3wgue7r0ey4ws4jttz4a4dpe3q8kq8lmrp97ezq2cns8d - recipient: age18qam683rva3ee3wgue7r0ey4ws4jttz4a4dpe3q8kq8lmrp97ezq2cns8d
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBRZWxTOC96SUtua2ljOHlH YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB3cFQzK1A4UHNmNE5YOFNw
dkFQZmc5YUpmLzkwc0xiUE1sSHQ2b0ttaURnClBIaWpaVnlxUU5Yc0NIZjBHZmkx RkhMYmo4bG5BY2hPcVlNMm5sTkNpQXJqNlU4CnFBL3p0a002K1M0cmtZR0tJb2lU
dzhRVCtob3RPOVp0anNxM3BnT2MrVVkKLS0tIHlTTXM2YVZqdUZSL3lhQ0tLSWhl c2xGMG9JTmZYclNocUFIc3ZyUEdPYzAKLS0tIEFtU0E3bUFxaUk5VmQrSFBUSkhH
aTVSK3ViOUY0QUpBaUdBeUtWSllZaDgKoPeOtwkrjMOvutf8/gaynNQ/sGyhbf3H K0lHMDArMHJ5OGFvbWlqMmZUMkROLzQK6zk6z19K2r7LriD4qsvBEuof75aHB38V
MVGkg3N4r7w1zRW6gqlQG8fZfGXpF6vdU7Jaxid8Lzy7+k1FLyuShA== HKNmlY4GuZZhrRXt/itNbXrW3oIKJBFgsC0ejv2ybVRqC6gXCcjqyQ==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age19rg2cuj9smv8nzxmr03azfqe69edhep53dep6kvh83paf08zv58sntm0fg - recipient: age19rg2cuj9smv8nzxmr03azfqe69edhep53dep6kvh83paf08zv58sntm0fg
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBYQkxLdDhDRDhkZFIxbUU4 YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAyRWhvMVpQNlVWS08rK2FW
SkpTSTkvL3JUMENKR205K1BhaFlRRnJjOUdjCkZROGl2UVZ2clhibTBMamhkZ2JP VFFlMzB6NWU2TjlSWDVYNW80UUNtdGZRS3lFCmg0dWREejZIVmdDV1p3QWJTR2pZ
ODFnbzMzRU5XOVF5ZXlDTnVlcFJ4Q28KLS0tIFp0NUxHajN0b0FJWityNWcxaWNZ M1JzNFlKOTcybk5MRmtHalQvRTZRSlkKLS0tIDhTangvbkJmUnpweXZLcGE2eEk0
QTZnUFhoWmZkUyszQnRXQzlxS2xySW8K8Mvfv3RkpM9e8U5lERrcF8GgU8Q16JlG S2xpaXVySWRWRzFOSEw4bU5PVmxQZ0UKRxqXH/Ye/MTS7DviOf/5SeOKH+QIC5zW
+jW77k3VQ00fpk0+/9Nc/cgV8bkiMhSzUkYRzffx0XIw7CMwRAGlwA== ZMgnwSkO+cgdpecOQKcy3UlrjKuKsll9Kf1JyUV203IBP9LIDgweqA==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age16znyzvquuy8467gg27mdwdt8k6kcu3fjrvfm6gnl4nmqp8tuvqaspqgcet - recipient: age16znyzvquuy8467gg27mdwdt8k6kcu3fjrvfm6gnl4nmqp8tuvqaspqgcet
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBvSmMwVE5qQ3BJa3hYOGxq YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBSd1ZmMTJLVHZCUysyUmxT
UVl4Wk1NNTN5M2tpbnM5VHpWOUtWSU5WT21vCjNDY05idDdSY2NqOVk5NGF1bzRm eGJleXlvd3VjeGtNODM3WTJ1N3VzN1BxSkRZCnpXRDBjMytoWG1mMWtVZVhUTE50
RmRhQ3ZCR01pcFIzc05peDhXV29oRkEKLS0tIDk3UTYvRDJiUDRwRVppYzZnNUxW RC8yK1NJUDEyeUptS1lFUTVHRllVTWMKLS0tIE9mNG4yVXd3SlNWbTMwYmZQM0U0
QVdwWVlZR3BaYXZqQ1JSbjkyYXpNQkkK3/GjFCrR2PSNbKwIQy8OrVTCPLtSbaOR Ym1zWjBmM2pJS3BuZGgxZWI1YlJPVTQKdRZOyOv5OI6Cx327jHr+7/Oo5RXTjWZK
npHyCDzER4X7eQZGIAleMe2R0UEd2330aUzk/Fw/Kdn95I82t8si8Q== Ysq6GkZ6EmZjYtkTkRGwygrGBB1qi8KYFFkbeDu5jvAH7Dpcm4DhZA==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age1azkgwrcwqhc6flj7gturptpl2uvay6pd94cam4t6yuk2n4wlnsqsj38hca - recipient: age1azkgwrcwqhc6flj7gturptpl2uvay6pd94cam4t6yuk2n4wlnsqsj38hca
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB1Nys0QWFqbTlHTHpQWWhr YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBUVzF2dXhGbVVOd285ZEZs
TjRQMWJCYWh1bDNBZ0Y5aVc5MldkTDhKU0dJCnk5eVN3Ymg5UnZQT2FHODVPM1ZQ T1pFYVZCeWEvNndDdEpJYUIxYmZ0bUkxa0UwCkxLelVaQjZBbUJ3UVdxVUdVVC9B
Z0RMVlhZb1phaFV4eDVJcTRKeEFEUFUKLS0tIFpQcVZraVlmT0dGWms3N3JQNFNr WE9DRUY2MXRBUE9jQ1YrUHRXRjdIVG8KLS0tIGhXVnpVUldSVEJXWHRxazFuUTR3
MEtwTStHQ3RJVms0TEZQdVZxOTI4eVUK2DUI6QPKg6T28ENK4ioL366Uj4coCGyy V3BSZUNET1hKMnozcldKa2V0MEdGdE0KwOHKLQLnMXjn10K61ugzms9XirG40JXU
aBiVa4RZybTDVv7LHtLfPK5wjFilasn+lnXCnX8BRmq9o0GYKzBZLA== J4s94r3/ZG4xwwWGYPn8f+dExTz8wwuclXtHg1sYCgWobM+yUjXAmw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age17x20h3m6wgfhereusc224u95ac8aj68fzlkkj5ptvs9c5vlz3usqdu7crq - recipient: age17x20h3m6wgfhereusc224u95ac8aj68fzlkkj5ptvs9c5vlz3usqdu7crq
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSByT0xtU1ROOVFIYk5CWlZL YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBCalUxVVc5R1hLUS84YkRB
UW9sMzUycUg2d2Nxc3plbWhUUExFQ29GQmhJCkdSTW1Ecm1CT3hzbmdSZGRWeGo4 U1psWFBEVEU1VWlodk5pQnptcEJMeE5HR1FnCk1lU05JUkhEenkxWmxqRzh0NDdk
NVR0UUJhTzZFYXlReHpacjQwWDRVbXMKLS0tIGFEVzdXN0Y0d1ZUWk1CbWd6ZHpl V2hERUxyUXRVbUc1V0lNMlZOTENSeDAKLS0tIGZLVzRTc0h0dEJsU3VuK3JhL1c3
MTJFeFFpaEVRMk1UYzhYODZBSmE1YzAKisxJBfcR3HBiIuh1e1wxKJ50kyJ/CotS SVZRajBBMlpVQkxDT01ZZVpnOXJSVEkKfTx3/lg5iRx/vO2QA8KqX+sukU5HsgTF
9up/2t829UCKAHbrGQZgsZYdpw7Mv5DiD/lijoel3s+mNGWnTU48bw== mqmGJEm9lFaDWJ8dVipNd9pNm3J+Srv2CEnPpOTWduG5JuyZ/CcboQ==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age1wnympe3x8ce8hk87cymmt6wvccs4aes5rhhs44hq0s529v5z4g5sfyphwx - recipient: age1wnympe3x8ce8hk87cymmt6wvccs4aes5rhhs44hq0s529v5z4g5sfyphwx
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB6VGxYM21XVzdjRDQ3VkZS YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB5WktEQ3lvbHFzTDlYdTBD
cmhoMTBVZ3pzck9hSnVZWTZVWmFGZ2VnZUJZCjFRakcvcEhoUjY1Tjh4K0JOcS8w NjVhVjVOMTlkWEdjVldxYWxSaFhTditBUm1zCmE5Qk11ejRPNFlLMkpjUlJHNVBT
N2VobHRjMU1JWDhPb3Jub0hXY1llZWMKLS0tIDFpTFEwUlhwNm80WWk0SkRLc3BZ K0NoWlBMSHc1VlRaakk0WmRpd0NZQ3cKLS0tIFIxK1p2YlY4SkNkYVJjQmdGUWly
dEVua2pBYXZnRE1tcUpYcVBGbFMrWHcKeyuhXl++Z9PLbiKuHPWQV0xn1WveVdqS QTlmTFlZdzI0LzBqTG1sZkh3U3V3a0EKxZIc6i3mMSgYs9FNmZ9cVBaeYeq04vUe
AFp2kPeYs4/EYUxBJUsPQV2Rg4mmfa6L/hxYyFm/TzYZvzRiuMMaGw== IjhnwSc02E3hWtFt9qqhhZ77th+HFYtFq22RnQEt69djrjji19R5PA==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age172pk7lyc6p4ewy0f2h6pau5d5sz6z8cq66hm4u4tpzx3an496a2sljx7x5 - recipient: age172pk7lyc6p4ewy0f2h6pau5d5sz6z8cq66hm4u4tpzx3an496a2sljx7x5
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBSM1VIUlh5WHY0RlZDL3Jh YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBBSlhvWWRiM2k0YXY2Qnhq
NmNibUhBQXdUV1BmZ0liMkdVRHB1dTJPQ2w4ClhxUUpZTkh6Tkg4OWJ3VXdVc3lD SUU4TzJ0WGRlTGpaZkNiTDNoZThkR1k4aXk4CjZvZ3FJM0k4cGVzemQyVjVScGs3
ZUdncCtqY2hwMUg4QVQ4N0NJQ3BvdU0KLS0tIFI3YU5PR0xhNkFBNkNFY3FzNHRX S1hZeWdFS1lKci80QU5ySUkwRDJTejAKLS0tIDI5VEZsT08zOWszcU9OZkJpMnYz
UEhsc210OFREbmlvcXBZcmpBY2o3Y2MKDmwNbEgi/tNQ6KoHgWiZwZo1npxBhrjX MDlaNlg5eEd5a0R4SUtRVloyOHBzVDgKQA7hnBQ5rbWX8Leo5IMF4R13gEoH3zDQ
I341yyaCvx8r8cxgAZ2vyTOjynNUV8wwl248QERAa6U6yVW0Qb8puA== gpQZw0N1GHmb0+OimEbK0Vkx0kc+/8MDYk0EDhN/dbIOyrR3Ms8InA==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age1p7pxgq5kwcpdkhkh3qq4pvnltrdk4gwf60hdhv8ka0mdxmgnjepqyleyen - recipient: age1p7pxgq5kwcpdkhkh3qq4pvnltrdk4gwf60hdhv8ka0mdxmgnjepqyleyen
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBleUl4TlF1Y0pZRFFONk42 YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBVUjhKVTU5Z2RIWXFwS2hV
OGZjVkJNZktUV3hyaXBPZ0FTaEFHSDdib0FRClJadjB2bitldmxkSTVyaFZxL1Fr UDZubXp2c21uaEw4b3U3am84YWlDZ1J3cTFrCmwwb0QvazRPNm9MZURjWHBDVkJl
Zng5S25JdWpyWnRtMWNVcllMYXFnV1EKLS0tIC83U0RxU0FNRHBKUkxnVWxSeGpp cElXeTJPVC9ZNURTMUx5RE8zZHMwOVUKLS0tIGZPVkNqVHIvbERqYUpSRDJGaUdm
TXlQNGs4K1pMdWEwRFJyaUU3aE9KWWsKxHnQTFW4XGaRuOsS0W3bO7GC8xZr/D8U bit3QS9DNTdRbVU0Q1NOUmxDVHFYVGMKWcQe0q71BY9dzpxZ/C3un7nsWBU5wuNN
/UX7Ggo0BP95XM7VXrsGYzXReOp/z4qR6iEtF+CL9ny832VAKM8LUg== pZVxp7SU9nZnz2L2VjQVJ7s/kLLVJsPCPglPIq9dvzsQgZJrHrfEng==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age1sv7uhpnk9d3u3je9zzvlux0kd83f627aclpamnz2h3ksg599838qjgrvqs - recipient: age1sv7uhpnk9d3u3je9zzvlux0kd83f627aclpamnz2h3ksg599838qjgrvqs
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBYSjNiNUFIYzZvL3o0RUl1 YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBOaVY1T3FBSWRGOHE0cHRl
eXFhWXcwai9PdlB2R3FYRjNON0RVZWxmWWs4CmNqT256bCt1cHhNSGIxMjEzRVg1 K3VrdUduZk94cFYySm5wZGhucHNqd3d4UWwwCjJPT1RxMW9yOHArMVJPMWdaQ1hx
N1hoeS8wS09kQUNVZ3hyKzgxTDNRRjgKLS0tIHF5a3FrZ1F2cVc5Z1NhZ1J1U2Fa clJ6UjBuRUtnWkFhQm00eXZISnhsSlkKLS0tIGYrY24yTkQ1QldlMnpPZHQ2c3NY
ei9MQVJNN3NCUG4za1dPaGxQOVRsSG8Kx/ygS7jX5xB6xNi6YEjJU3sY/BiZibMi aXZzQWFZT1ZxSitZUGRtVTNmNC9yYnMKP97sFS8CVxEwRyHEDLhox33p34tn4it+
5Ajtu3gzB+U4pJyOBGS6wIyvCwgNjVGmjTaIFSb4CDWUsXBMG3jkwA== yRDs0iXY9GEzPnfmH6S1Szh9jxuLbKW7PB8pEPV4yiuGoHLEWyritQ==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age1dkecypmfuj0tcm2cz8vnvq5drpu2ddhgnfkzxvscs7m4e79gpseqyhr9pg - recipient: age1dkecypmfuj0tcm2cz8vnvq5drpu2ddhgnfkzxvscs7m4e79gpseqyhr9pg
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBWcEFRL2QwQmkzUllyWmx6 YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBXZE5SeFBsZlJBWnFRNGlS
bWpkRldOOHE0QlUwa0w1WWJocVBITC9GV0FJCldTN1hkd2F2MFJCMkZlMytKa01l Q2dCcVhuZ1ZkWlRPUFAyMktRejBsVWJrNjB3CklMa3JwZnFpRTZKa2hRRFRzQU81
WHJaOEFQTVAwUzUxN2tIYmxqMDVzVjAKLS0tIGhmUmh6ZzBSblFOL1FaUm1HWlhv eEpkMnkxZzFFQ25mVTQ0ZTRkZWhXM1kKLS0tIDU1STF5cC81U0d5QkE5SzlQNERp
NnFVZG80ZVc3Q3djWkh1YnhOS2ovSEkKlAq0Zv+U1oMt5jm+BKf3Uqv7IoOIRDs7 c25qNUZJbEt5Y1NJTVR2TEtYeXRMeGMKIMFH9xzPuM6twDH9d3rKKjzbruH7xfot
mqn2va/EjuJoglqr45eq7ipUctg+wg5ijXI6OfANYqUaSnIaoTsPhw== Dkiknuqv+7iw3dVJKNGiadDh/AMlE7M6lfF9OXhUPHCaR8E11DWSJg==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age1mdtnk78aeqnwqadjqje5pfha04wu92d3ecchyqajjmy434kwq98qksq2wa - recipient: age1mdtnk78aeqnwqadjqje5pfha04wu92d3ecchyqajjmy434kwq98qksq2wa
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBvTGdxbkkrcVdGQnYrOXNL YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBxY1ZLYndkYWtjb2xHc0Jn
SFBUd2pmMWFaeURLeWJobTJmZU5qNCtOb1dRCjhVSFhlWldmbWJTbG81NTNNZHZC eXpLUCtVRkdoOVhZR1dyeUw1emk1c1ZCd2kwCjFKbG0rbzVCSmZNQk5JbUFlOHpj
QnZibitsWWl4eUNneDMzUGVLb25lWWMKLS0tIFpsM1ltdEJ3U1ZQTzY5clNTTDcr aU1JVlJES3VZSnlkWXowQmlFcDI2dm8KLS0tIDlqZlNWdURNdSsyYlVtTHRaTkIx
ZE5xWDNCalhiRnY2WU9oZFI0b1VLWnMK8pOimnXZLgkKgf/meqaJBQg8wVU5E50D VmhvU3crRHpSSWRKN3hlV1dZcFplUkkKGjNXgrwypJg+4dY7C0UdWyAl2whALT1B
k+LN9oZxB7SOunMiQHUROPp/ib1OBlWTcuVVj8pRb+sLXd9SV26hSA== GvqovLzd2nGZAvqFNdnlf7o0OUgSjsPG/PuYkWARsWEd8Dm1wXqmiQ==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age16pxqxdj25xz6w200sf8duc62vyk0xkhzc7y63nyhg29sm077vp8qy4sywv - recipient: age16pxqxdj25xz6w200sf8duc62vyk0xkhzc7y63nyhg29sm077vp8qy4sywv
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBFNUZEVldoRUNqT09jRU1v YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBYVFlOWUtRNWZXcjBTWXFu
VGxjbUxFOFZMNTJVZWtrOFcrY1FxTURXaERZCk1JWWhySXRJU01DU3piNUxZbkNo RXkyVzlVV3o1RzVpcWNPS3NtUkNZa2ZSL0dBCkFRc2RLQzQ5RE1zOU5aYWdXaHZF
MVNVb0ZnbFBUNm5QLzlDRmhFalc4MTQKLS0tIDlKWHF0eTRiczh3T3ZVNlJCZnZo dk9DTnNIdUdINXRyVXB3QW50TytsUTAKLS0tIFhxcU9Sa2xpbkdVZnpXR2ZyaFZ0
MXZKYUx4eFpOMHE0WEJNajVOZ1YxNG8KDYWpoRRq507hXclxh09Hc+qTHJpM0hW9 ZHNISkJpZjBDOFJFVUowWXBmUW9TWlEKs9zAz2NrkZ4liwtt+Exrlm5xhdLMzxTO
NwjyOJRT1HLAdSutL8I9GaNpGGJBNizouO65BfJp0eVzqK4GKejMOQ== AUxkfeGAGFFxB+9erbUs37PICrGNtcN3dw+hD6UiCEFb7fPg8YFrVw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age1hv7m3xypesdfm0dfzwgctde8v307g9xaunnfu2687y0lagcs5q7s3eg0kj - recipient: age1hv7m3xypesdfm0dfzwgctde8v307g9xaunnfu2687y0lagcs5q7s3eg0kj
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB3VXZhdGlXa2lRa1JrV3RG YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB2NVZMY1BkMTZDUFpjOWtr
cjl2LzB5SllvSERWamthMHV4OEpRQ3VsY21jCmpyai8zY3FFa0ZBK2ZCSWEva1lZ ZFBQN3M1Y0JEdWdkb1dsRyttSUl1YmQ3ZXpFCnhSQjJkYm00QXpXdnFidFNGUUNZ
bTdQWlNDaFUzbUFPTVhsTDFEcUR0QWsKLS0tIDVPM1F5UzdYSnRnOFhCaVF5ZUJO OWdiVFRUcTZiZFVVTENxRHJ5QklXQTgKLS0tIFpoNU5tZ2dxK0pTeXRWWlVQV0NB
ZHZtMUhjdlJ6MWM2OFBod2ZmMkdZcFkK31PoSqKZi7/Wdn/g9VYuYY93McNFqgth VFNEZU5JOWJEd1pLNmlKaExUejV3WWMKuaPoDZOIe5WdLl828kf4rsZiOQcQUqEA
yJjSr6P3vzrOXRewdSwT6BsnTiJbcV0MXSRp3EN+8/xA8IsPg4Of2w== S9WTYVl20MUJrzPUS3mEksD4O7F+9QE0Krkb/eO4pgXJVvHpdgNM2w==
-----END AGE ENCRYPTED FILE-----
- recipient: age1522f3qzddm82w63j7ajdkr0khvced6ht7tzp3grvp0j3hewtvesssr5kpf
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBIYzlQY1VvVkJhYlFYTXpp
dUkvRUhFRDY4Z3UzZm8xaFZROFFTMWZXRGxvCjBmV1V4cWx2VmdpM0sxMHNLazNX
ODJxdXVFVnJULzdtcVBoSVhKM3VNRXcKLS0tIDQ4RHRiM0R2TVFmZEx2Sm5xVVdF
NVhjV0pUSzVYVkJ4NHRnYm0yNzhBZk0KhYjZ5APXfIDqfYOyFWv81Cm0cBP28s23
iWl1+LNZXopNgiZSPY9YTri5QjfrzdjkmzoxcaGwCo7Bg0tUDL16Cg==
-----END AGE ENCRYPTED FILE-----
- recipient: age18zgt4y2sd75hxnpe333zz39048ctxpr0q8a3uqh3jajjkyawsdrq8yg5ve
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBmcWJpNDJJR2JIVGx4TGdw
VE80RFpSNWZUN0VjZDI1Y2dteU12V20zOXlRCjd4TGM0cVFjQ2RZbEhEcjQvTFc3
NHFWY2FmVjJ2M1ZXOTAvRWo0ekRWZEkKLS0tIDNpM0VlaDlQS0dlam1ieG92YkRB
VnN3T0Q0ZlphS25BMU54VGxnQ0Q3c3cKoQ9JoBb+6koGebDUa0T5eQZ630UqRGlv
RQs07A5771zr63BzivhXVxu2+oMMKQqt/qThCvUxPP66p9R1164fbg==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
lastmodified: "2026-01-25T18:06:26Z" 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] mac: ENC[AES256_GCM,data:plHNLOgGWwNWbakKG6X5EOxwERE3rvYO4EOAzY/sz+uM7cZBEnqU5LZwjlD8B75hgRHqpnDBF0JbHgsEwVxfJJRL1phkeMJFOapQMjZVWMz6j7eb1hOwpdktd+bpuimy4XCD1aOxOoInKpFSK33usxLfyqSxjFDM5+i6D22qBTs=,iv:/iOIfNuSIDsa/UKLP0d63tpOrYMFO3Bk1qPssY0AzuI=,tag:k+824MXD+r0lNUcuvisudw==,type:str]
pgp: pgp:
- created_at: "2026-04-18T22:36:25Z" - created_at: "2026-04-29T19:17:31Z"
enc: |- enc: |-
-----BEGIN PGP MESSAGE----- -----BEGIN PGP MESSAGE-----
hQIMAxK/JaB2/SdtAQ/9H8/E+EwjeR9e4MHSsRfSMO+2KZ/9IYtAFojKfMiaOJFJ hQIMAxK/JaB2/SdtAQ/+PyJYRRxBL+4dr+CY+3hEplzkqt4+LYgjtKx4z1fCOLKT
QXFsJf4cz7VFfYC1NV+hhEWPjT4tSXHxP6UGmnrJkHk4jW12LprfSo7qOJ/2xajM d83AjsfdM8ddJtNdh/Xg94WYZ6en2d7rgVtLs+Jxpfohb4Nu6KSWDpcJyuqLaHTs
livtyzp0DDA5NpetgLxGe/hEEmpblzZgjSblqfvRZmcpMIbO4AIf8WpJJ+fMk17Y cGstX+nVdjN0BX1yis1HE2wZAtKOZo+g4xuY8CYHbsjML5NyWNwE3xmd3oZbtsy2
/rts8soEDOuZTW+nybiNEfcPyLRUj9FKnFgnVB57C1sjdPlJeKEzHqV4wVfeYRw6 C8myY9aHhPv0ujSIp3fXF0KNg6SDaHyNfnZzCrPHX+HQN25U78FPg3mjuFVmymFc
Xb/5sGpXfxvoJpEm9BJjnocK3npRWIgJylxf6NqTYkaI2AS5s4IpaM54gYNIRv5B UwNMbjoCTZg62bd+oS3b06hCc4XgCS1K81rIj0yzbUT1tDFVDkJLuYLPzS8nNq/T
EBJCnsE86C7hC0Go3/xLqvoRAGcUFC8x9mEWywZVjf/cXzzoJvpRQCQy1drCSnKM jBGJnpYD/S6PP9l1GqIzkfDl+Qnos3fXCHV0uNFGGrz6FWg3Q/lunXACqgD1+v4r
GwSUDSEUUOQt81pRqH2Do9lhHWK8pW6gPBfepOnVI4iRrPmEjQzmDF5bYWZWxj8e z7ez1FgVfVB7ixzmhfV0GOwkWDAhvoKysMhURowxDtwYsSOg9gVRYvZuXcRxCo7N
zvfwa34Upd5j62P6LtQLUatyMGD04XRrzRVmrgKhb9rius8jHS92GpcLd7UNXc57 nJwKrzKPPL89no01Uqas2Nxb6z/NAer4n1bOH6mAWmOHrCL8vug7M86W8sH8edBZ
sux1sL2VRr5RMiQsD7/Bxili9fZzdTZdbWNY3j/hRn5MrzwxyYlCG8ujDxipdmlu C/z/0UWj0oji6fKeORPN/HATgvu8HAycDOnBp+V1aZW+fsTWBALCvlXPQiIMw8E/
WVP41B3UVFgSnC0QNJ2Vx5txBnA4MtCBv9+QO47kiSE4vtXP7qp7oCNfJimeuG8v PBeXr8QFIbP8T0CT4NEsPDFHr/bBV8WgELyxyTnwWCK+G56MASu+x+3Hd9MJ6BRS
kX64oPDHr9A132U1iG7oggxdb/j0fXCovkrodEpVZR4kg8Okwo0cYiMsqUP8xZjS 9krN2hnN3N2UlnsYn8Yg5noeQCNmpk299DFXOlp3QxVFAMUIFa42khBf+a3rmm3S
XgG8FxHP57wVhTy3gOfBgbeCWwjW62AO5fdRzCXXJ2cvoM78XmNm1JTIWR1sEhUX XgEq1uTcD68eOVeW1ovC9TlBilq08ScqE1lImS/RtTa7qsApqxzjTkz+zTtOlYuB
TK6aiYi2VyHOZXlv2EsP5yPSN/piatD2xa1XuaHOQ47t+vpXvEHDu418TtDRo+k= w38uH9haJOOLL1ZIPjS6ZUX4mJscXRWzA/j1yZpGmEbg9YnxkAcfaN7PB29ref8=
=mvkT =5qlB
-----END PGP MESSAGE----- -----END PGP MESSAGE-----
fp: EF643F59E008414882232C78FFA8331EEB7D6B70 fp: EF643F59E008414882232C78FFA8331EEB7D6B70
- created_at: "2026-04-18T22:36:25Z" - created_at: "2026-04-29T19:17:31Z"
enc: |- enc: |-
-----BEGIN PGP MESSAGE----- -----BEGIN PGP MESSAGE-----
hQEMA1QflAioE8i3AQgArO3p3hIK2TDgq6Hm6BAz9q5KSKpmLynRTUk7x8xyrgv6 hQEMA1QflAioE8i3AQf+Nuf6tFip/Ig0E/JWH6k/xadaLW4WQgy8utumI8Q0anMS
fjiIVf6PnkPST8sl4Y18cotLIIEI2Qqc70RP98et9ROMiyp3uFrgb30bPlQVIJLl 0m9VP5RqUBv2UtkWjnzpUCKvSnIGqGIe7hfeueTMXogEIUBOMtbmmJ1d67/y7z0o
5oobFHa0om8eiqal9HV9WmC+bwBD2KKFzry1rjYAJ681mvWBkNijIoSQBIdMMVPN N2ui7cdJOAiby5nyf8x1tas4vD8RWp5L6NhHwlPfnZlRcCAw6f5MThXMnve2hKYV
CTPqIiNhHt9yz+XMGO44+RillA/i9GDrd3G5pQl+NyZinr2GClBEt+gf6oR9YJMx +/N9DF5NtjEhWgusnlmnBaGuJb2ZFG8muKTpGf9J55iX5G9523HsFIWVh3WeyWhD
pN+PZ0+V8hjrKkjvPlIkE+GLZt75oTNeYmdTjQu2apA+Z4G8AZCJNZb6o8aYeuzs +aC84k1cSIAHanFEnzfK41ALyPFGtRXyacEHJwgbh01VVC79VR/XwDpqiRp2YTXK
5ExPFWLE6xj1ZSh92aRJ1uokjS87M9+5ME1sIXg46tJeAYYx5n6mQeV5jvPb9N6a EpeU8eGedEjVmK4MB0mTY66YFR5UUaZIbMHk0E05eNJeAcMOE8lJpmXkoUqbzftL
W0i6EC6EYrvB3BW5qJvh7TCx8/TBmOcTm8uvR/qzelgp02sufz9rExKtl+EX9Oxv iyYh+CxXBoVzKN0uMLOMaI6bbyuU8/MKOJcsyTuu46Kw/bAGwDXIz9IpnnUOM63i
Sm7PlFzxsO9qQCIzbxxVcRRJWtEkwlu12s64jn3MlQ== 6oIWt7jIcY5F8s4SbhszwOtlPP1IWj9STeDrO4dhcw==
=jcH9 =/IyR
-----END PGP MESSAGE----- -----END PGP MESSAGE-----
fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7 fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7
- created_at: "2026-04-18T22:36:25Z" - created_at: "2026-04-29T19:17:31Z"
enc: |- enc: |-
-----BEGIN PGP MESSAGE----- -----BEGIN PGP MESSAGE-----
hQIMAz5uSgHG2iMJAQ//REljeqnM6ArVUaw8i/6Ja22sea7XGZeAfxqoY/R0hWWh hQIMAz5uSgHG2iMJAQ/8CI40TAnOcf//+joMWhKPPs3BM9eOqYgA+Xk4yWrsRNXX
4zFaDSPShcYP83VNQ04FnxjmjSjzDp2GXywoti7KjwIhz93V79y4zFWParZW5qhS KrjgeQJRV8L1Y117bfduFWcYnvR0S8pSsngQNOED0OENEeEwopjJoXjI1+4XRsYs
5xkquBrY8+xAYQqAbEZVZBN3SsOQmm7d5L3ydIknZYolqdTTv1JRpBgPvXJo4+el sMKSY1ioBvwR53rMfqXIT/+U/lgqCTL0TkybGD4O/4Vi1ITCxpcUjkYf2GM5A9XB
T/WC7WsAFWpc/E12IkDTlH+qtNUYZYlKbEi05Yq1MXt42KNEOtelg1IfpvESOXtI cEsf7OJCRk0+obAWS5nyzSej2XEowom0tBfwsbPn+VPqfP+8Y1KlDduSVX+QQmE3
ub+Gbqj4b4e+M2B/2g1jJUv6fOuNsEXiyOBBk69KdDck31Gju3YfsAsQS91cIMzk D+Vn12UxQRvdcJ2v9x7sr/HeK1ISvjPwL+WDtmHQBY/pnSVuIwClIG7Od7ANK/g9
oXFdKnbRwtP+byIvCKt8gLZXFABQDjgk4CEuTMrxnr6GbLCdTYLkhVsAy5aQTGQI 5vcygw/ka3AUlFGPptk9oXoKqPtvtCL+IQOlbiG9kl1fnqDMKQC1hp7eX2vuTsLf
osWKPncld/diMANMgLwJSQbDromDrJI0O7CEdqb+jOGE0X4RlpCdQhTmOwal0EfC XH6qFlDhZN9nY38mwOTfC1a6iFkCFXrb0RX0t7ec3tweK70HBjV8fvKYO0UUVsDE
9hsH+yIIgrvHmx3nmoYDjtkKZcmO0+oxPcm3Rd8Omhp2n/te0VO/YjtK3NO+Go4a OezkqfeVZp2Wnsm8UmtlEMa0OM9eQlAjtJKYusVpy+dWmxDmktqsSrq6OyfqGtBX
BcbHCJH2wV8UIkzQslFlci0U/plCq+VowiJaBXDhE5E6pwrw5Uw/1emZDIpk8Q8Z 1trKVtSc2ConE0IyMkmiQnz8k13lD8a5PHil/chFfW6zs5MCE83ZfW0mJ4OsJ1ni
YkJ1PG/69Cug9TGum3hAqS9HWotTHVELc1WUQ0FO/jYzkijIovJYbrqzl5ddzZW2 /d4ZLdky0HQhGlL3O2xs3MdR/hu8+TR5IkFqgyGsT5p0uLHz8p2WfIjuNVVRbi5a
rYSdmQ4etYGh+gb6fBXZlghc8SV/jPtFM+S92QGftNT+yoI/oGbd2DPAXqh64tDS l9LBI5g1z1G9yYLB7ta3+1tB3OC1SpIdF5rqqNL3nNuCvfVeGhMUjXNBjok6Y6/S
XgGrLb3JoWWRRHQFTthG++pwxT8/VBWC4WaQ9/PoekI10mQiwJ6iowYzmHm7EQDm XgG9EoweMQGSSav6DcjzhWC70iQJi/JN4/zzQfVvCykaOvwVx/LHi4NtbiV/fPee
xDv0Fjh9nWwMlLyUIcVgj85mASpJvMCpXJg+0o2irYDBviHEKe1WvNODnML6coI= zwBjfwKruoi0n7RsSucUw1rQNBeQ44ZfDOB2Aq0YWKL8p6NtiCfQ0+Xz5Iv4XNI=
=cGxg =c9mO
-----END PGP MESSAGE----- -----END PGP MESSAGE-----
fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5
- created_at: "2026-04-18T22:36:25Z" - created_at: "2026-04-29T19:17:31Z"
enc: |- enc: |-
-----BEGIN PGP MESSAGE----- -----BEGIN PGP MESSAGE-----
hF4DsZXvxFXTXoQSAQdAdjLJpu2sv+AERjo0Nl+Z/dhSc8V/aMNbL/VLc/6g6Fow hF4DsZXvxFXTXoQSAQdAlHfgecaPX2YdrqVMG8SE5y0hd3cn8aTBpmhbD7Tmz0Uw
6JPzG6YQi1ajPSHOn5XcD3Z/GykhOHt2cYBs7n/UkujIQGO+yM57uStoSYXLA6As 5WHJPloCa2jj0rhCSGvGAgGvzQ48AMPWDE/saW69fJOeV9SAUGXRtrqaIuQwborw
0l4BIWKzMDSfH0uoZq1erqfWbdZVI6h6ZLcgn4M0nEwuJbeuAVINa++QBzT5L53/ 0l4B0h3yjJw7Vo3r9Szr58Gw/YKm7126Y/+JqbiT+4zn+iFF/RgIkeI8sla7BHKR
i7CnfNSI9reKMfOYKAftn32D9LxNYckrJwtxR2CLzjt/d9CKImsgGZtp+jL02clc BRSx1d20ydBF3PELw4iwepotQHyNjaf88jWuklB5zvrZI/t/3GP37aDErEB3ml9+
=NX55 =+LQ6
-----END PGP MESSAGE----- -----END PGP MESSAGE-----
fp: 9633412309CCB83BFA39BA5F2FEF746201D7FCFE fp: 9633412309CCB83BFA39BA5F2FEF746201D7FCFE
- created_at: "2026-04-18T22:36:25Z" - created_at: "2026-04-29T19:17:31Z"
enc: |- enc: |-
-----BEGIN PGP MESSAGE----- -----BEGIN PGP MESSAGE-----
hF4DerEtaFuTeewSAQdA7MaZKDWZ2u0/khO6eEkABJKaaLjrXWVLsoU0/ZDwjxcw hF4DerEtaFuTeewSAQdABxGNJ7fKmjIFt8QReNBEsyv24JKjqIURd/7WjMUZtxUw
Jwxmpr0P773wwMmVHUGRqa6jMSkaCyfdZy0aBpEaWV1jXt6HSlTxUgPR1qc+YiC6 Pap9hBYDj+S6LBbkwWjbhSTcm074aBUkqe7LKsRCLGNCHzzmT191ASmQVidwhGfC
0l4BXnq9fFAkDe97qmVTUh9vJx5179R4H1dqae5ERjZD+LngmtJcItVupMFMxCem 0l4Bw3Q0+MeORkS1MqXwt9Dhd1S8Ht2QBNA9eBQpnv3U4lHXE5vbWJHdz7OSBbwo
vdRrhB41R6amjVq4t2tMhzg5s9k1EDOGcxiSTNu588KE7n5SFVQRd3v5N3u93Fg7 Arx/PhSo+Y5b+j2OdYDWQ7THDw7FTHmDAjf8gsBTeeekEWVsKcp8rVgNo2VqCiw6
=cNv4 =j6CW
-----END PGP MESSAGE----- -----END PGP MESSAGE-----
fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912 fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912
- created_at: "2026-04-18T22:36:25Z" - created_at: "2026-04-29T19:17:31Z"
enc: |- enc: |-
-----BEGIN PGP MESSAGE----- -----BEGIN PGP MESSAGE-----
hQIMAxjNhCKPP69fARAAh/Jz+JmlLWD+eOiAsgY41Okawn2T8KxmVVQv1koRh853 hQIMAxjNhCKPP69fAQ//TwWn243v9q9YX2+969TELi4/vFwykdeLTYnMgtADh3za
1eZtHiXafqsEWsbWdCafSbez2Q2iuZUATXRQ3V4810x78BbpuETxgbJJ3XG3aQBd f64k2y9sxfiYBvK19pG1rXr/qb3TfyVnN6FRvvQZzzCxA5Qr8o6QWznZjIlzKYUY
DMKD/Uoau3/L2n8oNBoe2m3qjXxNjzFPMTWYBVm+jwEXyV0MthjrjmGCBaE5S8nq j0lGy6tZIfnB6ZcPv3q6mmKnxii83cj8wECYnY6fwyDIlGGlsHS20+6/w9vGu2tG
SB5DhTVyBRItAmhccCV4KfDEpwb+xqNCzKBFbcHRZkOie2Z2XPJkymQatvgw9nFB uLHg/603QnloqBE4ZM+1jYjX70zThtWbTKqrh8Nn3iZh7UKO5x/5tsgwKo6cr6ce
ThN8QYuXBNtgNqCZmpcZFqstKCUzI5YI4fvmRvo23iuoXluaGwnja/3oOagXzQl4 tU283bL3h07QZLI/pMug34LQPraenbr2PH4CXeNIHGEWIg0ZCyC4Td2s1PIrk8rW
wXEJn3bnSGS+++M8bGEYMCnUg9DDHrcVt3TGyfIBOSmf1sUHRDGsX8WGtz+bWsTK jwrnfgo6JDr2l2Yzre3XJO3rwwN/5uTuhvVYWMch6hYTaNFE2VHpEalscKumm7ra
MsThuhpzfbARQwW1caFsmPL2meTGZEM7NGRkxZ1F9+0dxxo3mB2OWMQE0emcSnJN OY99qHh/kjLUxnOkwYY+xEUx+s9/VPLpCjAptF/Cx1i4OkzUGSvbVbTD9gc6uxBb
z1IftXsSr7mXPy1geUjI55g+WMf6B/CBfP6zIpKEXmdCycL+upA4XhKQKqgBDlOC 6FKhgDcTjtPxfmuRcwM4bMRcCYv2s7ciwooStsXSPO75CLFK9UdWfumCY8vY5joC
hWzp2PPeCXHOKAjdEkVc2x1/m9Mq8filFoRpEK3c13wqvC/3nDpyWSF3S+hkIyiZ zcqRGJzCBRwJRVFS7IK10V6K2z0C69Uo76eGzb80LW4NZvpXKrGLaCQczHXYggWE
+63PVH0l9Y6phUx5ixy9C2V1XvP4mpcdPZA+1OIN5n9ra3n7lCKc9GpcuQNY8S6W 7jSAyByoCiYCWdV42rXWGp/o/LeS8B/u+vYP2VfWuQn056WaF7/86Ueqtx12JaVj
eoF3+ES7xRR6lY7M97BWjs+ZHVGLJweek6drilBFjJ92YxbfvKFw5qk3MbmsyL7S gCcyWkHJorIuq/AbI8lMydu4z0w7AWJotArwTGkL3rp7wnzFfOkMjKAjmMQOc4bS
XgHSJn2mwV2qAfm9UQmsLhUq6OU6tW2vEtIyNKLbPIzziNdQLo0nkbBgk0CMGvuM XgE2Evrvct5VGYjMPtaRnlzMHTDwM1B2FC7QsKbMpBVdKC2Zo1i/N8lyUUUxp3Gr
VlNOo4ihNRq7Xmy5kk9LxshGk6SuYRPYh6ltj1jvWAcFXBnmdwsX9pRGjIvvOwY= +RbdbUbDSXBRwe56XjtM6Lr/VUnOwrKvzxzJ8hOK1B3Mav40U4DoR8nAIZMxhLg=
=1i2z =2kne
-----END PGP MESSAGE----- -----END PGP MESSAGE-----
fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55
- created_at: "2026-04-18T22:36:25Z" - created_at: "2026-04-29T19:17:31Z"
enc: |- enc: |-
-----BEGIN PGP MESSAGE----- -----BEGIN PGP MESSAGE-----
hQIMA1Hthzn+T1OoARAAuFTHSlVNwc21P3VMy8CsSRAFWYFDgdMcnTFX2TtUZFvX hQIMA1Hthzn+T1OoAQ//SeZyWjwuS7ZGjQXeWVYNokSHiVHk5oIzEIYFsfsWtfLD
QZomRmAyMuq/YBlQY9tf/rIruEV3YWvpDHzTLp9jAUXguECSEmtbsLMges7js9so EK1MaFlXUFjRjxHl9B51yK0L6TJf7xQ6cUbCluERJtnmzWHxVBqXJGZ41mSmt7PL
V/lUbIoJi0T68bo/ZOroYtEsFfynLZLuP3BYYuFbDuM8HUjgFobC8nb2m0BcLUT0 ugRoIqv1mMt/3h2byH3rycv8RmYup6n+ap6R4PTlgbiJ7Dvbq6vJYikxv4LLxwOB
3Fo8EkN3+9ui+xXpobY7OvLojTNGu+8NOR5xM/S48WKUE1QDOhDxbH4ox531S2Hu tji5xLeqO5NqDRKBk4ypahQ+kupZ4kjtTc2sHibwwj5c9L1qWaoWf7i8gi2LNQjr
kmsOZkT0Fn/l72bKZfPbjg+dg4z5I7EBy7lkWLULV6ofknxzXU+/c0W7vcqakG3V ZniTOozatXL5HAbWXHl3Pf+bmcTj1p70RdfJXVHH0uA4G3Zzh2vFR8d7EurlzRSJ
ABRGmIKEJ3RTyR3KIdN/65EmVI/BUKHSpvIqmgXa5DaAsxlLQn0I4GxbYyfvrrNQ F0PZ0B4SS9v4k9QUVitxr0de9ro7DfhdK7Xrr94IXY9MvBp/Xb9z6QfehSPjdv55
OZQ2pfpwFCW6D6OaE4DFQtYjcaBsHZ3PkiVD8R3dIzpwtNa39AqIYtpjLeaDFJbj kF1NZcMT2me87r5g5pUgxKCIbHWlT3zKR9fiHfgWSlMGRvsv4BFzRBTWxdl6kPLK
2u9HBkYPt3Lag4Ar/G+TG/uTSCeLudYDEV/NZ+edbVEvRrBgy3Kl01Or23YwSW6d 86A0QQJOso2c0Cl4uf3QUvykh+rdTogf9CMc/Y22JgGz6maR05yh8WQjmVRitr1X
1t8Dhehley9UEF7t1da2m38v99OZJxziMTw7dPzvW4yjPxsrrRN05UzB3OhBWIfC +HugWyQXD1UflwQBZi+dRNhdLd7fBib59k9rHOw7nrRjUmLLHyQ12ZxzhRP0d/M5
zDz/pkE+hSDxehl/Heayq7i/oHCHgiV3usJIE6tOUuftzIHeYSjsSI9MUvVZttb+ he+n1v/hf6Iu+xZ5d2ahmibngsRaN7XB2cFQH+IMz/3vDvsWFnak9s44TfXdmKop
HSQpfC61iPa3EzIwnYVoAImIJiG2U+fASLvhzbR+gjxr/7MNdpeGNpNCx6bbpTnS CoJ+JAzJR0lGEQSZhf3bc1RGNTJKNFv5NjGyHWbwSKglUt03+F5S88n9RGk3J9TS
XgHuOdeZXBEE/F3ziNvnuDXuRe2LPL9qcYErVa9yYUj0fy5dIWVqS5/ye3TGtAN/ XgHPf30r6dVH1lPYkjMXrjL0nxmRuZDOEHli91LdvX37P49MjEAdNaHFMExUaPPW
4ZF/69vGrrvnM2XjEcL+Xacwh1GlfzHT6i6Y2ryEkc54JMK1QDVQxODA15qs9LI= WUUQuYw8oYOdEKdJCXc5n43LgcC/VxivNGl3XEhBWlhpvVahBsjJ2u6QgWRbFqg=
=D8io =dIik
-----END PGP MESSAGE----- -----END PGP MESSAGE-----
fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD
- created_at: "2026-04-18T22:36:25Z" - created_at: "2026-04-29T19:17:31Z"
enc: |- enc: |-
-----BEGIN PGP MESSAGE----- -----BEGIN PGP MESSAGE-----
hQIMA46L6MuPqfJqARAAqPPUcmWUpdN20V486H+2KdmaPXX9oHtDQR0G5Kk+XI+6 hQIMA46L6MuPqfJqARAAmzMtEoWvtV7+4UOlsObzDq0L/ebYhjqvVDcoJnP+O7av
pkcz2lGHlqBXpRQo/ZkWFty4QMvM8U8FZrLIWMMwrw1qvLs5abCFB+5kTWK7KEIs K2ZWerKOyTk2wJYoMoDJTurTs2SrqiqMYXST0dWUrh1WpqjbtsU5U3Q03OkKv4WY
thgA9hJiAal+wpBGX8i9XjcACleNheH6VvhYwQow6w5Z0bNfQ3C711fsSEDqOa8R Cdy81etUxjKTOgx0FADDnmbdKAZKYsfOaCZQ0wKvQ0eLeGw8fknr/cz3GJ0h3Y/V
cNxvVJDKFiCrtFWzUzFJaTVbldMEegwHp0kLjMYZWmaBWGgNkF/8c3I6BQ2DtrKZ ZLdZjle4nI5Yp4B05f7sGgRZdIzQd7X2f0Kb9rO47dtv9DW71hCGGgmjO21sVqKj
N2CYHrQEwLD/6iJOFOGNiSB9fCXxuzRUp3Uqe6rphFBy71NeIxAycC7/gOPJRmyR hunzCeCQRxbiHTrb3Fu3Lt+7wK9Ed2NdqFR9N6P9K/TWOjcrci14vKvM/CejQvPf
KMwSy4BrOwLAVFGIC7rLE3V2nuSVVx4byUFPkExhs0AgKPl5wo2Xp/g7flTPJ7lN 5gHWEcNAeTWS7A1JR3RmD7NSUs8yFDC4kq5oOWtZlOuJEtrSYojG3XtoeOXhf42e
OV/kT/MbprJe4QuyBBbceafE5NGsL2C3vkWp+VzvkutVAl7x2r3u2ut0Xhy9FFF3 yxbhsPzzy4fzrOV9sigwoVXTRe7aC2Xo0IoZG1an+0fvjs4yKE8WTfox/v8Bihwz
+A5cD9szveRNZgJIhhU6iPREQ/miQq09iEY3vFhZ5REHylGzn8VQKTHUmT/NKUMV IHRMhS0F+4osOo7ld7pQys2NkUdWYelb6Yat0lgWio4q7my5Hjx1MMfKIHleMPit
Y9YIfOIvnupjdfVLnp5qTGbzVy/xeIxeG/rFM511m1zUJmBBwaXS+gWs/oRSNeX7 hiU9AUGZ4UVZFz7L4h2d4uyFFw31ZfC8TlgHvJ6em6F0oRmgMBqLaziHSZq5AKUj
A1hlmzsh0Zu3YyEjSsxPl10uNmNgt4bIBLV6S3O3D+FjCX115erVcBXqPg/XxVqf 0CJf9h+PrYRInhwrskLCdblmR/MqOdQj7mMDifcjsZzS89oTX7VmJfXfeh6XKI9E
GbvhCA/aH6h6fkgospSPdJmM4qE/pvsGPZ5PnfU2vR5os4CP51cWQicMn727HhzS Zt33CILhqzDjbLt1Ev0vvzhAGyU4XP8Q80OtfVWybbpJeH9wzZCc5YfIGk0gLFrS
XgE/OZbFtCwyyuAXUCeYh/hjWIOQ3B20nZmT6pofeoKTOVOHfnOJD5UUxbLIn38O XgEskCxhgZ9RALz+5pvAWcaRNss1fNE2KfwRKCT6p1Tf2LhwCo4WtaZIC2KQzRBa
4NDH/MboxOlpNMpuk+NAJZkAdQdk1rudWsR6vBldO9vAQJi65htfQ2hu1x3/yig= AguUarDPFdPr9o9mgxE2l2qpWbUpCAcmWv5g/a2mEtvzoMNs5Ua9Yk3bNqbiZUE=
=ZGtD =yRKT
-----END PGP MESSAGE----- -----END PGP MESSAGE-----
fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A
- created_at: "2026-04-18T22:36:25Z" - created_at: "2026-04-29T19:17:31Z"
enc: |- enc: |-
-----BEGIN PGP MESSAGE----- -----BEGIN PGP MESSAGE-----
hF4DQrf1tCqiJxoSAQdACwZwpDk9l9Bvw7TZ9R0r1YdwZ1dypkT9kD0idUN+/BEw hF4DQrf1tCqiJxoSAQdAoO2jbRlEBi+xPTCJXPbvvM7NkwRFz03fDOuEJaIKOx4w
WhLlizN60OxA+6RBelg82XCYsFImPFolg+NR7h+oBOLndcuUQGOg4/ry0kqhp1MU B9RVqK0vmqeM7e7lgMhUmaXzgCZvNJyHerHAApL54ebaxSSJUipRG5hMfS8ogPRn
0l4BDA37DtDUx4/Z5L/hXW2nOWHWE+IQma6LFTMVYT0ak/YNvRJF1q18UA4HyA4n 0l4BMkA5b+1KWwM65dqsqlhVY1wy4T94XYSwKJgIsNY7NlUKpZVpVG0YRqApvrzd
rhvUhP2C7N0fBNgN1ExFrFqOyJmsWve5GhVgw0OxwsAFATjxYLtiQyDN7MX9aQre AT3cTOKSo9ofrSjDpmdfVoL2rB2nwoGVDE6KssqNle/fFKov5xEcau0VInAVFTvj
=Sdiq =MHAf
-----END PGP MESSAGE----- -----END PGP MESSAGE-----
fp: B71138A6A8964A3C3B8899857B4F70C356765BAB fp: B71138A6A8964A3C3B8899857B4F70C356765BAB
- created_at: "2026-04-18T22:36:25Z" - created_at: "2026-04-29T19:17:31Z"
enc: |- enc: |-
-----BEGIN PGP MESSAGE----- -----BEGIN PGP MESSAGE-----
hF4DzAGzViGx4qcSAQdAng3WTmhMO0N0Y8H1jpX+B5LRerVj91Ef+ejPgwHd5lww hF4DzAGzViGx4qcSAQdAh8NhkS6+tpvx/z9D9vV+imu7GYavQo2dewyLHUa8z0Uw
eXb4olDSUWJ2OFZMlVtRQjsFZAnli7hfKaAErbRc7qnZg9k7dOGTSQiEPFTak9D8 UczX77OvZIA40Z71DVvGmnPuPu3o5ggkRrpJWgL8JXQP+uOVnJuFfG7lhkrNyyV9
0lgBt/Y3k4yMmqhG5w6ACw2bs13rk8tCgg9muocgu4XgeAiutdDbKnbpjSVLANZO 0lgBi+1/1O7vQW5/uj9xwuaarzTe3/bTjCZTJcJubJ6UV9R3llhH8szquLs8+kVF
ZjMb4OT5OvR5BbLLm7BAtwEXEdj+FfL4/l/ZUwTIHgbFZYqyDFHA6fvb DU72aSsw97fXoDVnHuS/9MCg38PRaUOuAt48rU5+oWyUX/eONUdGpLJB
=frOu =01HS
-----END PGP MESSAGE----- -----END PGP MESSAGE-----
fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD
- created_at: "2026-04-18T22:36:25Z" - created_at: "2026-04-29T19:17:31Z"
enc: |- enc: |-
-----BEGIN PGP MESSAGE----- -----BEGIN PGP MESSAGE-----
hQIMA2pVdGTIrZI+AQ//ZCsXBsOckzZpFKeL/wm3Cc4rbqTkKh82b/XJK20jX0kT hQIMA2pVdGTIrZI+AQ//WNtap2qBuXxK8DwbA+gAIA9pNOZg5dwW08XWkHa7k0wW
CXwWsQbnwFLYG4CwaB+y8zOZb9xgcNy4RYjSiBM3owh0YOuuVTDaEaFbK59WTMXl KYgVrUoHjaZhtecXdJ9HTLimmo9y5k0lgFEt7yVJVkfDScvZI51H/JOtms93vahF
GOYDTK+OXECQO6rLEPxCLczkrtmCUsvGpGvvLeIdUiOJH/1ETWcqpD9M8FfyrQt9 CpSInXdT19A8qpV7HBb8S1fc5O+ddNEDFdLR9RqaAR8gZr3U+2otrIWFAyxv+u4i
WjT/9tk8zTlBaz8/GiNRw17EMUe2Vy36KEjGP4JF+XpsR+eePXNS2CjDIcrZho3K KZ9aIdfoLZiROgChXbtZ35YfgfZy2mWK9OiKT6Iut4sBUO5Pe77Wcgi50IIC+RoW
8d8225a6YIOWqO1D8UabZgjF1zTdsfNiSL4OTF4uBa1EA8Bln1bDmvwxIKlDlpoe 82rRE6a31TsoFsiBQRClMdJTRYhHoe5hPnEfdj/O1GYG8fq4Wxwa7BtyAzkN9PcS
dz9Y8t4tSWFz2AYwmQmQzcWEm8/mXp6D9Eu2R02Fooen/9EE7YIbS+jx8aFtDcjd yw0ZBlTg6mx5h1BG7A55t2I3+3oGNGahapYRwAc6g8lXWhjNURXQsLYTjEAXYfxE
dnKQrAMwOM+QBrZ241F1MW8Z5pGa2MG/+4UEwb8KxHoutD41pKifxLHJmxuFwFFV uCBeiI/dwdj6rTW4AjQ2DXLI1OPtwD6y7F3d66SPZjLgoIKu+HCkV7EvVFDveM8+
cvYosb8MgSb5MK816Jh6Djq2/9N7fwyP9QF3VvS6Ip1ZQ8pxP1JjPER3emFB5CZT xw0unbmVRAiUyCToeFX3DM/HmEcvdOGiYBK0zIAyBgzoweWsZEg9iEMWg8lExEp6
9K7TeXUbJek3dJvB1Ru0GdJb/m15UtYnxB91gszjmH5hcxxCmfpvvpF99d0XhysW WgLLKJ32+gA7ipA2ZP5vK5X6lIgft1TszKkVk5K7rCKLVdXzB+4P1w1RSqS/mfsD
NALx3a2NKIlaW7WOZ3S08QmpDG0xf6rC3IdXbZjNiA6HXvIMb+8HL0aGBaP1Bu4G rKGzraQM4iEKunxt91Z3RhC8zrdSz+NcOtPDc67M2uWwfxQ9rPpVnhafKA0nTTDx
sn1VoxUsRmiRDLg+v+zUnW1VLyiwhvdv9soX8CHAgcY29doKKWXnk9wAU8gAY4TS RAYhF/shEzbueLQHVOdXBG8vCCRNPvbDoMGI1nJL5njMHHRWrYT4ls6zTjnlX8PS
XgEGxJxe86htrp4ZuKbYALg7jyvuSh29nejpVxKNAwzzVAFMKZVEOKyt0WdzRS8e XgEBjKviTlFx/6r1D/zpE0P7huNb3axQHMtHPCkI1MqBdVItTKJYZx2he+zw5c8B
ZzU0BWKYRF/BSg1bvAzrBiEY6jSZdLg9SZjUXmTitTQ5CHspRqiwiRMSFcJUWjQ= pOqBzckd1bIlvCStMIZVDDSW1rFB5hL+ZrtSrswI5zJm7xTL2gdqRtOAASKPkSs=
=l0Wg =p0ik
-----END PGP MESSAGE----- -----END PGP MESSAGE-----
fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533
- created_at: "2026-04-18T22:36:25Z" - created_at: "2026-04-29T19:17:31Z"
enc: |- enc: |-
-----BEGIN PGP MESSAGE----- -----BEGIN PGP MESSAGE-----
hF4DKKbvh61jX5USAQdAL5ehqitzk5IKEw5rkfG+ICVJMWH7WUUGJpZjl2ZT0ysw hF4DKKbvh61jX5USAQdAfd/pq7CEPL8kCoHYKtu9O8kAMF/zd1yE5BaYXa5ydmIw
qDFw5Srsn+gU6zrzDiYid5HOahu/4T+pSItHrBjf8wBrPl9bP+IBytw2OKA262+F rouuLdDK82RNv+nE2Mbkho+LhNt7SwVDvDyKUfBUjUKKWTVR6afCT4cvEkGZK7hw
0l4B9tUKxvMbcX5nJBAPFnneB0HUrpGwodbeNqsy2DweY2PZWe58bWw0al5V/jZm 0l4BHBHFP63G0hGwUH5iF7Z6BoR3JJMo5BjDjhnVTZfeXYh0lEPJSnRqOd5q+arA
Lk4pU2gIoc+BI2GWHMLCGQSsMjID7nka3mdP3Vjdl2xCWFvAnWcu3b2JbV3KNPBw 3VrkevOC3iK3jl6qnbn5ccSKY6CsBJDF1BlChvnGLQsnAqHKdx2+IVz2m2LLSwg5
=NTXU =OD0w
-----END PGP MESSAGE----- -----END PGP MESSAGE-----
fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49 fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49
unencrypted_suffix: _unencrypted unencrypted_suffix: _unencrypted

View file

@ -0,0 +1,207 @@
ansible_pull__age_private_key: ENC[AES256_GCM,data:2kBG8j8JHa/dlXgWMdbSobulFdVunf052T1QQfm1X2vpEZx2HPCL87fWea+O0WOg7+eoMYbiShu0Vw1eTjb+687LjU8l4cj2JWIajnYfDGH+ipWXojxj613C3RZV3JfDOclVTwP8fCHu7z7P3fKrsKWb5d3t2ohTT+sGdVdimakAOf192CkufcVIthq2imiWbntiMTOdMGJxyIjqT2Io2H89nSbJXkONsuHCF/PbxhryB2LZbl8aZV32knk=,iv:hpscVc7iO4r/h31vS6Zno2pkEsgA2uR7wD/1PjH1znM=,tag:ypiwFtgeXuj4gOsgTCRTBw==,type:str]
sops:
age:
- recipient: age18zgt4y2sd75hxnpe333zz39048ctxpr0q8a3uqh3jajjkyawsdrq8yg5ve
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBoYVBFSXJkUGtGZ3IxV21l
aElBWkdQVnFzMVBSQWsvWW1hVXVHMmFuWFNrCi9zZHR3VTVWb0g0Yk9LT1ZhdTNu
aEFrMVNZajl2eFg1WjR4d3ZFQ2JSVjgKLS0tIG04S0VKeTRUUGVJekp5Yjk0dThm
MEZQTHZXNExsSnl0WW9Vb29sajE1YzAKoYU7rGuR+52+U02uf3eTH9hkIECWdcJv
wN9JTwsUn0c6mi/d4AHgv5O04Uw7NxUyGVmFlDZzjxLwPzZyR73SvA==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2026-04-29T19:21:55Z"
mac: ENC[AES256_GCM,data:RLXsIsSdrCuElYQ3x2YpwYzQx0V0zoYP6h9FLD+RqmZ1pWhlk6Ijp9WxCAlEWps9n5rPYYyhZ3ldSJluTVeroPwpzrmwW+xXCGsCC0BFk6PuB4UynfHwWR/3jEK47nAdPbNfONhzGfOeTObYp22c3iHiKL8YochOSlBToA8mFr4=,iv:fZZEa3C/BsNKGdTKlR/hexrzhmLxiMVxgL9nXjX2Q1E=,tag:I5M8SNbSw4w1crsl0z/5+Q==,type:str]
pgp:
- created_at: "2026-04-29T19:18:43Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hQIMAxK/JaB2/SdtARAAprAAcNL2V5+aZMxersIlCaMh2QVhZs6rxRlG+siH+zT0
raPl//5kz8i85+ayqOBL/1P1PnLRjMPOaiCIcQWZaGP/U9R5GPyJZKaGZmQx2cDz
vnuRQ2zOHGen13s/Iju2vB+Or6fWHzEDcM2y1J9YcneuRNHCnIVp9U+LlPrIjEUt
+nueDEcAct8jjWjXre7IdTU05TqIkHPiRQrAn58mhpgMl+Ubtc1S6uNB0vkh2obZ
MRN026w8sVti6mgivZ0g7Nhtkq6JgKLUyu8jf1aajzKP+gTrYbkwmTzq2JyiOyPh
k6qFnT/7sVKqH2yUGZFvforEDlhld7jqZjqzyDHd60GN9GTboeaSzvmGVkvVDd50
YbiVijMqVkFRcrb490G8jrL/7/eWb99uQXUX3OX5WXq7TFdRVT6uxGoXPBdd8yc1
jTvwU40nS47o53qKJCP/WeESuXNIlvGIrt2MZ1Q6FSBu+XUI/nTuKpQyr9Qq2WN2
q4JxnUnaXmovk2GzmfC6Zmk6qEGUHznHmy6EISJTb4lstiULo4yH8VKwhRWRAqNo
TDipXEjSyQ60ppScnz77UTYhV+dHjZIWbN2M00tna92ZgDED0HP7szSEuKCFU75n
HwSc+RHKfse3JHHq/ypN0rqmxOIStC4x0wlulCMUKWdOyXq3TuslKmrJBkN/HpvS
XgEB5boE0GSTwylChO99eB2+cxKzW01hmtPbeW83lcX3uO1TSPnIrp+CvuTU0LpR
/qnB0r3PUccID4c/PqOJ+5rXGSvmNePS0fCrV5XoIQle4RFibhTxDMDu6u9/3ZE=
=jzo7
-----END PGP MESSAGE-----
fp: EF643F59E008414882232C78FFA8331EEB7D6B70
- created_at: "2026-04-29T19:18:43Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hQEMA1QflAioE8i3AQgAnInKqN9PjXQSsLg7wUkv6Zmd6pTcywnBJe4DTaBFlhmF
jIQDU36FMNHBhJ4hG9i5dggfGV4aCMoU4EkkkIyvyogU96dRloy4f7c8rmw/oGvR
XWq4OaIsHlz+AvnELvEUgaSUZnKX/oz+0wxwYmpE06BmYiAo0sVfgqotEfnvhu8N
nBVwuTwTGVfA7IsfXBDAavgzhNGQHytUSu28DLrpfRw+3qinQxkb6zFVkRG0asdY
Tt+JSPrN700CS5Ln12g9fijZW/u2bZWi9VnL67PTkW+Qn3s7h6kT3zp2ECM965ul
CC2iPJyPnoXL1Z97uAgzc/qhv3WwvNUSS/kvUF+lJ9JeAavfZh6OK6PFlFSeHyVM
lC2+6O3fSAHTMeq9No3lx6vkENAdOJsCsPAGqTJMe2NFGglzJ0rhuUqmMn0tSNO1
1zitlwfYO4qDW9SDKv0l0acBuDv6n5GhBvLSe3mMjA==
=ePv5
-----END PGP MESSAGE-----
fp: 21C9579E6503CA815A68ABD8541F9408A813C8B7
- created_at: "2026-04-29T19:18:43Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hQIMAz5uSgHG2iMJAQ/9FY+A9psuL+q0ZHBtq5/IPawMlxaFIrKa88PDSRkMcQ1Y
u2vQIRgocWhxZHIdmdRF0vUqSBtfCcdmv6wE4qhkDxyVwGeHsFPidiqUzEE8HFVJ
rKzo1oZiuDk2faAhgGLpoSqnFzxUEMwrZnqfDRsZGUOLvXw0EaDHeCPXQCZRYuHn
dNEbZ4bSTt9w5XoTY9mLN66q3U/XxDFxNl6Z4kCgk88HcGXY7mW4AcdcAu3Kw4LX
6iXNj949ZVa5JV2wAYZIfDDgs/tslDFN7yi8G8AOQVdHJHw5yh5/+GE+r3mbZ885
zWDyRSiERqk3YAHwwW/LGHodXJyi3ZzQdusUPHTQBZ4HOkUX3D755x79uw0ZyRJj
SpP7ASa3MPRfGJlmkMQ7ADTcKZvWlX1ymYwh9mjocUAulqclM8XbQjTr61mB3pnD
EF0MpJnkz02ZHHcZVelFJc1aTsUwvNdN8xOHL9HIbTshE1E+myYnu1bQTzsqQnwX
lLaOLgX3uI5tJtHSxWMxvzz47iDLUw9fzWYUB5M1Fn34j6R26YEmlCTZgpJuqX+P
c6tMqBCAZxUSdL6HW4TEBbEl+XdAlZTAoj1X9kH2SGC1K087w2QC36JJulkteYbF
j85s8PNTKru0516UWpgyIIHJTSAB81hvZOJ6tQyYekF7C6W/V2e0sTwENHrNH8TS
XgGpGnl6AdX3tC/+6NFKg70a7EtbrxNXf3dRTY3YWUgI4gFgoWIDW0DU/wu+u84U
2zlC2bP2l2B0MtBBulmXr0V7sOVJQkiNKjacl35joT09VSJwuwGrsZahTyRGz3Y=
=a2/K
-----END PGP MESSAGE-----
fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5
- created_at: "2026-04-29T19:18:43Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hF4DsZXvxFXTXoQSAQdAgRYONXUKq3RdEDtip/lea4IVIeE/imupcUFN/GzrwgYw
XnhQYjYkGN9HIkFMEKbUyle4F6Sp8wg4AGgPOC0wzNVXGhYeLMs6ybu/BsXAGD0U
0l4BBzCLRQl+FiXFMjJviii7HeDYq2wcZzqWX46Oypa5WuezvcybxZZIrHTeDrsC
k/Ie8oxBoPa1eQIHafde5jbcKBP5v6+aUxEc1ly70r90CckJYdARggltx8sEOvSR
=1O98
-----END PGP MESSAGE-----
fp: 9633412309CCB83BFA39BA5F2FEF746201D7FCFE
- created_at: "2026-04-29T19:18:43Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hF4DerEtaFuTeewSAQdAs98uz9XAcuRRnIqRHbiBZYhMiejmbkM1RZbY3hPVBngw
H0abiCvS1xX/Uln2kJR+PsZWkyaSGWAS9iErHSHR3sLM8Era/W4OfmgQlA3eg2gZ
0l4BX+YygykgEd25g2PaQtZahfW0ZG781bJ0Q0oqySxQMdg6Mxeb6NtJTG7EZso3
JlEmgVZqd2wZqyzIDYIZMrvBmRF4GNYnz8Y/x6BsTBPRXsX7eQHlxrilE/G1yXTC
=Y8RD
-----END PGP MESSAGE-----
fp: 057870A2C72CD82566A3EC983695F4FCBCAE4912
- created_at: "2026-04-29T19:18:43Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hQIMAxjNhCKPP69fARAAgsm/os/dSSLjxlgHi/BOMb2vl+Rsz+zXxpofu1uBgQ21
MwDBQiZohiEcD+IRj3oPv7zbtc/TKRDmcc8NMtkybG5/imV/osIuLwPAPkvPFI09
rfky92no2GxXhUhmFUwElmwVZMUgVrq5teXnajDEpsffqGI+5dRtwkBceLNr5GB3
lMOiTpuLBpqD9nHWetvhdg/TwQLNBCzYfDBxvLXe53RT7y0wncM4woC+BVnBxlf7
tkmegf9Xf74qmZT6oIgLilSqgDuJDX5EYDu8BIwxU5B67diXL17H2/etagjaEHFe
l7pFKva5OkM7e2hhxrBlxGrPxTW5ng9w1O0JFy2Hz6q65AnNw0Q3Ji4O+UDSo1qw
WEWVYYVBETTJ4d2HLPRWuTuIph/t1Pxo48DywOvmOgyQ1RfwOp2pS/81S/M4FCiC
lzJ7jWV+A6wdACtKxQJ5t5+PFf9PlUFjnN0mif+4FJf6ZZRsavSoNg9msStCcl6f
MHd6hn/EVbwZXzFRsIX/GtikES/rIMn5aCG7tl4czRCXRqrA3JyV202fwKq/dshV
+S/HHMj9kLrj/VURDlGktmdBDyFgf0PklHDg6KaBPH/pHgjd6XvEYzhT5vo5uPmr
yGbntwaHT6h22x0h4FWVHucX0a6cKLJRGVbvBAOSjID44hzS2/b/FieNU3vMgsXS
XgEvsWmwdZ5Pizhzpcm88HVn3DPpWPbdutxxqUzjA9IhxRYMNoAC+XIac7wXsAvm
QOM8Mho/7JGBR3TmE2qObrGbdBSw5XrpjrHCdBuK52lJZwTySSZSp1Qo5pNHm7E=
=S7Vg
-----END PGP MESSAGE-----
fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55
- created_at: "2026-04-29T19:18:43Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hQIMA1Hthzn+T1OoAQ/9EdO6mvxKmXS5CgQCZEpqS5i2YPxz/FDxO+D0+IBM/E4N
zz/TTwDpN28t6xIrHxOBfi3aHrhBWBN62mIuWu/x+Wp6duW7y03zprUv53u3MvEm
AAn99pMb09Hodw+coSzJpvlPKx44OvaKGEgF4m1nbLzPR5x6v6zb3nc5MjalKYwg
qNhoUcCUVV7Og6Lz2erVPuEKab+xFanUKCm65iSo2OMy+XnYRApXl0RnBOTiwNNF
a3dnVFp2vzIkWSDcZT2wo88F9PJchpFV0IxOHUAnPnV2oxn7rrcfcAjAAw5OzSmx
NjZUPVKbN/o5IVpe2fuR/snUsNhURYC5QM0ggadouQmgKlkScZlPJ5uygGb7Ufl8
Um3YPrOq9gi+OGZYYSCNTU6FXt8cXVqws4DBKRZ1vO2y+CZvUi5KGqKmPrX/bmZ5
poJoRp1MYQPr8z3lmFqCqrBeJNEyexxbCbNLOZgUF7LwGvaCyHKB03GMsagW7+uR
02B9GUQM81LCIK+6xsXRP2a/vssWTb8Tw9SbAxVgYZq26Z/FyipPG/GPatWOV69b
71JQRT4xJiMtodBg/vNv3gnsJy6AwcOi8l+qxSBwFnXOgNQwHkvV+tjh+d/FmrRW
iV28SFUlg2MSsPr7v7DyF4HuwH4tCxonZKqZbPOR1adHpUyWYeXp8fJIWjB9jLTS
XgFopMPZEaDXlizt6H/0Gl1Hwwt08+RwItz1N6WqhNwqc2blhVrMElzAX+hF1vVW
JQiCOEAxT1oTztW6VLJFwF45LBVsd444zbJNKDSmvIm8SsYu8ORUoWWZddgKhEk=
=wJsd
-----END PGP MESSAGE-----
fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD
- created_at: "2026-04-29T19:18:43Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hQIMA46L6MuPqfJqAQ/+OoE9y0D/UawN7ksuv1TCDuZAgtX1rF7KCKrAKXQUrW8W
Jkwt3iWn3YFtDS+GPyPi4NilbZieKr8mn6ixLE1XyVRiFejjYPeKe5Sta/mpG6kP
r1oXasAJCps570SBRXrGi4k60YYdDlHNlJAXslhILv1Hzq1FhG97iw5OO6EwjewT
F2qU3HvF+b2KHDrU2Rcbol8QDNy5tOY3/TtXXd6FjHwNkw47aBiR8ZBDulYjdQ8p
ydaYikz2MWxp+e6VPKC0pmHaWaP1plBRxgzFnIXvzlk63rLHy0vqDnp4Wp8XQZXw
v9ZF13vJfeWjp2DkhLjuAnksSLnuddIhB/FS20ms89QSn75gzarzymOI0RhlxLpe
SYEhGou9qopmCoPbBmuBDDIFaECxY6Y8iroPGNRSuxX/4k1aZ53z6B4FBxYScDpV
vMQowVOG6pSsTpC+GHJvKaf0ynzpLtbczXJEWAiThFt7N9IaoVqrgqBQCYMdkbps
3PZnuTBNvZrsAeyqKr6mlBHcV1otIFnQ2LY/dT3p6L2Gg0VuEn2cbETLNTWYXxp7
vxPP+fGITdtcl6EyiEA6QHr8gs4xYTuQtPDxapNlDQB0/IMTr4Tc7l+jSPYaRC2y
vkNAGKoHKYY3dK2T/cDfx6UNZy92dqLKbJFOnO7SmsHUXKCWE1TcYcEqIoru3TLS
XgHIpimFDg/jU8rJ5mlDJtkDuWu+2ABhuY9QZHrKrwx5EKTWK0qiABsKqqRvEpEZ
/foR2TbAY2q1Ee25M5XvqTJoc9nd43tLNkOlVxzGcIHpP5ea2SUOw32Z8jnANH0=
=vOjZ
-----END PGP MESSAGE-----
fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A
- created_at: "2026-04-29T19:18:43Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hF4DQrf1tCqiJxoSAQdAdiTy3LGZXRFySQ6d5fY+khLJc8OD4Vedfq0N0Lo4KX0w
oiiI7CHwXIUo9fbX/9Fp5cY7RsELssrFpUJ9HtbyBVJXh9MUaXv3BGEk4eJTTP1V
0l4BVbUQcIo0bruu1BEW5kozfvFaN6q6f/k3r535iC7H44aA/t9EpA/ZO4gVH3rf
2WXqLjapvTpITOMHcLItJ0a8bMi3zB6BdxPkay7xLrUEjXxi+ZGo4D8U6xwopKxi
=c8c1
-----END PGP MESSAGE-----
fp: B71138A6A8964A3C3B8899857B4F70C356765BAB
- created_at: "2026-04-29T19:18:43Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hF4DzAGzViGx4qcSAQdABMyhW0CH5eMZEreebbnnpJCsRdUtiFaTHM7mqB0pGw4w
jVZVy6eeIohIwngdOsoIhQQ5OQdIGD4s+j5QJ6dNcJzEPZS5wE3W8csiSYKCTyNV
0lgBAJV0NOFSVQOJvmxvHCRALvNr99YLUoJ3lrjbdgpLvXC/WU8OcUu9B642YNGe
n0esX+Kwv5zlvxUdjbZAp7yY7Rza+zuIx0qcM4MYZzS9AQboJdOEjiLK
=ffrV
-----END PGP MESSAGE-----
fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD
- created_at: "2026-04-29T19:18:43Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hQIMA2pVdGTIrZI+ARAArK5DSlr+wsCdvRggcTnQDQgnn1sQkeQFxtK2z7BrdcMR
dykn4IMFw9XDYU+iNY3gnDYdK2jZThm2kQujKbQINBIQA7en4bpJKvu4UU4a2xrF
tYhM/7tOSN7DnZWx/7qnYuHDA/5frwIL+csWXbp7tVeRAwRLkuJKMuMOl33bXvj8
mZasXWtdUzrcnRgAm4BxhYpSogQ1gu3ojIVn15Wr5Lnzt56NAcmCfMl+GNbJxmrC
ftt9B6mXNQLj19p+cKer6PVK3F1CmN+B2TdPDGE9DHZ0I+t+tAitqtm/j9VvPiaH
gHEHRQ2AFmU6UTXa6X9p7PxWOGlJeSZEaOgz99TfM72mGvzWvEh53tXFNINeBnSU
KQJDlNWmrGRfa3cdwyq/kAVySpYAtMSaiAIpDw5zOeuLuplGVTr+HkAEG0UHAnaB
/4yDOq3q/2awMlOpb8syREGDAPI0q3qAt2KZl74sfdvNjLJ3iUhFRG0PEtNKHV7b
fgGZEiLsJPjiSjUAT8PLqzByxj9Lg/Mc6b8XDFe/eC75o6bUOigK+Zh//EK646+N
hAYDQ0jDiYJUSP6pFk8OvhokW8N5+oNCBsd0j4MV9NPQ4e0EtI21XrACMjo4o9As
rTnY0fYeZ7lU0b6L/I0OpXKDSNa7iQL4NO1dRJysVBGCKOxbDfKdlbwquu+6YCHS
XgFIoF56xzkyHu5v6xaf+vBArsw5GS2M2IgjqnOFVsYHthfi/lU84U3HNpnNa7Ky
3igXQkOCBU9k/7qSklnsPGlkP2e+dQm0JkqiZWk76VJxQAcos4SB+OotErmEFlo=
=WcNY
-----END PGP MESSAGE-----
fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533
- created_at: "2026-04-29T19:18:43Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hF4DKKbvh61jX5USAQdAzS2Fnf6RNlceP0CMR+WaBR04wWH2eRASnbAAkhRMglMw
4YM63ITWhiEgWJ8CXibxxN92Tla93YvIId8ahHaRUnnHoG6T/zGlFTXfTsp2Ao/c
0l4BcwjBbn8miHU3wRx9TY2M5jIatbsZL0tNTCiGaPKfG+RdQ2fHAwLXTk+xC4jG
70gcDtXlHDJV9hRn0R9cyfJ7UTEI45bE9Pt77CXAAkL7Ii6g6lQUdW/FaHXM9hEu
=SWXD
-----END PGP MESSAGE-----
fp: 41FFAF3D519CF5C039FBD8414BCC213729AF0E49
unencrypted_suffix: _unencrypted
version: 3.12.1

View file

@ -1,5 +1,5 @@
# renovate: datasource=github-releases depName=netbox packageName=netbox-community/netbox # renovate: datasource=github-releases depName=netbox packageName=netbox-community/netbox
netbox__version: "v4.5.5" netbox__version: "v4.5.9"
netbox__config: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/netbox/netbox/configuration.py.j2') }}" netbox__config: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/netbox/netbox/configuration.py.j2') }}"
netbox__custom_pipeline_oidc_group_and_role_mapping: true netbox__custom_pipeline_oidc_group_and_role_mapping: true

View file

@ -98,6 +98,9 @@ all:
ansible_host: www3.hosts.hamburg.ccc.de ansible_host: www3.hosts.hamburg.ccc.de
ansible_user: chaos ansible_user: chaos
ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de ansible_ssh_common_args: -J ssh://chaos@router.hamburg.ccc.de
auth-dns:
ansible_host: auth-dns.hamburg.ccc.de
ansible_user: chaos
hypervisors: hypervisors:
hosts: hosts:
chaosknoten: chaosknoten:
@ -128,6 +131,7 @@ base_config_hosts:
mjolnir: mjolnir:
www2: www2:
www3: www3:
auth-dns:
systemd_networkd_hosts: systemd_networkd_hosts:
hosts: hosts:
router: router:
@ -243,6 +247,7 @@ infrastructure_authorized_keys_hosts:
mjolnir: mjolnir:
www2: www2:
www3: www3:
auth-dns:
wiki_hosts: wiki_hosts:
hosts: hosts:
eh22-wiki: eh22-wiki:
@ -278,6 +283,7 @@ ansible_pull_hosts:
mjolnir: mjolnir:
# www2: # www2:
# www3: # www3:
auth-dns:
msmtp_hosts: msmtp_hosts:
hosts: hosts:
renovate_hosts: renovate_hosts:

View file

@ -2,7 +2,7 @@
services: services:
oauth2-proxy: oauth2-proxy:
container_name: oauth2-proxy container_name: oauth2-proxy
image: quay.io/oauth2-proxy/oauth2-proxy:v7.15.1 image: quay.io/oauth2-proxy/oauth2-proxy:v7.15.2
command: --config /oauth2-proxy.cfg command: --config /oauth2-proxy.cfg
hostname: oauth2-proxy hostname: oauth2-proxy
volumes: volumes:

View file

@ -2,7 +2,7 @@
services: services:
prometheus: prometheus:
image: docker.io/prom/prometheus:v3.10.0 image: docker.io/prom/prometheus:v3.11.3
container_name: prometheus container_name: prometheus
command: command:
- '--config.file=/etc/prometheus/prometheus.yml' - '--config.file=/etc/prometheus/prometheus.yml'
@ -19,7 +19,7 @@ services:
- prom_data:/prometheus - prom_data:/prometheus
alertmanager: alertmanager:
image: docker.io/prom/alertmanager:v0.31.1 image: docker.io/prom/alertmanager:v0.32.1
container_name: alertmanager container_name: alertmanager
command: command:
- '--config.file=/etc/alertmanager/alertmanager.yaml' - '--config.file=/etc/alertmanager/alertmanager.yaml'
@ -32,7 +32,7 @@ services:
- alertmanager_data:/alertmanager - alertmanager_data:/alertmanager
grafana: grafana:
image: docker.io/grafana/grafana:12.4.2 image: docker.io/grafana/grafana:12.4.3
container_name: grafana container_name: grafana
ports: ports:
- 3000:3000 - 3000:3000
@ -46,7 +46,7 @@ services:
- graf_data:/var/lib/grafana - graf_data:/var/lib/grafana
pve-exporter: pve-exporter:
image: docker.io/prompve/prometheus-pve-exporter:3.8.2 image: docker.io/prompve/prometheus-pve-exporter:3.8.3
container_name: pve-exporter container_name: pve-exporter
ports: ports:
- 9221:9221 - 9221:9221

View file

@ -22,7 +22,7 @@
services: services:
keycloak: keycloak:
image: git.hamburg.ccc.de/ccchh/oci-images/keycloak:26.5.7 image: git.hamburg.ccc.de/ccchh/oci-images/keycloak:26.6.0
pull_policy: always pull_policy: always
restart: unless-stopped restart: unless-stopped
command: start --optimized command: start --optimized

View file

@ -1,7 +1,7 @@
--- ---
services: services:
ntfy: ntfy:
image: docker.io/binwiederhier/ntfy:v2.20.1 image: docker.io/binwiederhier/ntfy:v2.22.0
container_name: ntfy container_name: ntfy
command: command:
- serve - serve

View file

@ -23,7 +23,7 @@ services:
- pretalx_net - pretalx_net
static: static:
image: docker.io/library/nginx:1.29.7 image: docker.io/library/nginx:1.30.0
restart: unless-stopped restart: unless-stopped
volumes: volumes:
- public:/usr/share/nginx/html - public:/usr/share/nginx/html