Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions content/patterns/rhoso-gitops/cluster-sizing.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@ include::modules/comm-attributes.adoc[]
:imagesdir: /images
include::modules/rhoso-gitops/metadata-rhoso-gitops.adoc[]

Review the cluster and data plane host requirements before you deploy the
{rhoso-gitops-pattern}.

[id="rhoso-gitops-cluster-requirements"]
== Cluster requirements

Expand Down
8 changes: 1 addition & 7 deletions content/patterns/rhoso-gitops/secret-management.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -203,13 +203,7 @@ bootstrap_secrets:
path: ~/vault-approle-secret-id
onMissingValue: error

secrets:
- name: osp-secret
fields:
- name: AdminPassword
value: "__<admin-password>__"
# ... remaining service password fields
# ... remaining secrets
secrets: []
----

. Install the pattern:
Expand Down
17 changes: 5 additions & 12 deletions content/patterns/rhoso-gitops/troubleshooting.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ $ ./pattern.sh make argo-healthcheck
[id="rhoso-gitops-check-argocd"]
== Checking Argo CD application status

The pattern uses two Argo CD namespaces. List applications in each namespace:
All Argo CD applications run in the `vp-gitops` namespace:

. List applications in `vp-gitops`:
+
Expand All @@ -54,22 +54,15 @@ The pattern uses two Argo CD namespaces. List applications in each namespace:
$ oc get applications -n vp-gitops
----

. List applications in `rhoso-gitops-standalone`:
+
[source,terminal]
----
$ oc get applications -n rhoso-gitops-standalone
----

. Inspect a child application that is out of sync or unhealthy:
+
[source,terminal,subs="+quotes"]
----
$ oc describe application __<application_name>__ -n rhoso-gitops-standalone
$ oc describe application __<application_name>__ -n vp-gitops
----

Use the Argo CD UI in the `rhoso-gitops-standalone` namespace to review
application status, resource health, and diff details for upstream overlays.
Use the Argo CD UI in the `vp-gitops` namespace to review application status,
resource health, and diff details for upstream overlays.

[id="rhoso-gitops-check-pods"]
== Checking pod status
Expand All @@ -95,7 +88,7 @@ $ oc logs -n __<namespace>__ __<pod_name>__
The following known issues can affect pattern deployment:

* *`openstack-secrets` disabled*: The default pattern leaves
`openstack-secrets` disabled because no Git path exists (`path: TODO`).
`openstack-secrets` disabled because no Git path exists.
Enable it only after you configure secret wiring. See
link:../secret-management/[Secret management for the {rhoso-gitops-pattern}].
* *Upstream sync failures*: Confirm that `targetRevision` and paths in
Expand Down
2 changes: 1 addition & 1 deletion modules/rhoso-gitops/metadata-rhoso-gitops.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// Do not edit manually!
:metadata_version: 1.0
:name: rhoso-gitops
:description: Deploy Red Hat OpenStack Services on OpenShift (RHOSO) using GitOps via the rhoso-gitops meta-chart and upstream Kustomize example overlays.
:description: Deploy Red Hat OpenStack Services on OpenShift (RHOSO) by using GitOps through the rhoso-gitops meta-chart and upstream Kustomize example overlays.
:pattern_version: 0.1.0
:display_name: RHOSO GitOps
:repo_url: https://github.com/validatedpatterns-sandbox/rhoso-gitops
Expand Down
2 changes: 1 addition & 1 deletion modules/rhoso-gitops/rhoso-gitops-about.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ fan-out.
| Yes
| {solution-name-upstream} clustergroup (`values-standalone.yaml`),
*rhoso-gitops* meta-chart, and child {rh-rhoso-short} Applications in
`rhoso-gitops-standalone`
`vp-gitops`

| Managed clusters
| None
Expand Down
28 changes: 13 additions & 15 deletions modules/rhoso-gitops/rhoso-gitops-architecture.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

The {rhoso-gitops-pattern} delivers {rh-rhoso-short} configuration through Argo CD
Applications that the *rhoso-gitops* meta-chart creates. The pattern uses GitOps
delivery through dual Argo CD namespaces, manages infrastructure topology, and
delivery through a single Argo CD namespace, manages infrastructure topology, and
converges deployment through retry policies.

[id="rhoso-gitops-gitops-delivery"]
Expand All @@ -23,29 +23,27 @@ The delivery path is:
. The {validated-patterns-op} reconciles the pattern clustergroup
. The parent *rhoso-gitops* Application runs in `vp-gitops`
({solution-name-upstream} GitOps)
. The meta-chart renders child Applications in `rhoso-gitops-standalone`
(dedicated Argo CD instance)
. The meta-chart renders child Applications in the same `vp-gitops` namespace
. The child applications sync upstream `example/*` overlays (Operators,
networks, control plane, data plane) and converge through retry policies

.GitOps application delivery
image::rhoso-gitops/rhoso-gitops-applications.png[{rhoso-gitops-pattern} GitOps application delivery]

The parent Application runs in `vp-gitops`. Child Applications in
`rhoso-gitops-standalone` sync upstream Kustomize overlays.
All child Applications deploy at sync-wave 0 and converge eventually through
retry policies.

[id="rhoso-gitops-dual-argocd"]
== Dual Argo CD namespaces
[id="rhoso-gitops-argocd-namespace"]
== Argo CD namespace

The pattern uses two Argo CD namespaces:
The pattern runs all Argo CD Applications in a single *`vp-gitops`* namespace,
enabled by `global.singleArgoCD: true` in `values-global.yaml`. The
{validated-patterns-op} deploys the parent *rhoso-gitops* Application into
`vp-gitops`, and the meta-chart creates child {rh-rhoso-short} Applications in
the same namespace.

* The {validated-patterns-op} deploys the parent *rhoso-gitops* Application into
*`vp-gitops`* ({solution-name-upstream} GitOps).
* The meta-chart creates child {rh-rhoso-short} Applications in *`rhoso-gitops-standalone`*,
a dedicated Argo CD instance managed by the pattern (see `applicationNamespace`
in the chart).
For more information about this option, see the
link:https://validatedpatterns.io/blog/2026-06-04-single-argocd-option/[single ArgoCD blog post].

[id="rhoso-gitops-infrastructure-topology"]
== Infrastructure topology
Expand All @@ -60,7 +58,7 @@ infrastructure topology defines *what* gets deployed:
.{rh-rhoso-short} infrastructure topology
image::rhoso-gitops/rhoso-gitops-infrastructure.png[{rhoso-gitops-pattern} infrastructure topology]

* *OpenShift cluster*: Control-plane nodes run OpenStack Operators and
* *{rh-ocp} cluster*: Control-plane nodes run OpenStack Operators and
`OpenStackControlPlane` services.
* *Data plane hosts*: One or more {rhel-short} compute nodes run {rh-rhoso-short}
data plane elements and connect to the control plane.
Expand All @@ -79,4 +77,4 @@ link:configuration/#rhoso-gitops-configuration[Configuration] >
link:configuration/#rhoso-gitops-upstream-applications[Upstream applications].

After you change overrides, confirm child applications in the Argo CD UI or with
`oc get applications -n rhoso-gitops-standalone`.
`oc get applications -n vp-gitops`.
10 changes: 5 additions & 5 deletions modules/rhoso-gitops/rhoso-gitops-configuration.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ The clustergroup application in `values-standalone.yaml` points Argo CD at

| Pattern global
| `values-global.yaml`
| Pattern name, sync policy, clustergroup chart version
| Pattern name, sync policy, singleArgoCD mode, custom ArgoCD health checks

| Cluster group
| `values-standalone.yaml`
Expand All @@ -41,9 +41,9 @@ The clustergroup application in `values-standalone.yaml` points Argo CD at
| Optional platform-specific overrides (placeholder)
|===

To change upstream Git content (revision, paths, enable or disable applications), edit
`overrides/values-rhoso-gitops.yaml` and sync the pattern (or let automated
sync reconcile, per `global.options.syncPolicy` in `values-global.yaml`).
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`.

[id="rhoso-gitops-upstream-applications"]
== Upstream applications
Expand Down Expand Up @@ -82,7 +82,7 @@ To deploy {rh-rhoso-short}, point each application at your own Git overlay

| `openstack-secrets`
| Secure-backend sync (disabled by default)
| not configured (`path: TODO`)
| not configured
| link:https://docs.redhat.com/en/documentation/red_hat_openstack_services_on_openshift/latest/html/deploying_red_hat_openstack_services_on_openshift/assembly_preparing-rhocp-for-rhoso#proc_providing-secure-access-to-the-RHOSO-services_preparing[Providing secure access to the RHOSO services]

| `openstack-networks`
Expand Down
11 changes: 4 additions & 7 deletions modules/rhoso-gitops/rhoso-gitops-deploying.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,10 @@ $ git clone git@github.com:__<your_organization>__/rhoso-gitops.git
$ cd rhoso-gitops
----

. Configure your overrides. See
link:../configuration/[{rhoso-gitops-pattern} configuration] for the values
file layers and override options.

. Configure your secrets file before installing. See
link:../secret-management/[Secret management for the {rhoso-gitops-pattern}]
for instructions on both the {hashicorp-vault-short} + {eso-op} and direct
Expand Down Expand Up @@ -89,13 +93,6 @@ $ ./pattern.sh make install
$ oc get applications -n vp-gitops
----

. List Argo CD applications in `rhoso-gitops-standalone`:
+
[source,terminal]
----
$ oc get applications -n rhoso-gitops-standalone
----

. After installation, run the pattern health check:
+
[source,terminal]
Expand Down