homelab-codex-ws/kb/runbooks/paperless-cutover.md
oskar 01db57ab82 fix(kb): przepiecie wszystkich odwolan wewnetrznych po migracji
126 plikow (md, yaml, sh, py) odwolywalo sie do sciezek sprzed migracji.

  15  markdown-linkow [..](..) -> policzona sciezka WZGLEDNA wobec pliku
      odsylajacego (wczesniej czesc z nich byla repo-root-relative i nie
      rozwiazywala sie z katalogu, w ktorym lezala)
 200  odwolan tekstowych (backticki, proza, yaml, importy w kodzie)
      -> nowa sciezka repo-root-relative, zgodnie z konwencja repo
   5  linkow rodzenstwa (gole nazwy plikow, np. "](DEPLOY.md)") — dzialaly
      tylko w starym katalogu; przeliczone recznie

Objete m.in.: CLAUDE.md (scripts/onboard/README.md -> kb/runbooks/
node-onboarding-tool.md, docs/backlog.md -> kb/phases/backlog.md),
README.md, .claude/skills/, 20 session logow, kod jobow.

Ostatnie 5 odwolan pochodzi z tresci wciagnietej rebasem z origin/master
(session log 2026-07-31, override node-agenta na SOLARII, dwie pozycje
backlogu) — wskazywaly na docs/incidents/, docs/kb/modules/ i
services/narty27/README.md sprzed migracji.

Dodany wzajemny link miedzy kb/services/control-plane.md (stub kodu)
a kb/subsystems/control-plane.md (opis, deprecated) — dwa dokumenty o tym
samym systemie, latwe do pomylenia.

Weryfikacja na 790 plikach: 0 odwolan do starych sciezek,
0 martwych linkow markdown. Lint OKF: 190/190 plikow ZGODNE.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-04 16:53:57 +02:00

30 lines
1.2 KiB
Markdown

---
okf: "0.1"
type: runbook
visibility: private
status: active
updated: 2026-07-09
links:
- ../services/paperless.md
- ../decisions/paperless-split-ocr.md
---
# Paperless — cutover checklist
## Cutover checklist (przy deployu — NIE teraz)
1. Moduł 0 (piha-slim) domknięty; `free -g` na PIHA potwierdza zapas.
2. Porty wolne na żywym hoście: `ss -tlnp | grep -E '8210|5434|6380'`.
3. `mkdir -p /opt/homelab/data/paperless/{data,media,consume,export}` na PIHA.
4. `.env` z `env.example` (sekrety + rejestracja OAuth2 w Forgejo).
5. DNS: rekord A `paper.kapala.org` w Cloudflare → `100.108.208.3`
(Tailscale PIHA, DNS Only) — ten sam wzorzec co `ha.kapala.org` /
`immich.kapala.org` (`docs/sessions/2026-06-30-kapala-cloudflare-wildcard-mesh.md`);
wildcard `*.kapala.org` już pokrywa tę subdomenę, nowy cert niepotrzebny.
Plus vhost w npm@PIHA (HTTPS → `192.168.31.5:8210`, Advanced puste).
6. `docker compose up -d` + `./healthcheck.sh` + testowy login OIDC.
7. Export NFS dla workera (patrz `kb/services/paperless-worker.md`) —
dopiero przy module 3.
8. Wpis w `hosts/piha/services.yaml` (dopiero przy deployu — wcześniej
supervisor widziałby drift dla nieistniejącego serwisu).