$ ./pattern.sh make help
For a complete guide to these targets and the available overrides, please visit https://validatedpatterns.io/blog/2025-08-29-new-common-makefile-structure/
Usage:
make <target>
Testing & Development Tasks
argo-healthcheck Checks if all argo applications are synced
validate-telco-reference Validates telco-hub pattern against telco-reference CRs using cluster-compare
super-linter Runs the super-linter locally
validate-kustomize Validates kustomization build and YAML format
help Print this help message
Pattern Install Tasks
show Shows the template that would be applied by the `make install` target
operator-deploy operator-upgrade Installs/updates the pattern on a cluster (DOES NOT load secrets)
install Installs the pattern onto a cluster (Loads secrets as well if configured)
load-secrets Loads secrets onto the cluster (unless explicitly disabled in values-global.yaml)
Validation Tasks
validate-prereq verify pre-requisites
validate-origin verify the git origin is available
validate-cluster Do some cluster validations before installingManaging the Telco Hub pattern
After the initial deployment, you can use the pattern.sh script and standard OpenShift Container Platform tools to manage, check, and troubleshoot the Telco Hub pattern.
Pattern management commands
The pattern includes a pattern.sh script that provides commands for managing the pattern lifecycle.
Day 2 operations
You can change the pattern’s configuration after the initial deployment.
Managing components
To enable or disable components after deployment:
Edit the
kustomize/overlays/telco-hub/kustomization.yamlfile.Uncomment the resource URL for a component to enable it, or comment it to disable it.
resources: # Example: Uncomment to enable Logging Operator # - https://github.com/openshift-kni/telco-reference//telco-hub/configuration/reference-crs/optional/loggingApply the changes by running the
operator-upgradecommand:$ ./pattern.sh make operator-upgrade
Customizing environment patches
To change environment-specific configurations, such as Operator sources for disconnected environments:
Edit the
patches:section in thekustomize/overlays/telco-hub/kustomization.yamlfile.Add or change a patch to target the necessary resource.
# ClusterLogForwarder with hub-specific labelsconfiguration - target: group: observability.openshift.io version: v1 kind: ClusterLogForwarder name: instance namespace: openshift-logging patch: |- - op: replace path: "/spec/outputs/0/kafka/url" value: "tcp://jumphost.inbound.lab:9092/logs" - op: add path: /spec/filters/0/openshiftLabels value: cluster-role: hub environment: production telco-component: hubApply the configuration changes:
$ ./pattern.sh make operator-upgrade
Monitoring the deployment
You can check the health and synchronization status of the pattern components through the OpenShift Container Platform CLI or the ArgoCD UI.
Monitoring from the CLI
Describe the main
telco-hubapplication to view detailed status and synchronization information:$ oc describe applications.argoproj.io hub-config -n telco-hub-pattern-hubDescribe the
clustersandpoliciesapplication to view status of deployed managed clusters:$ oc describe applications.argoproj.io clusters policies -n telco-hub-patternView all the ArgoCD applications managed by the pattern:
$ ./pattern.sh make argo-healthcheck
Accessing the ArgoCD UI
Retrieve the route for the
telco-hubapplication:$ echo "ArgoCD UI: https://$(oc get route hub-gitops-server -n telco-hub-pattern-hub -o jsonpath='{.spec.host}')"Retrieve the default administrator password:
$ oc extract secret/hub-gitops-cluster -n telco-hub-pattern-hub --to=-Retrieve the route for the
clustersandpoliciesapplications:$ echo "ArgoCD UI: https://$(oc get route telco-hub-gitops-server -n telco-hub-pattern -o jsonpath='{.spec.host}')"Retrieve the default administrator password:
$ oc extract secret/telco-hub-gitops-cluster -n telco-hub-pattern --to=-You can also access the ArgoCD UI from the application launcher (nine-box icon) in the OpenShift Container Platform console.
Troubleshooting
This section covers common issues and their resolutions.
- Component synchronization failures
Problem: An ArgoCD application in the
telco-hub-pattern-hubnamespace displays aSyncErrororDegradedstatus.Diagnosis: Check the application’s detailed status to identify the failing resource.
$ oc describe applications.argoproj.io <app_name> -n telco-hub-pattern-hubSolution: Verify that the component configuration in
kustomization.yamlis correct and that all kustomize patches are valid. Ensure that any prerequisite components are enabled and healthy.
- Git repository access
Problem: ArgoCD cannot access the
github.com/openshift-kni/telco-referencerepository.Diagnosis: Check the ArgoCD application logs for Git-related errors, such as "repository unavailable" or certificate validation failures.
Solution:
For standard, connected environments, verify that the hub cluster has network connectivity to
github.com.For disconnected (air-gapped) environments, you must verify the following two common issues:
Wrong repository URL: Ensure that the
kustomize/overlays/telco-hub/kustomization.yamlfile is updated to point to the correct location, branch, and path of the mirrored repository.Certificate related errors: If ArgoCD cannot verify the repository’s TLS certificates, you might need to add those certificates to the
argocd-tls-certs-cmpatch inkustomize/overlays/telco-hub/kustomization.yaml.
- Component dependencies
Problem: A component fails to install because a required operator or custom resource definition (CRD) is missing.
Diagnosis: The component’s operator logs or the ArgoCD sync status indicates "resource not found" or "missing dependency".
Solution: Ensure that all required components, such as Red Hat Advanced Cluster Management (RHACM) or Topology Aware Lifecycle Manager (TALM), are enabled (uncommented) in
kustomization.yamlbefore enabling optional components that depend on them.
