infra/stacks
Viktor Barzin 0610ea30d4 add generic multi-user cluster onboarding system
Data-driven user onboarding: add a JSON entry to Vault KV k8s_users,
apply vault + platform + woodpecker stacks, and everything is auto-generated.

Vault stack: namespace creation, per-user Vault policies with secret isolation
via identity entities/aliases, K8s deployer roles, CI policy update.

Platform stack: domains field in k8s_users type, TLS secrets per user namespace,
user domains merged into Cloudflare DNS, user-roles ConfigMap mounted in portal.

Woodpecker stack: admin list auto-generated from k8s_users, WOODPECKER_OPEN=true.

K8s-portal: dual-track onboarding (general/namespace-owner), namespace-owner
dashboard with Vault/kubectl commands, setup script adds Vault+Terraform+Terragrunt,
contributing page with CI pipeline template, versioned image tags in CI pipeline.

New: stacks/_template/ with copyable stack template for namespace-owners.
2026-03-18 08:04:03 +00:00
..
_template add generic multi-user cluster onboarding system 2026-03-18 08:04:03 +00:00
actualbudget migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
affine migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
audiobookshelf migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
blog add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
calibre migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
changedetection migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
city-guesser add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
claude-memory fix DB password desync + migrate remaining tfvars to Vault 2026-03-18 08:04:03 +00:00
coturn migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
cyberchef add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
dashy add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
dawarich regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
descheduler migrate all secrets from SOPS to Vault KV 2026-03-18 08:03:59 +00:00
diun regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
ebook2audiobook migrate all secrets from SOPS to Vault KV 2026-03-18 08:03:59 +00:00
echo add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
excalidraw add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
external-secrets regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
f1-stream regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
forgejo migrate consuming stacks to ESO + remove k8s-dashboard static token 2026-03-18 08:04:02 +00:00
freedify migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
freshrss migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
frigate right-size cluster memory: reduce overprovisioned, fix under-provisioned services 2026-03-18 08:04:01 +00:00
grampsweb migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
hackmd fix DB password desync + migrate remaining tfvars to Vault 2026-03-18 08:04:03 +00:00
health fix health DB ExternalSecret: use pg-health not postgresql-health role name 2026-03-18 08:04:03 +00:00
homepage add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
immich regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
infra fix DB password desync + migrate remaining tfvars to Vault 2026-03-18 08:04:03 +00:00
isponsorblocktv add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
jsoncrack migrate all secrets from SOPS to Vault KV 2026-03-18 08:03:59 +00:00
k8s-dashboard migrate consuming stacks to ESO + remove k8s-dashboard static token 2026-03-18 08:04:02 +00:00
kms add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
linkwarden fix DB password desync + migrate remaining tfvars to Vault 2026-03-18 08:04:03 +00:00
matrix regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
meshcentral add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
n8n regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
navidrome migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
netbox regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
networking-toolbox add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
nextcloud fix DB password desync + migrate remaining tfvars to Vault 2026-03-18 08:04:03 +00:00
novelapp migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
ntfy add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
ollama migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
onlyoffice add pod dependency management via Kyverno init container injection 2026-03-18 08:04:02 +00:00
openclaw migrate consuming stacks to ESO + remove k8s-dashboard static token 2026-03-18 08:04:02 +00:00
osm_routing add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
owntracks migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
paperless-ngx regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
platform add generic multi-user cluster onboarding system 2026-03-18 08:04:03 +00:00
plotting-book fix DB password desync + migrate remaining tfvars to Vault 2026-03-18 08:04:03 +00:00
poison-fountain regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
privatebin add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
real-estate-crawler migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
reloader [ci skip] phase 5+6: update CI pipelines for SOPS, add sensitive=true to secret vars 2026-03-07 14:30:36 +00:00
resume regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
rybbit regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
send add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
servarr migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00
shadowsocks regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
speedtest fix DB password desync + migrate remaining tfvars to Vault 2026-03-18 08:04:03 +00:00
stirling-pdf migrate consuming stacks to ESO + remove k8s-dashboard static token 2026-03-18 08:04:02 +00:00
tandoor fix DB password desync + migrate remaining tfvars to Vault 2026-03-18 08:04:03 +00:00
terminal regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
tor-proxy add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
trading-bot fix DB password desync + migrate remaining tfvars to Vault 2026-03-18 08:04:03 +00:00
travel_blog add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
tuya-bridge regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
url fix DB password desync + migrate remaining tfvars to Vault 2026-03-18 08:04:03 +00:00
vault add generic multi-user cluster onboarding system 2026-03-18 08:04:03 +00:00
wealthfolio regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
webhook_handler regenerate providers.tf: remove vault_root_token variable [ci skip] 2026-03-18 08:04:03 +00:00
whisper add vaultwarden daily backup CronJob to NFS 2026-03-18 08:04:00 +00:00
woodpecker add generic multi-user cluster onboarding system 2026-03-18 08:04:03 +00:00
ytdlp migrate 16 plan-time stacks: vault data source → ESO + kubernetes_secret 2026-03-18 08:04:03 +00:00