- Remove app submodules (hub/scraper/tools/llm-api/plugins) — apps are now standalone repos with their own flake.nix + deploy.yml CI - Delete monorepo CI: nix-build.yml matrix, update-submodule.yml, lint, security, flakehub-publish — replaced by infra-only caddy-deploy.yml - Sync Caddyfile.prod with live /etc/caddy/Caddyfile (add wiki. + mcp. blocks) - Prune legacy Docker/Traefik/Dapr/NATS/otel + scripts/root tooling - Docs: rename ADR 0001 superseded, add ADR 0003 (repo rename + split CI), update add-new-app, infra README, troubleshooting
1.5 KiB
1.5 KiB
ADR 0001: Infra Repo — Reverse Proxy Config Only (Submodules Removed)
Status
Superseded (2026-08-28) — lihat ADR ini sebagai arsip keputusan awal.
Context (aslinya)
Proyek awal memakai asepharyana-hub sebagai monorepo: aplikasi di apps/<service> sebagai
git submodule, infra (compose/traefik/dokumen/CI) terpusat di root. Keputusan itu masuk akal
saat semua service berbagi satu deployment surface.
Decision (aslinya)
Gunakan asepharyana-hub sebagai root hub: app code submodule, infra + CI di root.
Superseded By
Mulai 2026-08-28 repo dirombak:
- Parent
asepharyana-hub→asepharyana/infra— murni config reverse proxy (Caddy), firewall, systemd drop-ins, docs. CI hanya untuk deploy Caddy. - App repos di-rename & self-contained:
hub,scraper,tools,llm-api. Masing-masing punyaflake.nix+.github/workflows/deploy.ymlsendiri (nix build → nix copy → nix-env --profile → systemctl restart). - Submodule dihapus — tidak ada lagi pointer submodule / repository_dispatch chain.
update-submodule.yml,notify-parent.yml, matrixnix-build.ymldihapus.
Consequences
Positive
- CI tiap app independen: push ke repo app langsung build+deploy, tak perlu 2 hop.
- Parent kecil & fokus: diff Caddyfile mudah di-audit.
- Tanpa submodule = tanpa
dubious ownership/ pointer drift / fetchGit pin.
Negative
- Koordinasi cross-repo manual (app + Caddy bila perlu port baru).
- Repo lama
asepharyana-hub-*redirect ke nama baru (GitHub auto).