3 projects
bump-chart step: fixed (git push origin HEAD:master) ✓opencode image cross-repo pull perms (OPENCODE_PAT needed for Flux deploy key, not CI)jane.yash.abyssmallab.in after updatejane-bridge:0.1.16 (with jane-opencode:0.1.16 sidecar)jane-pwa:0.1.16jane-speech:0.1.16nats:2.14.2-alpinereport-server: beingyash/report-server:v0.1.1 + git-sync:v4.2.1
oracle-cp had abysmallab.in in its DNS search domains from Tailscale MagicDNS.*.abysmallab.in wildcard resolves to oracle-cp itself (140.238.165.62).ndots:5, pod queries like github.com were suffixed to github.com.abysmallab.in, resolving back to the worker node.tls: internal error (HTTPS) and knownhosts: key mismatch (SSH) because connections were hitting local Caddy/Traefik instead of GitHub.resolvConf: /etc/resolv.clean.conf in kubelet config; worker node was using /run/systemd/resolve/resolv.conf.Fix applied:
/etc/resolv.clean.conf on oracle-cp with only nameserver 127.0.0.53 and no search domains./var/lib/kubelet/config.yaml on oracle-cp to use resolvConf: /etc/resolv.clean.conf.jane-chart back to SSH URL.ansible/add-worker.yml so future workers get the same clean resolv.conf.traefik has LoadBalancer service (EXTERNAL-IP <pending>) — no MetalLB (bare-metal)32580, HTTPS 32305### Flux GitRepository — resolved ✓
abysmallab.in + wildcard DNS caused pod DNS to resolve github.com back to worker node./etc/resolv.clean.conf (no search domains).### Monitoring — resolved ✓
grafana.yash.abysmallab.in### Cross-node networking — resolved ✓
- jane: traefik-system (80,3000,8000), intra-namespace, monitoring scraping - pocketid: traefik-system on :1411 - traefik-system: monitoring scraping on :9100, dashboard on :8080 (external traffic not restricted by NP) - cert-manager: webhook from all, monitoring scraping, intra-namespace - default: traefik-system on :3000 (report-server), monitoring scraping - monitoring: grafana from traefik, intra-namespace, prometheus API - kube-system: DNS from all, intra-namespace, monitoring scraping - sealed-secrets: API from all, monitoring scraping### PodDisruptionBudgets (minAvailable: 1)
### Verification
kubectl delete networkpolicy --all -n <ns> per namespace### Manifests
netpol/ — 9 YAML files covering all namespacespdb/ — 3 YAML files (jane combined, pocketid, traefik)longhorn/longhorn chart)open-iscsi and nfs-common pre-installed on both nodeslonghorn (2 replicas, Immediate binding mode)local-path de-prioritized (no longer default, kept as fallback)### PVC Migration
- Backed up /app/data/pocket-id.db → /tmp/pocketid-backup.sqlite3
- Scaled down, deleted old local-path PVC, created new with storageClassName: longhorn
- Scaled up → pod healthy, ingress HTTP 200
- Scaled down, deleted old local-path PVC, created new with storageClassName: longhorn
- Scaled up → pod Running 1/1, NATS HTTP 200
local-path (ephemeral per spec; migrate later if needed)### Volume Health
attached, degraded robustness (3rd replica stopped — only 2 nodes available)### Known Issue: CP Node DiskPressure
marketgenie-market-genie) had transient DiskPressure after Longhorn installreports.yash.abysmallab.inbeingyash/report-server:v0.1.1git-sync:v4.2.1/ replaces old reports listing/reports