applications:
openstack-operator:
targetRevision: "v0.2.0" # tag — recommended
openstack-controlplane:
targetRevision: "abc123def456" # commit hash — also safeRHOSO GitOps pattern configuration
The rhoso-gitops meta-chart renders Argo CD Application resources. It does
not deploy RHOSO workloads directly; Kustomize overlays in the
upstream GitOps repository remain the source of truth.
Values file layers
The clustergroup application in values-standalone.yaml points Argo CD at
charts/all/rhoso-gitops and layers pattern overrides from
overrides/values-rhoso-gitops.yaml through extraValueFiles.
| Layer | File | Role |
|---|---|---|
Pattern global |
| Pattern name, sync policy, singleArgoCD mode, custom ArgoCD health checks |
Cluster group |
| Registers the |
Chart defaults |
| Default |
Pattern overrides |
| Pins upstream |
Platform overrides |
| Optional platform-specific overrides (placeholder) |
To change upstream Git content (revision, paths, or enabled applications), edit
overrides/values-rhoso-gitops.yaml. The pattern syncs automatically if
global.options.syncPolicy is set to Automatic in values-global.yaml.
Upstream applications
Child Argo CD Applications sync from
openstack-k8s-operators/gitops
at the revision pinned in overrides/values-rhoso-gitops.yaml.
The |
| Application | Purpose | Upstream path | Red Hat OpenStack Services on OpenShift docs |
|---|---|---|---|
| Infrastructure Operators (cert-manager, MetalLB, nmstate, observability) | ||
| OpenStack Operator subscription | ||
| Main | ||
| Secure-backend sync (disabled by default) | not configured | |
| Network configuration | ||
|
| ||
| Data plane |
By default, the pattern enables all applications except openstack-secrets.
Applications use automated sync with a retry policy to handle transient failures
during deployment convergence.
Pinning a different upstream revision
Child applications use automated sync by default: Argo CD reconciles them
whenever the upstream Git repository changes. If targetRevision points to a
branch name like main or HEAD, any push to that branch triggers an automatic
deployment. This can cause unexpected changes in production.
Always pin |
In overrides/values-rhoso-gitops.yaml, set targetRevision for each
application that you want to pin:
Apply the same key under every application you want on that revision, or only the entries that you want to change; unspecified keys keep chart defaults.
Disabling automated sync for an application
To switch a specific application to manual sync, override its syncPolicy
without the automated key:
applications:
openstack-dataplane:
syncPolicy:
syncOptions:
- Prune=trueDisabling a deployment stage
To disable a deployment stage, set enabled to false for that application:
applications:
openstack-dataplane:
enabled: falseSetting a custom retry policy
To override the default retry policy for an application:
applications:
openstack-controlplane:
syncPolicy:
automated:
prune: true
selfHeal: true
retry:
limit: 20
backoff:
duration: "10s"
factor: 2
maxDuration: "5m"For more information about retry options, see the Argo CD automatic sync documentation.
Pointing an application to your Git overlay
To point an application at your own Git overlay, set repoURL, path, and
targetRevision:
applications:
openstack-controlplane:
repoURL: "https://github.com/example/your-gitops.git"
path: "environments/prod/controlplane"
targetRevision: "main"Adding Kustomize components
For example, add a secrets Operator component through operator-dependencies:
applications:
operator-dependencies:
kustomize:
components:
- "https://github.com/openstack-k8s-operators/gitops/components/secrets/vault-secrets-operator?ref=v0.2.0"For Vault Secrets Operator and External Secrets Operator component URLs, see the upstream components/secrets README.
For standalone Helm usage and advanced chart examples, see the upstream rhoso-apps chart.
