5 Commits

Author SHA1 Message Date
e15911305f Revert "feat: move Gitea traffic from gitea.nik4nao.com to gitea.home.arpa"
This reverts commit fd13b8a. The registry-host migration broke image
pulls for home-services/portfolio (internal CA not trusted by
containerd) and has left them Degraded for 11 days; reverting back to
gitea.nik4nao.com pending a decision on how to proceed. Not pushed yet.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-19 00:22:27 +09:00
fd13b8aedb feat: move Gitea traffic from gitea.nik4nao.com to gitea.home.arpa
Some checks failed
validate / lint (push) Has been cancelled
The public domain is unreachable while moving, and the cluster had no
Traefik route to Gitea at all (public or internal), leaving every Argo
CD Application stuck in Unknown sync. Add a gitea.home.arpa
Certificate/IngressRoute, repoint Argo CD's repoURL, Gitea's own
DOMAIN/ROOT_URL/SSH_DOMAIN, the container registry references, the
Gitea Actions runner, and the watch-party clone URL at the internal
hostname.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-07 23:06:02 +09:00
f006090fea fix: remove Immich entirely
Some checks failed
validate / lint (push) Failing after 1s
Not used enough to justify chasing the stale-NFS-handle issue on its
photos-art mount. Removes manifests/media/immich.yaml (Namespace, PVCs,
Deployments, Service, Certificate, IngressRoute), its secret script and
sealed secret, immich.home.arpa from both Pi-hole values files, its Dashy
dashboard tile, and all other repo references (READMEs, secrets-leak-scanner
scope, regen-sealed-secret example, .env.example).

Per explicit confirmation: this also means the live namespace's PVCs
(immich-library 50Gi, immich-postgres-data 20Gi, immich-ml-cache 10Gi, all
local-path with Delete reclaim policy) are intended to be deleted along with
it -- any photos actually uploaded to Immich's own library are gone once the
namespace is deleted, separately from the read-only NFS folders it browsed
(untouched either way, those live independently on nik-debian).

Git removal alone does not delete the live cluster resources -- the media
Application has prune: false. Manual `kubectl delete namespace immich` still
needed to actually free the namespace/PVCs/data.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-23 20:21:05 +09:00
7435b7583f chore: add CI validation workflow, widen secrets-scanner scope, document validation commands
Stage 9 of REFACTOR_PLAN.md.

- New .gitea/workflows/validate.yaml: runs yamllint/ansible-lint/
  ansible-playbook --syntax-check/kubeconform on push and PR via the
  self-hosted act_runner. Read-only lint pass, no cluster access, no
  apply/deploy step. This is a new automation surface -- review before
  relying on it; it only takes effect once pushed and the runner picks it up.
- Widen secrets-leak-scanner.md's stated scope to explicitly cover config/**
  -- the Dashy API key (finding #4) slipped through previously because the
  scanner's description read as manifests/Ansible/Helm-values-centric and
  didn't call out app config directories.
- Add a "Validation commands" section to CLAUDE.md with the exact
  yamllint/ansible-lint/kubeconform invocations, so future sessions run them
  before claiming a change is done instead of just asserting success.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-23 18:22:38 +09:00
791c0a5fa5 feat: add infrastructure change reviewer and secrets leak scanner, update CLAUDE.md with operational guidance 2026-07-23 11:25:20 +09:00