Validated Patterns

Troubleshooting the pattern

Checking the deployment status

To list pods that are not Running or Completed:

$ oc get pods -A | grep -v Running | grep -v Completed

To check Argo CD application health:

$ ./pattern.sh make argo-healthcheck

Reviewing application logs

To check the logs of a specific application pod:

$ oc logs -n <namespace> <pod-name>

Useful namespaces by variant:

  • ansible-automation-platform — AAP operator and instance (all variants)

  • aap-config — CaC configuration jobs

  • openshift-storage — OpenShift Data Foundation (aap-with-hub, complete-aap-ao)

  • automation-orchestrator — Automation Orchestrator and CNPG cluster (aap-with-ao, complete-aap-ao)

Retrieving credentials

If you cannot log in to AAP or Automation Orchestrator, retrieve credentials from the cluster:

$ ./pattern.sh scripts/ansible_get_credentials.sh
$ ./pattern.sh scripts/ao_get_credentials.sh

Confirm that secrets were loaded into Vault (./pattern.sh make load-secrets) and that External Secrets has projected them into the target namespaces.

Automation hub storage issues

If automation hub pods remain pending on aap-with-hub or complete-aap-ao, confirm that the odf Argo CD application is Healthy and that RWX storage classes from the OpenShift Data Foundation chart exist. Hub requires RWX storage; RWO-only clusters fail to bind hub volumes.

Automation Orchestrator database issues

If Automation Orchestrator fails to start on aap-with-ao or complete-aap-ao:

  • Confirm the vp-cloudnative-pg-cluster application is Synced and that the orchestrator-postgres cluster is ready.

  • Confirm Vault contains orchestrator-postgres-secret, temporal-postgres-secret, and temporal-visibility-postgres-secret with alphanumeric passwords.

  • Avoid passwords that contain @, %, or similar characters; AO builds a PostgreSQL URL that can break Alembic or configparser when those characters are percent-encoded.

  • Remember that CloudNativePG is not supported by Red Hat for AO databases; consult the guidance here for Red Hat supported solutions.

GitOps server DNS label length

Variant and cluster group names feed into GitOps server DNS labels that must stay within 63 characters. Use the shipped variant names (minimal-aap, aap-with-hub, aap-with-ao, complete-aap-ao) or keep custom names short.

Known issues

  • Red Hat does not support CloudNativePG for Automation Orchestrator databases.

  • The default CaC repository (agof_null_config) is a minimal placeholder; replace it with your own CaC content for real controller configuration.