- New stacks: beads-server, hermes-agent - Terragrunt tiers.tf for infra, phpipam, status-page - Secrets symlinks for vault, phpipam, hermes-agent - Scripts: cluster_manager, image_pull, containerd pullthrough setup - Frigate config, audiblez-web app source, n8n workflows dir - Claude agent: service-upgrade, reference: upgrade-config.json - Removed: claudeception skill, excalidraw empty submodule, temp listings [ci skip] Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
166 lines
8.7 KiB
JSON
166 lines
8.7 KiB
JSON
{
|
|
"github_repo_overrides": {
|
|
"ghcr.io/immich-app/immich-server": "immich-app/immich",
|
|
"ghcr.io/immich-app/immich-machine-learning": "immich-app/immich",
|
|
"docker.io/vaultwarden/server": "dani-garcia/vaultwarden",
|
|
"vaultwarden/server": "dani-garcia/vaultwarden",
|
|
"docker.io/mailserver/docker-mailserver": "docker-mailserver/docker-mailserver",
|
|
"mailserver/docker-mailserver": "docker-mailserver/docker-mailserver",
|
|
"docker.n8n.io/n8nio/n8n": "n8n-io/n8n",
|
|
"matrixdotorg/synapse": "element-hq/synapse",
|
|
"headscale/headscale": "juanfont/headscale",
|
|
"technitium/dns-server": "TechnitiumSoftware/DnsServer",
|
|
"ghcr.io/paperless-ngx/paperless-ngx": "paperless-ngx/paperless-ngx",
|
|
"ghcr.io/blakeblackshear/frigate": "blakeblackshear/frigate",
|
|
"ghcr.io/dgtlmoon/changedetection.io": "dgtlmoon/changedetection.io",
|
|
"ghcr.io/linkwarden/linkwarden": "linkwarden/linkwarden",
|
|
"ghcr.io/open-webui/open-webui": "open-webui/open-webui",
|
|
"ghcr.io/advplyr/audiobookshelf": "advplyr/audiobookshelf",
|
|
"ghcr.io/browserless/chromium": "browserless/chromium",
|
|
"ghcr.io/rybbit-io/rybbit-backend": "rybbit-io/rybbit",
|
|
"ghcr.io/rybbit-io/rybbit-client": "rybbit-io/rybbit",
|
|
"ghcr.io/gurucomputing/headscale-ui": "gurucomputing/headscale-ui",
|
|
"ghcr.io/dmunozv04/isponsorblocktv": "dmunozv04/iSponsorBlockTV",
|
|
"ghcr.io/gramps-project/grampsweb": "gramps-project/gramps-web",
|
|
"ghcr.io/project-osrm/osrm-backend": "Project-OSRM/osrm-backend",
|
|
"ghcr.io/flaresolverr/flaresolverr": "FlareSolverr/FlareSolverr",
|
|
"ghcr.io/therobbiedavis/listenarr": "therobbiedavis/listenarr",
|
|
"ghcr.io/immichframe/immichframe": "immichframe/ImmichFrame",
|
|
"lscr.io/linuxserver/qbittorrent": "linuxserver/docker-qbittorrent",
|
|
"lscr.io/linuxserver/lidarr": "linuxserver/docker-lidarr",
|
|
"lscr.io/linuxserver/prowlarr": "linuxserver/docker-prowlarr",
|
|
"lscr.io/linuxserver/readarr": "linuxserver/docker-readarr",
|
|
"lscr.io/linuxserver/speedtest-tracker": "linuxserver/docker-speedtest-tracker",
|
|
"privatebin/nginx-fpm-alpine": "PrivateBin/PrivateBin",
|
|
"freshrss/freshrss": "FreshRSS/FreshRSS",
|
|
"hackmdio/hackmd": "hackmdio/codimd",
|
|
"onlyoffice/documentserver": "ONLYOFFICE/DocumentServer",
|
|
"netboxcommunity/netbox": "netbox-community/netbox",
|
|
"stirlingtools/stirling-pdf": "Stirling-Tools/Stirling-PDF",
|
|
"phpipam/phpipam-www": "phpipam/phpipam",
|
|
"rhasspy/wyoming-whisper": "rhasspy/wyoming-addons",
|
|
"rhasspy/wyoming-piper": "rhasspy/wyoming-addons",
|
|
"clickhouse/clickhouse-server": "ClickHouse/ClickHouse",
|
|
"docker.io/athomasson2/ebook2audiobook": "athomasson2/ebook2audiobook",
|
|
"amruthpillai/reactive-resume": "AmruthPillworking/Reactive-Resume",
|
|
"dpage/pgadmin4": "pgadmin-org/pgadmin4",
|
|
"ghcr.io/yourok/torrserver": "YouROK/TorrServer",
|
|
"opentripplanner/opentripplanner": "opentripplanner/OpenTripPlanner",
|
|
"codeberg.org/forgejo/forgejo": "forgejo/forgejo",
|
|
"shlinkio/shlink": "shlinkio/shlink",
|
|
"shlinkio/shlink-web-client": "shlinkio/shlink-web-client",
|
|
"dgtlmoon/sockpuppetbrowser": "dgtlmoon/sockpuppetbrowser"
|
|
},
|
|
"helm_chart_repo_overrides": {
|
|
"https://charts.goauthentik.io/": "goauthentik/authentik",
|
|
"https://traefik.github.io/charts": "traefik/traefik-helm-chart",
|
|
"https://kyverno.github.io/kyverno/": "kyverno/kyverno",
|
|
"https://mysql.github.io/mysql-operator/": "mysql/mysql-operator",
|
|
"https://cloudnative-pg.github.io/charts": "cloudnative-pg/cloudnative-pg",
|
|
"https://charts.external-secrets.io": "external-secrets/external-secrets",
|
|
"https://metallb.github.io/metallb": "metallb/metallb",
|
|
"https://nextcloud.github.io/helm/": "nextcloud/helm",
|
|
"https://crowdsecurity.github.io/helm-charts": "crowdsecurity/helm-charts",
|
|
"https://helm.releases.hashicorp.com": "hashicorp/vault-helm",
|
|
"https://bitnami-labs.github.io/sealed-secrets": "bitnami-labs/sealed-secrets",
|
|
"https://grafana.github.io/helm-charts": "grafana/helm-charts",
|
|
"https://prometheus-community.github.io/helm-charts": "prometheus-community/helm-charts",
|
|
"https://democratic-csi.github.io/charts/": "democratic-csi/democratic-csi",
|
|
"https://stakater.github.io/stakater-charts": "stakater/Reloader",
|
|
"https://topolvm.github.io/pvc-autoresizer": "topolvm/pvc-autoresizer",
|
|
"https://kubernetes-sigs.github.io/descheduler/": "kubernetes-sigs/descheduler",
|
|
"https://kubernetes-sigs.github.io/metrics-server/": "kubernetes-sigs/metrics-server",
|
|
"https://charts.fairwinds.com/stable": "FairwindsOps/goldilocks",
|
|
"https://helm.ngc.nvidia.com/nvidia": "NVIDIA/gpu-operator",
|
|
"oci://ghcr.io/woodpecker-ci/helm": "woodpecker-ci/helm",
|
|
"oci://10.0.20.10:5000/bitnamicharts": "bitnami/charts"
|
|
},
|
|
"db_backed_services": {
|
|
"affine": { "type": "postgresql", "db_name": "affine", "shared": true },
|
|
"claude-memory": { "type": "postgresql", "db_name": "claude_memory", "shared": true },
|
|
"crowdsec": { "type": "postgresql", "db_name": "crowdsec", "shared": true },
|
|
"dawarich": { "type": "postgresql", "db_name": "dawarich", "shared": true },
|
|
"health": { "type": "postgresql", "db_name": "health", "shared": true },
|
|
"linkwarden": { "type": "postgresql", "db_name": "linkwarden", "shared": true },
|
|
"matrix": { "type": "postgresql", "db_name": "matrix", "shared": true },
|
|
"n8n": { "type": "postgresql", "db_name": "n8n", "shared": true },
|
|
"netbox": { "type": "postgresql", "db_name": "netbox", "shared": true },
|
|
"rybbit": { "type": "postgresql", "db_name": "rybbit", "shared": true },
|
|
"tandoor": { "type": "postgresql", "db_name": "tandoor", "shared": true },
|
|
"technitium": { "type": "postgresql", "db_name": "technitium", "shared": true },
|
|
"trading-bot": { "type": "postgresql", "db_name": "trading_bot", "shared": true },
|
|
"woodpecker": { "type": "postgresql", "db_name": "woodpecker", "shared": true },
|
|
"immich": { "type": "postgresql", "db_name": "immich", "dedicated": true, "backup_cronjob": "postgresql-backup", "backup_namespace": "immich" },
|
|
"authentik": { "type": "postgresql", "dedicated": true, "notes": "Uses PgBouncer, managed by Helm chart" },
|
|
"hackmd": { "type": "mysql", "db_name": "codimd", "shared": true },
|
|
"mailserver": { "type": "mysql", "db_name": "mailserver", "shared": true },
|
|
"monitoring": { "type": "mysql", "db_name": "monitoring", "shared": true, "notes": "Grafana backend" },
|
|
"nextcloud": { "type": "mysql", "db_name": "nextcloud", "shared": true },
|
|
"onlyoffice": { "type": "mysql", "db_name": "onlyoffice", "shared": true },
|
|
"paperless-ngx": { "type": "mysql", "db_name": "paperless_ngx", "shared": true },
|
|
"phpipam": { "type": "mysql", "db_name": "phpipam", "shared": true },
|
|
"real-estate-crawler": { "type": "mysql", "db_name": "wrongmove", "shared": true },
|
|
"speedtest": { "type": "mysql", "db_name": "speedtest", "shared": true },
|
|
"url": { "type": "mysql", "db_name": "shlink", "shared": true },
|
|
"vault": { "type": "mysql", "db_name": "vault", "shared": true }
|
|
},
|
|
"backup_infrastructure": {
|
|
"postgresql": {
|
|
"cronjob_name": "postgresql-backup",
|
|
"namespace": "dbaas",
|
|
"credential_secret": "pg-cluster-superuser",
|
|
"credential_key": "password",
|
|
"host": "pg-cluster-rw.dbaas",
|
|
"backup_pvc": "dbaas-postgresql-backup-host"
|
|
},
|
|
"mysql": {
|
|
"cronjob_name": "mysql-backup",
|
|
"namespace": "dbaas",
|
|
"credential_secret": "cluster-secret",
|
|
"credential_key": "ROOT_PASSWORD",
|
|
"host": "mysql.dbaas",
|
|
"backup_pvc": "dbaas-mysql-backup-host"
|
|
}
|
|
},
|
|
"version_jump_always_step": [
|
|
"authentik",
|
|
"nextcloud",
|
|
"immich"
|
|
],
|
|
"auto_detect_rules": {
|
|
"ghcr.io/{org}/{repo}": "Use org/repo directly, strip -server/-backend suffixes if repo 404s",
|
|
"docker.io/{org}/{repo}": "Try org/repo on GitHub",
|
|
"lscr.io/linuxserver/{app}": "Map to linuxserver/docker-{app}",
|
|
"quay.io/{org}/{repo}": "Try org/repo on GitHub",
|
|
"registry.gitlab.com/{org}/{repo}": "Try org/repo on GitHub (may be GitLab-only)"
|
|
},
|
|
"skip_image_patterns": [
|
|
"viktorbarzin/*",
|
|
"registry.viktorbarzin.me/*",
|
|
"ancamilea/*",
|
|
"mghee/*",
|
|
"*postgres*",
|
|
"*mysql*",
|
|
"*redis*",
|
|
"*clickhouse*",
|
|
"*etcd*",
|
|
"registry.k8s.io/*",
|
|
"quay.io/tigera/*",
|
|
"quay.io/metallb/*",
|
|
"nvcr.io/*",
|
|
"reg.kyverno.io/*"
|
|
],
|
|
"breaking_change_keywords": [
|
|
"breaking",
|
|
"BREAKING",
|
|
"migration required",
|
|
"schema change",
|
|
"database migration",
|
|
"manual intervention",
|
|
"action required",
|
|
"removed",
|
|
"deprecated",
|
|
"renamed",
|
|
"incompatible"
|
|
]
|
|
}
|