1212 Commits

Author SHA1 Message Date
Ruben Hensen 20cf119dbd Extend authentik + FreshRSS session lifetimes
Authentik's default-authentication-login stage ships with
session_duration: seconds=0, so the SSO session died with the browser.
New blueprint raises it to 30 days for every app on that flow.

FreshRSS runs OIDC through Apache mod_auth_openidc, whose defaults are a
5 minute inactivity timeout and a ~7.5 hour max duration in a non-persistent
cookie. Bumped to a 30 day sliding inactivity window (refreshed on every
request) with a 90 day hard cap, and made the cookie persistent so it
survives a browser restart.
2026-09-03 15:21:07 +02:00
Ruben Hensen ec5405fc29 bolletjestrui: deploy main-10268f1 (routes, voting, push, ride uploads)
Adds the VAPID keypair for web push and raises the ingress body limit to 25m to
match the app's BODY_SIZE_LIMIT, since a bulk route import posts every GPX in one
request.

The VAPID env refs are optional:true on purpose — a missing key in a secretKeyRef
puts the pod in CreateContainerConfigError, and the app already handles absent
keys by sending no notifications.
2026-08-15 17:55:37 +02:00
Ruben Hensen b50f8dc5b6 bolletjestrui: deploy main-8f17b5d (editable etappe titles) 2026-07-24 11:36:21 +02:00
Ruben Hensen 06dd19e5de bolletjestrui: deploy main-878b462 (select chevron fix) 2026-07-24 11:13:54 +02:00
Ruben Hensen 29847b1f12 bolletjestrui: deploy main-cca932c (global scoring setting) 2026-07-24 10:55:50 +02:00
Ruben Hensen 52b58835c0 bolletjestrui: deploy main-b3bfe55 + BODY_SIZE_LIMIT 25M (20MB profile photos) 2026-07-23 23:20:57 +02:00
Ruben Hensen 1d7d625d53 bolletjestrui: deploy main-7e1236d (mobile hamburger menu) 2026-07-23 22:27:43 +02:00
Ruben Hensen a3dadcd50f bolletjestrui: deploy main-923b40f (climb-matching CSV streams fix) 2026-07-23 21:09:47 +02:00
Ruben Hensen 095d82af02 bolletjestrui: bump image to main-60c604c 2026-07-22 12:08:41 +02:00
Ruben Hensen aabe5ad349 bolletjestrui: bump image to main-1a46d10 2026-07-22 11:55:40 +02:00
Ruben Hensen 851f9e4a20 bolletjestrui: bump image to main-041b4e0 2026-07-22 11:40:52 +02:00
Ruben Hensen 0b5eb69f84 bolletjestrui: bump image to main-1e286f5 2026-07-22 11:31:41 +02:00
Ruben Hensen 15d7916e81 bolletjestrui: bump image to main-d21edde 2026-07-22 11:03:46 +02:00
Ruben Hensen d2f5d5eac6 bolletjestrui: bump image to main-86048a8
Even more generous detection; NC climbs now score a point.
2026-07-21 16:53:18 +02:00
Ruben Hensen c0b4a7183b bolletjestrui: bump image to main-b5baf1f
Generous climb detection (min length/grade/score lowered, Cat 4 floor)
and the climb category editor fix.
2026-07-21 16:36:59 +02:00
Ruben Hensen 8e60f6796a node001: tunnel vic.rubenhensen.nl to the home cluster
Add vic.rubenhensen.nl to tunneledHosts so the edge box does SNI
passthrough on :443 and the :80 ACME/redirect vhost for it, matching
the DNS record. Without this, vic falls through to Stalwart on :8443
and cert-manager's HTTP-01 challenge can't be reached.
2026-07-21 15:29:49 +02:00
Ruben Hensen f13417bc8f Add bolletjestrui app + vic.rubenhensen.nl
Deploys ghcr.io/rubenhensen/bolletjestrui at vic.rubenhensen.nl:
- bolletjestrui/ folder: deployment (SQLite on a PVC, migrate-on-start,
  ORIGIN + raised BODY_SIZE_LIMIT for GPX uploads), service, nginx
  ingress with prod-cluster-issuer TLS, PVC, and a Vault ExternalSecret
  (kv/bolletjestrui: site_password, admin_password, key_secret).
- apps/templates/bolletjestrui-folder.yaml: ArgoCD Application.
- dns: vic A record -> 46.224.26.65 (ingress LB).
- renovate: watch bolletjestrui/ for image tag bumps.

Committed locally, not pushed: needs the Vault secret created and the
ghcr package made public first.
2026-07-21 14:33:31 +02:00
Ruben Hensen a11309263e Update home cluster IP to 62.41.86.27 2026-06-06 09:52:36 +02:00
Ruben Hensen 379c050bb3 Update actual-budget to chart 1.8.9 / app 26.6.0 2026-06-03 11:28:10 +02:00
Ruben Hensen 20128bcd73 Add gitea at git.rubenhensen.nl
Single-pod sqlite install (simplest path for a home git host). HTTPS-only,
no SSH listener for now. Wired into the Hetzner tunnel like the other
rubenhensen.nl services.

First visitor to git.rubenhensen.nl can register; Gitea auto-promotes the
first user to admin.
2026-05-19 23:19:21 +02:00
Ruben Hensen ffe8830b5e Tunnel argocd/ha/longhorn/lingo/blog/serpbear through Hetzner
Refactor node001 nginx to drive both the SNI map and the port-80 vhosts
from a single tunneledHosts list so adding a service is one line.
2026-05-19 23:14:04 +02:00
Ruben Hensen 8d383d4261 Tunnel ynab.rubenhensen.nl through Hetzner 2026-05-19 23:04:02 +02:00
Ruben Hensen 00d46b6bd6 Tunnel vault.rubenhensen.nl through Hetzner 2026-05-19 22:56:52 +02:00
Ruben Hensen cb7cba25d0 Tunnel authentik.rubenhensen.nl through Hetzner
Same pattern as rss — needed so the OIDC redirect from freshrss (and
other relying parties) works for clients outside the home LAN.
2026-05-19 22:50:56 +02:00
Ruben Hensen ff9c2d3cef Tunnel rss.rubenhensen.nl through Hetzner
Point rss to the Hetzner box and reverse-proxy/SNI-passthrough back to
the home cluster so cert-manager keeps owning the certificate. Move
stalwart's HTTPS listener to 127.0.0.1:8443 so nginx can take :443 and
dispatch by SNI.
2026-05-19 22:45:55 +02:00
Ruben Hensen 790d7d6f32 Add WF_ENCRYPTION_KEY to mbgwp wordpress 2026-05-18 22:12:45 +02:00
Ruben Hensen 8aef769e78 Fix serpbear PVC permissions 2026-04-25 20:48:27 +02:00
Ruben Hensen 20dfbde02f Add serpbear 2026-04-25 20:39:20 +02:00
Ruben Hensen bb308a3d66 rm phocaslustrum 2026-04-10 21:53:10 +02:00
Ruben Hensen 5a84bbaead rm ttrss 2026-04-10 21:52:08 +02:00
Ruben Hensen 0c4afc9b71 Add oidc actualbudget 3 2026-04-10 21:40:38 +02:00
Ruben Hensen 499cd6826a Add oidc actualbudget 2 2026-04-10 21:32:19 +02:00
Ruben Hensen 068ac20693 Add oidc actualbudget 2026-04-10 21:23:50 +02:00
Ruben Hensen 579e40d2b3 Update port oidc freshrss 2026-04-10 20:59:59 +02:00
Ruben Hensen 428f14efc1 Add oidc freshrss 2026-04-10 20:49:11 +02:00
Ruben Hensen dc85d89904 Add oidc secret for argocd 2026-04-06 18:52:21 +02:00
Ruben Hensen 0fd7bf1135 Add OIDC to argocd 2026-04-06 18:44:32 +02:00
Ruben Hensen faaf6b6729 Remove most hensen.io refs and move from stalwart.rubenhensen.nl to mail.rubenhensen.nl 2026-04-06 18:09:24 +02:00
Ruben Hensen c876a725c1 Move to simpler email setup 2026-04-06 17:55:48 +02:00
Ruben Hensen cfa4c49a2b Remove sogo 2026-04-06 17:42:06 +02:00
Ruben Hensen 1b7fd44117 Add Manage sieve 2026-04-06 14:44:56 +02:00
Ruben Hensen b9ebe42023 Remove sogo quota 2026-04-06 14:25:26 +02:00
Ruben Hensen 07c168220b Revert property mapping 2026-04-05 22:48:35 +02:00
Ruben Hensen 91812829c6 Add property mailalias mapping 2026-04-05 22:36:44 +02:00
Ruben Hensen abe8fc348e Add smtp to config sogo 2026-04-05 21:53:16 +02:00
Ruben Hensen 66a5e2600f Lower DNS TTL from 24h to 5 minutes for all records 2026-04-04 12:38:56 +02:00
Ruben Hensen 6262ac5a93 Point mail.rubenhensen.nl to home K8s cluster instead of Hetzner
The CNAME to stalwart.rubenhensen.nl caused browser traffic to hit the
Hetzner server, which doesn't have a certificate for mail.rubenhensen.nl.
2026-04-04 12:33:22 +02:00
Ruben Hensen d9964cd689 Fix the dns for rubenhensen.nl 2026-03-26 11:19:32 +01:00
Ruben Hensen 04fafd64e2 Add dkim to stalwart 2026-03-22 16:06:40 +01:00
Ruben Hensen 7a98ad0a9e Add email domain changes 2026-03-22 15:41:06 +01:00