# Helm chart ownership and promotion This repository contains cluster policy and values, not application workload implementations. Deployments, StatefulSets, Services, ports, probes, mount paths, and configuration wiring belong to a published upstream or maintained Helm chart outside this repository. Each independently versioned application has one chart and one Argo CD Application. This includes each Artcraft application: WordCraft, GridCraft, DeckCraft, PhotoCraft, LightCraft, VectorCraft, FilmCraft, EffectCraft, DesignCraft, FigCraft, PdfCraft, SoundCraft, and CADCraft are separate releases, not one suite chart. They share the `artcraft` namespace but do not share Kubernetes resource ownership. Their static upstream release bundles and nginx configuration are baked into distinct immutable images; pods never download application code at startup. Maintained chart repositories set `Chart.yaml.appVersion` to the tested application/image version. CI derives the chart package version from Git: - tag `v1.0.0` produces chart `1.0.0`; - the next commit produces a unique version such as `1.0.0-1-g41627abcdef`. The shared chart repository uses per-chart tags such as `wordcraft-v1.0.0`; a single-chart repository uses `v1.0.0`. The hash is retained to prevent package-version collisions. CI publishes to `https://brunner.ninja/charts`, then uses `GITOPS_TOKEN` to update only the matching Argo Application's exact Helm `targetRevision`. Argo CD performs the deployment; chart CI never receives Kubernetes credentials. GitOps values may select namespaces, hostnames, ingress integration, existing claims or storage classes/sizes, resource sizing, replica counts, monitoring labels, and names of existing Secrets. They must not duplicate chart-owned image versions or resource topology.