Summary
Installing an argocd-helm bundle without passing --set repoURL=<oci-base> fails at template render time:
Error: execution error at (aicr-bundle/templates/gpu-operator-pre.yaml:19:21):
repoURL is required: pass --set repoURL=<published bundle URL>
(e.g., oci://<registry>/<path>/aicr-bundle)
The error is correct in that the value is required, but the UX is poor:
- No default. The bundle is being pushed to a specific OCI artifact at bundle time (
aicr bundle --output oci://...). That same artifact URL trivially provides the repoURL base — there is no reason to require the user to re-supply it at install time.
- Not surfaced.
helm show values <chart> does not document repoURL as a required input, and the aicr bundle push output does not print the exact helm install ... --set repoURL=... line that consumers will need.
- Late failure. The error only appears after a successful OCI pull on the target cluster, which means slow feedback for a missing CLI flag.
Suggested Fixes (any of these would help; ideally all)
- Bake the bundle's own OCI base into the chart at build time. When
aicr bundle --output oci://<registry>/<org>/<chart>:<tag> is invoked, write repoURL: oci://<registry>/<org> into the bundle's values.yaml. Users can still override at install time, but the chart works out of the box.
- Fail at bundle time, not install time, if the value cannot be determined.
- Print the canonical install command at the end of
aicr bundle, e.g.:
Bundle pushed: oci://<registry>/<org>/<chart>:<tag>
To install: helm install <release> oci://<registry>/<org>/<chart>:<tag> --namespace argocd
- Document
repoURL in helm show values with a clear # REQUIRED comment so consumers using helm show values see it.
Repro
aicr bundle --recipe recipe.yaml --deployer argocd-helm \
--output oci://<registry>/<org>/<chart>:<tag>
# Naive install, following normal Helm OCI conventions:
helm install <release> oci://<registry>/<org>/<chart>:<tag> --namespace argocd
# → Error: repoURL is required
Impact
- Every new consumer hits this on their first install
- The required value is something the bundler already knows; making the user re-specify it is busywork
Summary
Installing an
argocd-helmbundle without passing--set repoURL=<oci-base>fails at template render time:The error is correct in that the value is required, but the UX is poor:
aicr bundle --output oci://...). That same artifact URL trivially provides therepoURLbase — there is no reason to require the user to re-supply it at install time.helm show values <chart>does not documentrepoURLas a required input, and theaicr bundlepush output does not print the exacthelm install ... --set repoURL=...line that consumers will need.Suggested Fixes (any of these would help; ideally all)
aicr bundle --output oci://<registry>/<org>/<chart>:<tag>is invoked, writerepoURL: oci://<registry>/<org>into the bundle'svalues.yaml. Users can still override at install time, but the chart works out of the box.aicr bundle, e.g.:repoURLinhelm show valueswith a clear# REQUIREDcomment so consumers usinghelm show valuessee it.Repro
Impact