Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,8 @@ App-template apps follow the same four-file layout:
**`helmrelease.yaml` key points:**

- app-template apps: `chartRef.kind: OCIRepository`, name `app-template`, namespace `flux-system`; official-chart apps: `chartRef.kind: OCIRepository` pointing to the upstream OCI registry or `ghcr.io/home-operations/charts-mirror` — fall back to `HelmRepository` only if no OCI source exists
- Standard boilerplate: `driftDetection.mode: enabled`, `install.remediation.retries: -1`, `upgrade.cleanupOnFail: true`
- **Do not add install/upgrade/rollback boilerplate** — `kubernetes/cluster/ks.yaml` injects global defaults into every HelmRelease via a nested Kustomization patch: `driftDetection.mode: enabled`, `install.crds: CreateReplace`, `rollback.cleanupOnFail: true`, `upgrade.cleanupOnFail: true`, `upgrade.crds: CreateReplace`, `upgrade.strategy.name: RemediateOnFailure`, `upgrade.remediation.remediateLastFailure: true`, `upgrade.remediation.retries: 2`
- To opt a HelmRelease out of global defaults (e.g. needs `crds: Skip` or `driftDetection.mode: disabled`), add `labels: { kantai.xyz/no-hr-defaults: "true" }` to the HelmRelease `metadata` and set all required fields explicitly
- All containers get `reloader.stakater.com/auto: "true"` (restarts on secret change)
- Security context: `runAsNonRoot: true`, `allowPrivilegeEscalation: false`, `capabilities: {drop: ["ALL"]}`, `readOnlyRootFilesystem: true`
- Routes use `parentRefs: [{name: envoy-internal, namespace: network}]` for LAN/tailnet-only services, `envoy-external` for public internet
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,6 @@ spec:
chartRef:
kind: OCIRepository
name: cert-manager
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
cainjector:
featureGates: CAInjectorMerging=true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,6 @@ spec:
sourceRef:
kind: HelmRepository
name: jetstack
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
app:
metrics:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,19 +28,11 @@ spec:
kind: OCIRepository
name: cloudnative-pg
driftDetection:
mode: enabled
ignore:
# Ignore "validated" annotation which is not inserted during install
- paths: ["/metadata/annotations/prometheus-operator-validated"]
target:
kind: PrometheusRule
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
monitoring:
podMonitorEnabled: true
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/database/influxdb/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
influxdb:
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/autobrr/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
autobrr:
Expand Down
7 changes: 0 additions & 7 deletions kubernetes/apps/default/buildkit/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
amd64:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
changedetection:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,6 @@ spec:
chartRef:
kind: OCIRepository
name: crd-schema-publisher
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
serve:
enabled: true
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/dawarich/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
configMaps:
dawarich-initdb:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
docker-registry-ui:
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/docling/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
docling:
Expand Down
7 changes: 0 additions & 7 deletions kubernetes/apps/default/glance/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
defaultPodOptions:
securityContext:
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/gluetun/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
gluetun-update:
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/grimmory/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
grimmory:
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/homebox/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
homebox:
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/homepage/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
homepage:
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/hypermind/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
hypermind:
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/immich/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
machine-learning:
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/immich/frame/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
immichframe:
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/immich/valkey/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
valkey:
Expand Down
7 changes: 0 additions & 7 deletions kubernetes/apps/default/jellyfin/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
jellyfin:
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/karakeep/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
browserless:
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/komga/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
komga:
Expand Down
9 changes: 0 additions & 9 deletions kubernetes/apps/default/mealie/app/helmrelease.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,6 @@ spec:
kind: OCIRepository
name: app-template
namespace: flux-system
driftDetection:
mode: enabled
install:
remediation:
retries: -1
upgrade:
cleanupOnFail: true
remediation:
retries: 3
values:
controllers:
mealie:
Expand Down
Loading
Loading