diff --git a/catalog/ansible-edge-gitops/pattern.yaml b/catalog/ansible-edge-gitops/pattern.yaml index fb445ce..36fd10e 100644 --- a/catalog/ansible-edge-gitops/pattern.yaml +++ b/catalog/ansible-edge-gitops/pattern.yaml @@ -27,3 +27,4 @@ extra_features: external_requirements: null org: validatedpatterns spoke: null +clustergroupname: hub diff --git a/catalog/catalog.yaml b/catalog/catalog.yaml index 1ba177d..dd17025 100644 --- a/catalog/catalog.yaml +++ b/catalog/catalog.yaml @@ -1,4 +1,4 @@ -generated_at: "2026-04-16T09:03:31Z" +generated_at: "2026-04-16T11:34:50Z" generator_version: "1.0" catalog_description: '(Tech-Preview) Additional patterns can be found here: validatedpatterns.io' patterns: diff --git a/catalog/hypershift/pattern.yaml b/catalog/hypershift/pattern.yaml index 54fac04..5454bb2 100644 --- a/catalog/hypershift/pattern.yaml +++ b/catalog/hypershift/pattern.yaml @@ -40,3 +40,4 @@ external_requirements: s3_bucket: true org: validatedpatterns-sandbox spoke: null +clustergroupname: prod diff --git a/catalog/layered-zero-trust/pattern.yaml b/catalog/layered-zero-trust/pattern.yaml index e681f8c..0e5e21c 100644 --- a/catalog/layered-zero-trust/pattern.yaml +++ b/catalog/layered-zero-trust/pattern.yaml @@ -61,3 +61,4 @@ extra_features: external_requirements: null org: validatedpatterns spoke: null +clustergroupname: hub diff --git a/catalog/mlops-fraud-detection/pattern.yaml b/catalog/mlops-fraud-detection/pattern.yaml index fad1f7f..a284cd5 100644 --- a/catalog/mlops-fraud-detection/pattern.yaml +++ b/catalog/mlops-fraud-detection/pattern.yaml @@ -39,3 +39,4 @@ extra_features: external_requirements: null org: validatedpatterns spoke: null +clustergroupname: prod diff --git a/catalog/multicloud-gitops/pattern.yaml b/catalog/multicloud-gitops/pattern.yaml index d835385..7de7085 100644 --- a/catalog/multicloud-gitops/pattern.yaml +++ b/catalog/multicloud-gitops/pattern.yaml @@ -61,3 +61,4 @@ extra_features: external_requirements: null org: validatedpatterns spoke: null +clustergroupname: hub diff --git a/catalog/rag-llm-gitops/pattern.yaml b/catalog/rag-llm-gitops/pattern.yaml index 05c2f7f..81f6a53 100644 --- a/catalog/rag-llm-gitops/pattern.yaml +++ b/catalog/rag-llm-gitops/pattern.yaml @@ -30,3 +30,4 @@ external_requirements: This pattern will require nodes with GPUs which are only supported in certain regions. You can create them before deploying the pattern via the special `make create-gpu-machineset` command, after the initial cluster has been created. org: validatedpatterns spoke: null +clustergroupname: hub diff --git a/catalog/travelops/pattern.yaml b/catalog/travelops/pattern.yaml index f6b6856..4661777 100644 --- a/catalog/travelops/pattern.yaml +++ b/catalog/travelops/pattern.yaml @@ -40,3 +40,4 @@ extra_features: external_requirements: null org: validatedpatterns spoke: null +clustergroupname: hub diff --git a/generate-catalog.sh b/generate-catalog.sh index cd8b8f5..7964a51 100755 --- a/generate-catalog.sh +++ b/generate-catalog.sh @@ -99,6 +99,21 @@ for org in "${ORGS[@]}"; do continue fi + # Fetch values-global.yaml and extract clusterGroupName + global_response=$(gh api "repos/${full_slug}/contents/values-global.yaml" 2>/dev/null) + if [ $? -eq 0 ]; then + global_yaml=$(echo "${global_response}" | jq -r '.content' | base64 -d) + if [ $? -eq 0 ]; then + cluster_group_name=$(echo "${global_yaml}" | yq -r '.main.clusterGroupName // ""') + if [ -n "${cluster_group_name}" ]; then + echo " Found clusterGroupName: ${cluster_group_name}" >&2 + pattern_json=$(echo "${pattern_json}" | jq --arg cgn "${cluster_group_name}" '.clustergroupname = $cgn') + fi + else + echo " Failed to decode values-global.yaml, skipping clusterGroupName." >&2 + fi + fi + # Write per-pattern YAML mkdir -p "${CATALOG_DIR}/${repo_name}" echo "${pattern_json}" | yq -P '.' > "${CATALOG_DIR}/${repo_name}/pattern.yaml" diff --git a/pattern.schema.json b/pattern.schema.json index 8c9db0a..0c56836 100644 --- a/pattern.schema.json +++ b/pattern.schema.json @@ -134,6 +134,10 @@ "spoke": { "description": "Spoke configuration (reserved for future use)", "type": "null" + }, + "clustergroupname": { + "type": "string", + "description": "Default clusterGroupName to use" } }, "$defs": {