From f8f0d0eba3c2b6c23ddb5a2d2cbf24143dee0aa4 Mon Sep 17 00:00:00 2001 From: m3tam3re Date: Sat, 8 Aug 2026 15:37:50 +0200 Subject: [PATCH] feat: pgbounce, librechat upgrade, homarr --- hosts/AZ-CLD-1/secrets.nix | 7 + .../AZ-CLD-1/services/containers/baserow.nix | 2 +- .../AZ-CLD-1/services/containers/default.nix | 1 + hosts/AZ-CLD-1/services/containers/homarr.nix | 48 +++++++ .../services/containers/librechat-dev.nix | 2 +- .../services/containers/librechat.nix | 2 +- .../services/containers/zammad-hr.nix | 8 +- hosts/AZ-CLD-1/services/default.nix | 1 + hosts/AZ-CLD-1/services/pgbouncer.nix | 136 ++++++++++++++++++ hosts/AZ-CLD-1/services/postgres.nix | 24 ++-- hosts/common/ports.nix | 3 + secrets.nix | 2 + secrets/baserow-env.age | Bin 1551 -> 1004 bytes secrets/homarr-env.age | Bin 0 -> 844 bytes secrets/litellm-env.age | 34 ++--- secrets/metabase-env.age | Bin 1080 -> 682 bytes secrets/outline-env.age | Bin 1303 -> 861 bytes secrets/pgbouncer-userlist.age | Bin 0 -> 2173 bytes secrets/vaultwarden-env.age | Bin 28880 -> 21149 bytes 19 files changed, 235 insertions(+), 35 deletions(-) create mode 100644 hosts/AZ-CLD-1/services/containers/homarr.nix create mode 100644 hosts/AZ-CLD-1/services/pgbouncer.nix create mode 100644 secrets/homarr-env.age create mode 100644 secrets/pgbouncer-userlist.age diff --git a/hosts/AZ-CLD-1/secrets.nix b/hosts/AZ-CLD-1/secrets.nix index d8d9a7f..bb60efe 100644 --- a/hosts/AZ-CLD-1/secrets.nix +++ b/hosts/AZ-CLD-1/secrets.nix @@ -13,6 +13,9 @@ baserow-env = { file = ../../secrets/baserow-env.age; }; + homarr-env = { + file = ../../secrets/homarr-env.age; + }; librechat = { file = ../../secrets/librechat.age; }; @@ -81,6 +84,10 @@ file = ../../secrets/pgadmin-pw.age; owner = "pgadmin"; }; + pgbouncer-userlist = { + file = ../../secrets/pgbouncer-userlist.age; + owner = "pgbouncer"; + }; vaultwarden-env = { file = ../../secrets/vaultwarden-env.age; }; diff --git a/hosts/AZ-CLD-1/services/containers/baserow.nix b/hosts/AZ-CLD-1/services/containers/baserow.nix index 07f8849..dae8e50 100644 --- a/hosts/AZ-CLD-1/services/containers/baserow.nix +++ b/hosts/AZ-CLD-1/services/containers/baserow.nix @@ -7,7 +7,7 @@ in { environment = { # BASEROW_AMOUNT_OF_GUNICORN_WORKERS = "4"; # BASEROW_AMOUNT_OF_WORKERS = "2"; - DATABASE_CONN_MAX_AGE = "60"; + DATABASE_CONN_MAX_AGE = "0"; # Proxy: tell Django the connection is HTTPS so cookies get Secure flag BASEROW_ENABLE_SECURE_PROXY_SSL_HEADER = "yes"; # Published apps run on different origins — allow cross-origin cookie delivery diff --git a/hosts/AZ-CLD-1/services/containers/default.nix b/hosts/AZ-CLD-1/services/containers/default.nix index 787b308..7e4e927 100644 --- a/hosts/AZ-CLD-1/services/containers/default.nix +++ b/hosts/AZ-CLD-1/services/containers/default.nix @@ -1,6 +1,7 @@ {lib, ...}: { imports = [ ./baserow.nix + ./homarr.nix ./it-tools.nix ./librechat.nix ./litellm.nix diff --git a/hosts/AZ-CLD-1/services/containers/homarr.nix b/hosts/AZ-CLD-1/services/containers/homarr.nix new file mode 100644 index 0000000..13679e6 --- /dev/null +++ b/hosts/AZ-CLD-1/services/containers/homarr.nix @@ -0,0 +1,48 @@ +{config, ...}: let + serviceName = "homarr"; + servicePort = config.m3ta.ports.get serviceName; +in { + virtualisation.oci-containers.containers.${serviceName} = { + image = "ghcr.io/homarr-labs/homarr:latest"; + environment = { + TZ = "Europe/Berlin"; + + BASE_URL = "https://dash.az-gruppe.com"; + NEXTAUTH_URL = "https://dash.az-gruppe.com"; + AUTH_PROVIDERS = "oidc"; + AUTH_OIDC_CLIENT_NAME = "Azure"; + AUTH_OIDC_SCOPE_OVERWRITE = "openid email profile"; + AUTH_OIDC_GROUPS_ATTRIBUTE = "roles"; + }; + environmentFiles = [config.age.secrets.homarr-env.path]; + ports = ["127.0.0.1:${toString servicePort}:7575"]; + volumes = ["homarr_data:/appdata"]; + extraOptions = ["--ip=10.89.0.13" "--network=web" "--dns=8.8.8.8" "--dns=8.8.4.4"]; + }; + + # Traefik configuration + services.traefik.dynamicConfigOptions.http = { + services.${serviceName}.loadBalancer.servers = [ + { + url = "http://localhost:${toString servicePort}/"; + } + ]; + + middlewares."${serviceName}-headers".headers = { + customRequestHeaders = { + X-Forwarded-Proto = "https"; + X-Forwarded-Port = "443"; + }; + }; + + routers.${serviceName} = { + rule = "Host(`dash.az-gruppe.com`)"; + tls = { + certResolver = "ionos"; + }; + service = serviceName; + entrypoints = "websecure"; + middlewares = ["${serviceName}-headers"]; + }; + }; +} diff --git a/hosts/AZ-CLD-1/services/containers/librechat-dev.nix b/hosts/AZ-CLD-1/services/containers/librechat-dev.nix index a0efbd2..5698075 100644 --- a/hosts/AZ-CLD-1/services/containers/librechat-dev.nix +++ b/hosts/AZ-CLD-1/services/containers/librechat-dev.nix @@ -29,7 +29,7 @@ in { environment = { RAG_PORT = "8000"; DB_HOST = "10.89.1.1"; - DB_PORT = "5432"; + DB_PORT = "6432"; }; environmentFiles = [envFileDev envFileCommon]; dependsOn = ["meilisearch-dev"]; diff --git a/hosts/AZ-CLD-1/services/containers/librechat.nix b/hosts/AZ-CLD-1/services/containers/librechat.nix index 856c465..628e643 100644 --- a/hosts/AZ-CLD-1/services/containers/librechat.nix +++ b/hosts/AZ-CLD-1/services/containers/librechat.nix @@ -29,7 +29,7 @@ in { environment = { RAG_PORT = "8000"; DB_HOST = "10.89.0.1"; - DB_PORT = "5432"; + DB_PORT = "6432"; }; environmentFiles = [envFileCommon envFileProd]; dependsOn = ["meilisearch"]; diff --git a/hosts/AZ-CLD-1/services/containers/zammad-hr.nix b/hosts/AZ-CLD-1/services/containers/zammad-hr.nix index e4c5bda..fab3170 100644 --- a/hosts/AZ-CLD-1/services/containers/zammad-hr.nix +++ b/hosts/AZ-CLD-1/services/containers/zammad-hr.nix @@ -28,8 +28,8 @@ POSTGRESQL_DB = "zammad_${instanceName}"; POSTGRESQL_HOST = "10.89.0.1"; POSTGRESQL_USER = "zammad_${instanceName}"; - POSTGRESQL_PORT = "5432"; - POSTGRESQL_OPTIONS = "?pool=50"; + POSTGRESQL_PORT = "6433"; + POSTGRESQL_OPTIONS = "?pool=5"; REDIS_URL = "redis://zammad-redis:6379"; TZ = "Europe/Berlin"; BACKUP_DIR = "/var/tmp/zammad"; @@ -231,8 +231,8 @@ in { --env POSTGRESQL_DB=zammad_${instanceName} \ --env POSTGRESQL_HOST=10.89.0.1 \ --env POSTGRESQL_USER=zammad_${instanceName} \ - --env POSTGRESQL_PORT=5432 \ - --env POSTGRESQL_OPTIONS='?pool=50' \ + --env POSTGRESQL_PORT=6433 \ + --env POSTGRESQL_OPTIONS='?pool=5' \ --env REDIS_URL=redis://zammad-redis:6379 \ --env TZ=Europe/Berlin \ --env ELASTICSEARCH_ENABLED=true \ diff --git a/hosts/AZ-CLD-1/services/default.nix b/hosts/AZ-CLD-1/services/default.nix index f175187..9515ed1 100644 --- a/hosts/AZ-CLD-1/services/default.nix +++ b/hosts/AZ-CLD-1/services/default.nix @@ -12,6 +12,7 @@ ./var-backup-sync.nix ./ntfy.nix ./outline.nix + ./pgbouncer.nix ./postgres.nix ./snipe-it.nix ./traefik.nix diff --git a/hosts/AZ-CLD-1/services/pgbouncer.nix b/hosts/AZ-CLD-1/services/pgbouncer.nix new file mode 100644 index 0000000..ff9b7db --- /dev/null +++ b/hosts/AZ-CLD-1/services/pgbouncer.nix @@ -0,0 +1,136 @@ +{ + config, + lib, + pkgs, + ... +}: let + txPort = config.m3ta.ports.get "pgbouncer-tx"; + sessionPort = config.m3ta.ports.get "pgbouncer-session"; + pgPort = config.m3ta.ports.get "postgres"; + + # Podman-Bridge-IP des Hosts + hostBridgeIP = "10.89.0.1"; + + commonSettings = { + listen_addr = "127.0.0.1,${hostBridgeIP}"; + auth_type = "scram-sha-256"; + auth_file = config.age.secrets.pgbouncer-userlist.path; + + admin_users = "sascha_koenig"; + stats_users = "sascha_koenig"; + + log_connections = 1; + log_disconnections = 1; + + server_reset_query = "DISCARD ALL"; + server_check_query = "SELECT 1"; + server_check_delay = 30; + + server_tls_sslmode = "prefer"; + }; + + mkDatabases = dbs: + lib.listToAttrs (map (db: + lib.nameValuePair db "host=127.0.0.1 port=${toString pgPort} dbname=${db}") + dbs); +in { + services.pgbouncer = { + enable = true; + + settings = { + pgbouncer = + commonSettings + // { + listen_port = txPort; + pool_mode = "transaction"; + + max_client_conn = 1000; + default_pool_size = 10; + min_pool_size = 2; + reserve_pool_size = 3; + reserve_pool_timeout = 3; + + max_prepared_statements = 200; + }; + databases = mkDatabases [ + "baserow" + "litellm" + "librechat_rag" + "librechat_rag_dev" + "metabase" + "az_kpi_raw" + ]; + }; + }; + + systemd.services.pgbouncer = { + after = ["postgresql.service"]; + requires = ["postgresql.service"]; + }; + + environment.etc."pgbouncer/pgbouncer-session.ini".text = let + dbLines = + lib.concatStringsSep "\n" + (lib.mapAttrsToList (name: conn: "${name} = ${conn}") + (mkDatabases [ + "outline" + "zammad" + "zammad_hr" + "vaultwarden" + "dash" + ])); + in '' + [databases] + ${dbLines} + + [pgbouncer] + listen_addr = ${commonSettings.listen_addr} + listen_port = ${toString sessionPort} + pool_mode = session + auth_type = ${commonSettings.auth_type} + auth_file = ${config.age.secrets.pgbouncer-userlist.path} + admin_users = ${commonSettings.admin_users} + stats_users = ${commonSettings.stats_users} + + max_client_conn = 300 + # session-Mode: 1 Client-Conn = 1 Server-Conn. zammad_hr haelt via mehrere + # Prozesse (rails+scheduler+websocket) real ~15 Conns -> pro (user,db) 15. + # outline/vaultwarden schoepfen das nie aus (eigene Slots je user,db). + default_pool_size = 15 + min_pool_size = 1 + query_wait_timeout = 30 + + log_connections = 1 + log_disconnections = 1 + server_reset_query = DISCARD ALL + server_check_query = SELECT 1 + server_check_delay = 30 + server_tls_sslmode = prefer + + # PID/Socket getrennt von der Haupt-Instanz halten. + pidfile = /run/pgbouncer-session/pgbouncer.pid + unix_socket_dir = /run/pgbouncer-session + ''; + + systemd.services.pgbouncer-session = { + description = "PgBouncer (session pool) for prepared-statement apps"; + after = ["postgresql.service"]; + requires = ["postgresql.service"]; + wantedBy = ["multi-user.target"]; + serviceConfig = { + User = "pgbouncer"; + Group = "pgbouncer"; + RuntimeDirectory = "pgbouncer-session"; + ExecStart = "${pkgs.pgbouncer}/bin/pgbouncer /etc/pgbouncer/pgbouncer-session.ini"; + Restart = "on-failure"; + RestartSec = 5; + }; + }; + + networking.firewall.extraCommands = '' + iptables -A INPUT -p tcp -s 127.0.0.1 --dport ${toString txPort} -j ACCEPT + iptables -A INPUT -p tcp -s 10.89.0.0/24 --dport ${toString txPort} -j ACCEPT + iptables -A INPUT -p tcp -s 127.0.0.1 --dport ${toString sessionPort} -j ACCEPT + iptables -A INPUT -p tcp -s 10.89.0.0/24 --dport ${toString sessionPort} -j ACCEPT + ''; +} diff --git a/hosts/AZ-CLD-1/services/postgres.nix b/hosts/AZ-CLD-1/services/postgres.nix index e29bb33..40f1bcc 100644 --- a/hosts/AZ-CLD-1/services/postgres.nix +++ b/hosts/AZ-CLD-1/services/postgres.nix @@ -12,8 +12,9 @@ in { package = pkgs.postgresql_17; settings = { ssl = true; - max_connections = 200; + max_connections = 100; shared_buffers = "4GB"; + work_mem = "8MB"; superuser_reserved_connections = 5; idle_in_transaction_session_timeout = "10min"; @@ -116,6 +117,17 @@ in { host az_test az_test 127.0.0.1/32 scram-sha-256 host az_test az_test ::1/128 scram-sha-256 + host baserow baserow 127.0.0.1/32 scram-sha-256 + host baserow baserow ::1/128 scram-sha-256 + + host librechat_rag librechat_rag 127.0.0.1/32 scram-sha-256 + host librechat_rag librechat_rag ::1/128 scram-sha-256 + host librechat_rag_dev librechat_rag_dev 127.0.0.1/32 scram-sha-256 + host librechat_rag_dev librechat_rag_dev ::1/128 scram-sha-256 + + host litellm litellm 127.0.0.1/32 scram-sha-256 + host litellm litellm ::1/128 scram-sha-256 + host outline outline 127.0.0.1/32 scram-sha-256 host outline outline ::1/128 scram-sha-256 @@ -128,16 +140,12 @@ in { host vaultwarden vaultwarden 127.0.0.1/32 scram-sha-256 host vaultwarden vaultwarden ::1/128 scram-sha-256 - host zammad zammad 127.0.0.1/32 scram-sha-256 - host zammad zammad ::1/128 scram-sha-256 + host zammad_hr zammad_hr 127.0.0.1/32 scram-sha-256 + host zammad_hr zammad_hr ::1/128 scram-sha-256 # Podman network connections for Baserow - host baserow baserow 10.89.0.0/24 scram-sha-256 + # host baserow baserow 10.89.0.0/24 scram-sha-256 host kestra kestra 10.89.0.0/24 scram-sha-256 - host librechat_rag librechat_rag 10.89.0.0/24 scram-sha-256 - host librechat_rag_dev librechat_rag_dev 10.89.1.0/24 scram-sha-256 - host zammad_hr zammad_hr 10.89.0.0/24 scram-sha-256 - host postgres zammad_hr 10.89.0.0/24 scram-sha-256 host litellm litellm 10.89.0.0/24 scram-sha-256 host netbird netbird 10.89.0.0/24 scram-sha-256 diff --git a/hosts/common/ports.nix b/hosts/common/ports.nix index 84cbe41..4819ea4 100644 --- a/hosts/common/ports.nix +++ b/hosts/common/ports.nix @@ -20,6 +20,7 @@ azion-scheduler = 3039; azion-scheduler-proxy = 3049; phishboard = 3055; + homarr = 3057; metabase = 3013; baserow = 3050; @@ -42,6 +43,8 @@ portainer = 9000; postgres = 5432; + pgbouncer-tx = 6432; + pgbouncer-session = 6433; pgadmin = 5050; mysql = 3306; diff --git a/secrets.nix b/secrets.nix index dcc4441..ea7e5e0 100644 --- a/secrets.nix +++ b/secrets.nix @@ -44,8 +44,10 @@ in { "secrets/snipe-it-app-key.age".publicKeys = systems ++ users; "secrets/snipe-it-db-password.age".publicKeys = systems ++ users; "secrets/snipe-it-mail-password.age".publicKeys = systems ++ users; + "secrets/pgbouncer-userlist.age".publicKeys = systems ++ users; "secrets/pgadmin-pw.age".publicKeys = systems ++ users; "secrets/phishboard-env.age".publicKeys = systems ++ users; + "secrets/homarr-env.age".publicKeys = systems ++ users; "secrets/vaultwarden-env.age".publicKeys = systems ++ users; "secrets/vaultwarden-db.age".publicKeys = systems ++ users; "secrets/zammad-pw.age".publicKeys = systems ++ users; diff --git a/secrets/baserow-env.age b/secrets/baserow-env.age index 5dcd271117daf188a4db8f1085e4f08a2bc547db..3943b3111c4d6a3587e533f3ad18a095ce398d12 100644 GIT binary patch literal 1004 zcmYdHPt{G$OD?J`D9Oyv)5|YP*Do{V(zR14F3!+RO))YxHMCTS$_Oh?O;-pl$qOtu z$WG7k_ptCOada|qwFpY}%+Jp&ue2;TiU<#g$kk6xbV~DfbLBGeNy>?`%!w>1%8c;L z_fGQHX?sTke19QVSosC0#>RI|u}k|du>FT;Z3jBt04vO@15 zPd8)j%%q?U=OXQtaO1!TQ?nHP5EHKK(BkksFN@@GOGmGgaL;U`5VJr_!xTS@6qnq* z?DVAYWJ}9(ccZ`%_hfY2oP&KUGtw2z!lN=%oGZL7D-8AX(tM+m)560F!y=O`3Q{Z5 zy;DP6eX~7$GlEmnf_%BW%RN$pJ+mAmBHc@jN+M08Jc7zi{4Bgef)Wi%gTo^u{DXbH zd;^Vr%uTp-b#)cI5)*?Bjg2ddolDEYvT{p`)BMZBl1eH9%~SkCBfK)gjSPYl0}4{p z^UJx)vwmcDSb5q`uUq8hylaQUzXQ5Ez8Emqg|&Wrc#*Y+G* zR4P|&;QQA2i;kRvu6Bv)<;3mrOQkduXUsbJIVzj~^@gIQOG~HqAA8i~{MX{ojuqFo zhj;cY)DvCyqW%6vCca~DZBkQfUY)pG%(|@2Xro5^B2{CNd3g(1ycx12zTGapmbrIX5eJvn^q-8}bDuwn)4Rvb zbMMq@{R+2D%)G%&f5&H JCVH}U0RZt{qk#Yb literal 1551 zcmdM|0Vh{?Pd^1mcUJ{hKj)yxfDl&~1vgJ0SCE`8S7dlfj!$@4X{522X|hL9L6VV4 zX_B#5o{w>4g>$BXwx@?*Rid+DPLzwMpm#=@Q zUsY&GR2Wy1VPtuTM|wqyVZKqSn_o$gL4|2#W{FXFxLZk*dxm?cVSZVPOR`C7c4)c3 zOS-pDh)H^~v0uJVcv!Y?R;VGDZ%B4}sIix4WQ3cOr(23aaCTr(aIj@XWKMyzx1n2U zkgK0psz*>>lB-|1Zcw%;Wd1!b}sdrUMSV(wsQA(AUo3~+3Kv0#FPpDf;AXij*en~*4 zQ&qB2dP!7xV5MJ3XoY{UQ*n^7TX=YGa(Yy@pJ$?rS8$MlTX;%@t3hOhmrsyuMP+0} zif3?DN)}ggc8Xh2c2H)ZQGt7kt6{c}L6m1wo?B2zU_p3@p_fsjp=WuBv0q+TNK|le zXi$-#K}A()NLWy6wqZzWc#sR1x1m>wU!GG@RBmx)XjV{IV1%0+*64Hf3kiwH$&adZ z3QuiHhP%3JWwzay2NAa!)r63e5=&47RLF3h^`w zcg^tiu5$AU&9+QTadQPnUtq4OuTOYNWmLFZRaCH}eu%qeDp!g@XnKfSV0x5eL5PpB zU!hM`hFfT8zCluMplMRJX;6@hZ&{F`TW(agS7CCPTX~4FlTWIR5({q zwxwT?p=WuNi(7$jcCoQvwx@Aas9|Jim7jY^h@-bputABZYe`;cXhC+6v13_Kc2tO; zdrn!hYmj?#SX2&IQchGrN?uS{WT;m~RA`iQxQkmxN=SxDa9D;(WS*~gqPAy6Nu*b1 znMGD{Xkv!Bd025sS)N~^v8QFEvqiZtm%EdDVz!faV7h5ovU8%hxprEFcbKbrgqg9Q zOHpxDVn(*HXFx$pNRYp4QFy+$QAAO4pt+-dR)nL6yP>aBAXlkZp}TXGPibXFSyfJlz%|FhoO62NjOIBc7s!2tXOQu(WNou0I zsef2hVQ8vXsd+k=Yg9>PMPzEYPgz88u6uZ3kanSEfU&EuTX<=@nR!%MxrK9BfTe+D zNnk;dk+z9>P-S9zrG;UsN3edlsYyUCS5$^uikq8DU`Uo{uya{nqGeWzX`V+~W>RXR zNri`ggqd-ffnTA8iKm6DXGO5SuYrX@YN4yMeo|?!lez>% diff --git a/secrets/homarr-env.age b/secrets/homarr-env.age new file mode 100644 index 0000000000000000000000000000000000000000..8b3404bb4cc9728225d4bfa96852f2333f96ece0 GIT binary patch literal 844 zcmYdHPt{G$OD?J`D9Oyv)5|YP*Do{V(zR14F3!+RO))YxHMCTS$_Oh?O;<3@4Ja{B z4EHWf&Pyzg%FT@M2+H!#@Gi(QsxT}HiVSxO^Qtfix9~5m2;{1C&dM+GFD}S3F--K- z&u}z!OwIJlFm`*gQQs zr7S0)$kf?S-z6%?B_}U0x1_*1wJN*F+@RQ?!k5d_!!aknC^^eDy)4ndz^BkZ(c2(B zugpU~(k#;@vdAga$I{O*wW`cF&llac9QVSosC0!y?JD=80#D<@T+_l*FZ0|qvusc8 zpwdF~z(8kH{ZfyJg51oglH35ZECa5b@bL1Il=8AFi}FgNDA#<~N@G(C6Yaok=dg6Y zg5;nGlPZ^7SFfU=^lWt7oP&KUGtw3OeJxVb{ZcIg^xZxEEi)~Pt9(-f%8jypOY{pe zEqx~?2b#)c8ODf$%a^3t*Q@wKhvOEnOlS~XlBeGLGLPD~V0t1aBEGoh+Bg6CD z3(~n-eLtCoy!`*c{@}q`-=nzaZMYNKwD;p2ODEPp_pXN>HJSgW$o=1~t$o*KO>D0U ztFIB^h@Iw?|4=mZzVg8t?;kgxZa(RC<>PAICYu-A)?D1)egD%@CszwImkpmq-K-rV zUB7-^A^YtRujv69l?~P$EKyOcbMxn2t)2JwmiGHTU*(E}$GR^@FN}EIGt07Y`(ZtX zOaVr}#OQw=>hsN=3(aTtTeUbfezEOPJM~nsRx@?)GSfiu+AY;-;n^!Ak4t_z@IU8q zj<}POXN;8T_H( ssh-ed25519 ZhVseg P3zTtdI1xXB7fzI8tAyHrqu3smq5+uVn+BFUmkg77E4 +0/FaClfU+bnyme+UIvtvt57Ah/7Mq+CZHUm38qU6qNY +-> ssh-ed25519 SrHaqA 2lJ/qjvkmK2WbpIt0+lkYoJohV1ffL4JF4Tq1tKa8CY +yT5xn9AlfDdc9cuP0Ci0cSeXQZhc8F9rgGrleWCukH8 +-> ssh-ed25519 lGqVZg 5fL5Akvl1qfSRvBiaXLvAbe1r++19onOzLbvrCL05CQ +ldMBTTxpOboF/NYO0ZxCQUk+PzTtoRgpuBrit4F/zEs +-> ssh-ed25519 CSMyhg NPvZ89Q1qRqFMNNkGoHMbSvJTMhvBMPLFkaXR783wl8 +SMlZ5SpW5KKXAZUw+6U3wOmmfed83KJ/O6RJAi/6uWI +--- gDcEVCwfg5yURH9JLZbRXRP282xfSfC9c+3AWZs/Hjs +möV9CO9¥p]ÙñײC‚9ðDd‡YVº.ˆØDoû„f)X„»ðJ�:írÅù•ˆL +íµGÅþ®bî+^RÆ®3ÁâA‹æ xQÉLûh–…€g™�‰³~Lm% +ž°JY˜x(àÛr¨ðRr¸¯Æ +•¿Ýd–½sí–�þžZ:þZcXä°Hžêv#›ý[߇näY–�˜©}d‚eŪdnÖ©{7æcEa×ÈŠá[zeÅoXÆDÂ_¼;`¤f„v´_-L‘— VBtTù�î±jº£™•”ʈ%Aài'±y߀þ1�(Ñ›#¥44bÜ3k%FÇmîúº©k^ \ No newline at end of file diff --git a/secrets/metabase-env.age b/secrets/metabase-env.age index 22278212f26181eccb266f026a20fb52bad07325..f57ce3c139cd8c92ca4729bfba7fad27ae363889 100644 GIT binary patch literal 682 zcmYdHPt{G$OD?J`D9Oyv)5|YP*Do{V(zR14F3!+RO))YxHMCTS$_Oh?O;@P&H>k4A z)h{$E33n|{3N!S|2`WeoEhx=2aZb!Ca!fa`@JuvG^iHWX4CQhu^!E33a<0sd3W_Rq z&++!sFRpSgGx81z%nvZE@CdUsaWBaWH8=7P3PraqxX2^1&`}}4+_cC!xG*I=Co4GE zG0`m2)!Dho+b|?DILk04%dav#z%R$gJ*C(+Jd(>a*)S(E$<)KA%+oK!qokxLptQue zDy2LmHQXgR#Wf_{I4Cb9#KX0~IUn7&9QVSosB{I#tm25U0HgdW^K7G(G$SXo5bXe? zyySd?{IpP`3Vko1V6W87qD=D~_iQe2i>&;_z$mAbfO1#2fE3eA%fgCuGhc19)a1&@ zJX0@6U)LbdbWh{rf?{;roP&KUGtw1IlZ;*cOwzp4T%0mYf>V>z%)`r*J&W?3{45H6 z4b7Y)jLP)G%!=L#b#)aC3|%dP{KJcqyi2OglENx716?drL$k8dQ!35Vy)Bb-JhdbI)7^?g zvhukeWS@Nbw>f-?q~6>_hAIw=n7vObyQf_Il)q=)Q;*1fvjx?6Ye^j5&^%A*8rQBU zzRgAM5qp~NnckSY&P1J8Ke5KSq{F^qW3hkb*Nz{VoF3aR2$vRbVy-;k?C|f^fpvyE ze;qklXZGekduI2OC9}8by46VZJnC8EHEo%yZ>`OxAKMK~3d&FZOPq08c&qBP2b{?Y h4gVin=IY-H+Eh62mtn7h`s`04-v literal 1080 zcmdM|0Vh{?Pd^1mcUJ{hKj)yxfDl&~1vgJ0SCE`8S7dlfj!$@4X{522X|hL9L6VV4 zX_B#5o{w>4g>$BXwx@?*Rid+DPLzwMpx{0qr zzKLIMj!Tk3j#G+Za(S3>flF9+kb$pZR9IN0WocljpQn$3SCC(>pJ#Y@ij#9*x{;qt zs7Z2YMF^L_OIS{@k)e-Yc7|7Icu-DYPH1^#mZNcCZbq)3fn}h7NRCN(xM@aem|Ikm zhp)F!h)H^~v0uJVcv!Y?R;VGDZ%B4}sIix4WQ3cOr+dDkuX|2jpixOsQg~!VWUiZ& zpGSU0PYIt^qZ>U#5l5s{>s9Q>qUv7psS4c#5rEjQ#cUVNENmOo%p|3$f zMRK@dR+6ime^7RgQLsTpc93g@kzZ~_MVNtMV2DS)VX%Q$c5;YQP*|>4IhUVfen~*4 zQ&qB2dP!7xV5MJ3XoY{UQ*n^7TX=YGa(bAXSEyf(tEqojkZE#6U|Fz7x{+^In3okXhC3DUXX86M36_QyG2!Gc94%>ZiR=hV}W0iyJb;eXi8R4PD)Tvc($RR zTTno9UX(#pR#147hnsVdb4emsh`V84s;i|_xNA;Mct}RBe?)pY*64Hf3kiwH$&adZ ztcnWpEJ}6v3rRAv4B`s)$glLvDezAXbF2!_Eyzv@b93{}^)g7#N%2f{%g76g@HI+t z4+~8Ubt`htjmnISaC43_$}kHyD9DV=^EKcKGb(UOcFBlL2`}&p3JI!6uJS7I_3$f6 zGK}(0uJZCp%nEXe3^f2pUr1JtX_$dyNm!;~UUF_&MzT?8I#*JbsfCY$L7}H>cDj#2 zWKK$0funO)SXG#jYf*4$SU^%vn6I~CXk}tUT$__mA+${bFx8T zUTAW7h)GyvS)rLxQnq=jSERd9WVT->S5mlPsatwlrm=RaQ%O>kg=b}efq`G7k*8&P zVt!z9h=HL+aaM4eSB|4&R#3XBr-@sJONpsbS$2*`sH=0h3s+v4MY^M*Ym`}KWNva+ zVrjaCk$!4%poK+IW~pmRMrp8-fwzH$zQ4I+a#fmdcy4%*LAsZ-lS!qQzDJ;Mr5RUF wR(hFxd1P{0j;WWaNs>vrwzFTAc5-HtSxH)%MQE9kqpd9$IOn_ix!^1m02wk`nE(I) diff --git a/secrets/outline-env.age b/secrets/outline-env.age index 00dca3392e876eb0d1667fa21086e672c179d596..ccf3b587b01ab14010ef4d9ccbf65afcb011dc3a 100644 GIT binary patch literal 861 zcmYdHPt{G$OD?J`D9Oyv)5|YP*Do{V(zR14F3!+RO))YxHMCTS$_Oh?O;_;LPR`bL z)Xp?742{f83C=3j_6qmU2ro>JOw1@tb&5!gGEVWR2uXDea^>>2&^IkAaIz>f$n?+4 ztIXCncXZB8&n)r?PYSB=bTslS(=RJ3bF=WSa7DK*xX2^1&{4rNy~@YSCn+Q-yuc|e z!Y$dn*eAr@+$%LJ+b=!Y(Yr9B)Xy{0IX$o3z?I8Cq`c6>TiYPi-NGc-(7ZSz+$1+F z(=t5S-_Rn!!^qXiEXBh&%RAWD*96_R9QVSosB{GbQ%^(7@XCll#|Y0v*W%n9gRqJW z-{gq=;9M7PEUbho^0a|3kSoP&KUGtw12e5)cIEew6a{LM<8{2hy2!Ywk&DvN?cN-8}~ ziap9xjl%N_BFhskGYq&~eG+ps^ow$Gyu*!CJ&Vg-Q=IdBLy8bDbkf)AI}s^CPugJ<1ERqY?|#J^h^A3yaDkgMD(s z^dq_WZnDP}C2i4>`n2$-UbM=Ti^5utya~R0*8bOL>fd_%;fq_QuO6Q}AX?G<$}-Nt z^ey{Lr-^?}S%T}NUbDs-@a$8Kb-8U|6cbYO=1{iewGF4IW(T=n;o|N}bv6>byS3Dq3r%y7sNw`{1bJ}3FnX_rKo zOr&OaUGcvs-rPQqQw?Xz>l)f!kS}5gJb$w0n)#FqpBJoD@V?orwChq#m8rr;+nXuj zX_3`=Jo&Q&T5VD4g>$BXwx@?*Rid+DPLzwMpGVyhds`SgtHsVSQ^YRSJO7V}3a54xFaqPghw~Puk@CpwKar5E|_we&d3iB%Q_i!@wb@TEI&CUo7HOeju zi3kc0&GI#f%CxNV%?<@eUs_0cNtCfyPGp2%j;CvorE^|JK9`@NTTZxpfp@68pJ{4d zRFPk(rE!#tmvM5aUr~6trC(@Pn3KPoSEzHQL5WYWQ+|p;L3yI9S6-ljX=ZSqt1(xi zdsty`UQUj$Yk_~VM|xF?QF)PHc#ct&p_505VU(9&SbkM%ZicaQepzv0nRlkUr+2V% zlA(Epvrj>8fkio2K#Hkpwn1Qeep!y8t4C6@TUJqucW$yvnOjz_e_~*cpMQ>FRa#+1 zl7&U7rDJwLNr7KfRZ4|_qJgV+WQwmoS9WTCT7_Gdr+INiYLTC7n3+jnRHRX5PO4dc zN@zhW>T4Rv3Gc;S5kOnSd?G5hiP_V23KZfT3&8eo?B*kpmUUS zQg(r7Zn;Teu%nNwnO|VJcB!wWWnq~~in~F1u1Q#wQHglnGZ- zS!toZVSr;rW{7V^XhB{|il19Xh*OZczHy>sl38h0l8?Wyv!h>_OF&6pWk`^tUt)oC zez3NYZ=}9?h9^zH5|cif5!rgulL< zhkitMfm5KlVR(swMVf(6KuLaiXoPEOP_n6urCWB0e~M35euTM;yK9bdplNxztt}V0 MU~~0z!CB@30K)~Pa{vGU diff --git a/secrets/pgbouncer-userlist.age b/secrets/pgbouncer-userlist.age new file mode 100644 index 0000000000000000000000000000000000000000..4bcb2f67e0385fcd4a642a0d1322ab9e04471770 GIT binary patch literal 2173 zcmYdHPt{G$OD?J`D9Oyv)5|YP*Do{V(zR14F3!+RO))YxHMCTS$_Oh?O;-plcF|5Y zD)lgSa?Nl|4fiSVEe%LbO%E%~a`Un*PRtDO(f73U%rZ+hOy}||%*`~(Gb>CtPc5=E z$~P`ea`jEC3WzK%cFK%OOv`gL$_e+;Hjni8H9)s5xX2^1&`}|>Dm=@z!q_ClC^z3A zG(6BSGP}gcrO-Xk-!<6HCos*e$S}h*AR^b%*@P>o)IB&n(5bL2Hziy@*wxIW#5dc_ z&m}X^FDE@K)uPJK%`-SVH!r!Q7{j(4_rkEKbcM*`kTMICB9Gjt0LMHJ*Zi=|WVf=k zvM{Hp5Q}hk{ldzez=)(^ZzuPlWUj(g6LWooRLgP$GyPImHxIw?2(L5?{j3~6j|dNg zqD=2_mvH@11ILV9Uv$4Y2m4lLq$}hnMy014B!?P>g}a*Pn&lQ&W(F1}m0Cu62Zv=^ zmgQHJTNWiH29+lUT5$P$lsFlf8N}gmUTX>MEE-n5Vi{7CX9Fx;sWxlo+~)I~r8xg_j0cl$xbDoA{bUc(|MS7zcV< z7;xPS@@!XQHts+1fb-{^eMMF5>}|$} zrVIUAX7GH&(h2{=sxK|EQTlT)bK|{7uTIu2I3ZeFHn~S=>DS^KK8?9gj$W635?Frs zt!adYl|l8Dl&$XCx3_Pp<@8pFk=`_C(}`_=_G`|l#2 zbH2AY&&q682EUljf#W}z_S{L(3OXjdzaZ$>R)+0PA%U-JFQ(gCicfC#OG9qA#kWn-Ib5?Mqqs4Teo#z?7A&}oWJ&u z=rzIeH|t+sGQ49QTbT8xv;OS+q*)VUqP1p8EvPyDXZx?p@)NyLJs0em9o|GfI@7dN zR6cv*)y^GK%Ur8A`(9o1L3-Ev`?ZAyn_h_h?GRyK>UQT#`A#AK1uEU*|AZ~G4dUv8 znG&C>_Q&XbbMm{xzbY*9V%^l*AjxS5!Z{iIk2?7=`sn-Ysa@_M$QhvJT$maE=B3D$ zIOF0_6$jrR-uv|}g}-jNa>9YVA!o6cKljpT9tTB%qpyt4?K{psdF$5+nKGpuI~QKvMJvBYxS&KXBh8%>I>$mc3jik{VMnEe^#z%5)bYub0+2s z^&da{XKv58qg?UN-e0cr6PYM?r7N{_vE!Wu`hlifrYt&QkP+S|$Dp25QMWbD&d< z)!YN_Z=Sb)YUfRJW8(I+4m9n2y|=TAeVw?2ih#rVb4vrgE14r~Js&g$ew&wnK%BQT zb^Z0AFBR3|zI)57Y&o<3{*+m8bw=rp0;|aCfUNzCvX^ggtr9-hAG0aw*W{A&%%zGm zX6ei9_;SGi)sx-2r3oia-k%#{SDSmbbxJ~w+7q@H^BgQ^{)=lmwfJVqzS>{?71H6` zoVJKneCl0QTiw0Kxh&;MgT(KE`&(Tb1tsq6Wh$M)#MhkgXT`guCd&;R^K3h9uI65H zPg{RzpXfY&mybfr?#3+Y=@fFzU%}T^FLyFUT19%=m*xI!59+rn?4Nh+8P}}+%}0;F zIk4H9XO;i5dtX)Gy5(=HJkR1YEp^q5k0rWQf<=4YvjrKtTus^NogT_?XSen92M-+f z2&R5pxbNtPM{BJ=3eDC2|8)1!=zHaSrH}kxJQTbCuQgJBairVq`)Mn7E6cbDE);HB zwq?fW1tkSS`@EbVatqB<5!3p$V2jY#MXkGkJX^@MXnLGX3Q$c8t%Qe zoh|t9;K}T)9Hq!DQ3~=-ueLuCt7~6Vs>^U2ej`Z}Ifvr=pT4 za~y3OKEGsaUKF$1=4iatzIuVDD(kwRmQGl+Jpb~?wN^qK^J278!ZE tX`P~L#MG^w#px5`zWm556mz_}hyT{&BWeF6=1+eXFrn%mW7W&X9sqIz=g9y7 literal 0 HcmV?d00001 diff --git a/secrets/vaultwarden-env.age b/secrets/vaultwarden-env.age index 89986e81f538475fbba942290bae1610c2665468..08c4bda02ae8d285ba7cc07ce01024a07846b2a6 100644 GIT binary patch literal 21149 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 GSs?(uG8sky