Large ConfigHub Operations

A repository document, rendered for the site. View source markdown.

Generated at: 2026-07-30T12:38:02.000Z UTC · source: committed helm-expt evidence for this rendered repository document.

UNOFFICIAL/EXPERIMENTAL.

Some Helm charts become large ConfigHub components. Consul is the current example: one base can involve roughly 100 Units, target facts, OCI delivery, Argo reconciliation, workload checks, and a remaining controller-health watch.

The rule is simple: do not treat a quiet wait as a single mystery. Break the operation into visible stages and record which stage is slow, passed, blocked, or still under watch.

What To Watch

Before upload or apply, note the object shape:

New to cub? Install the cub CLI first. You can pull and render public catalog packages without an account. Commands that save or change ConfigHub data require you to sign in.

cub unit list --space <space>
kubectl --kubeconfig <kubeconfig> get all -A

During cub installer upload, check that the ConfigHub Space and Units are appearing:

cub unit list --space <space>
cub unit tree --space <space>

During cub unit apply --wait, separate ConfigHub apply progress from cluster and GitOps progress:

cub unit list --space <space>
cub unit livestate <unit> --space <space>
kubectl --kubeconfig <kubeconfig> get applications -n argocd
kubectl --kubeconfig <kubeconfig> get pods -A

For GitOps/OCI, check both the root application and the child resources:

kubectl --kubeconfig <kubeconfig> get applications -n argocd
kubectl --kubeconfig <kubeconfig> describe application <app> -n argocd
KUBECONFIG=<kubeconfig> cub-scout gitops status --json

How To Read The Result

Use a funnel:

  1. Rendered objects exist.
  2. Units uploaded to ConfigHub.
  3. OCI/GitOps source exists.
  4. GitOps controller syncs.
  5. Target facts and lifecycle prerequisites are present.
  6. Workloads converge.
  7. Controller aggregate health is explained.

If stages 1-6 pass but stage 7 remains unclear, the result is watch, not a render-parity failure. Consul currently demonstrates this: the root Argo Application can be Synced/Healthy, workloads can converge, semantic parity can pass, and a child resource such as the UI Ingress can still leave controller health in Progressing.

What To Capture

For large charts, a useful receipt or issue comment should include:

Current Product Gap

The current CLI path does not always show enough progress for large operations. The desired product behavior is a progress stream or receipt fields that show which phase and Unit group are active. Until then, use the commands above to make the funnel visible.

Tracked in issue #714.

See Also