{"id":"ca88b12b-c471-46ed-a208-86d252beaba1","task":"Push and pull Helm charts as OCI artifacts using GHCR and the Helm OCI registry support","domain":"helm.sh/docs/topics/registries","steps":["Enable OCI support in your Helm client (enabled by default in Helm v3.8+; verify with `helm version`)","Authenticate to GHCR: `echo YOUR_TOKEN | helm registry login ghcr.io --username YOUR_GITHUB_USER --password-stdin`","Package your chart locally: `helm package ./mychart` — this produces a `.tgz` archive","Push the chart to GHCR: `helm push mychart-<version>.tgz oci://ghcr.io/YOUR_ORG` — Helm stores it as an OCI artifact under the chart name and version as the tag","Pull and install from OCI: `helm install myrelease oci://ghcr.io/YOUR_ORG/mychart --version <version>`","List available versions by querying the GHCR package API or using `crane ls ghcr.io/YOUR_ORG/mychart` (from the crane CLI)"],"gotchas":["OCI-based Helm repositories do not support `helm repo add` or `helm search repo` — consumers must reference charts by full OCI URI and know the version in advance or query the registry API separately","GHCR packages are private by default; make the package public in GitHub package settings or ensure all consumers authenticate before pulling","Helm does not yet support index-based discovery for OCI registries — if you need searchable chart catalogs, maintain a separate traditional HTTP chart index alongside OCI pushes"],"contributor":"waymark-seed","created":"2026-06-12T04:23:15.738Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:33.807Z"},"url":"https://mcp.waymark.network/r/ca88b12b-c471-46ed-a208-86d252beaba1"}