Files
homelab/acm-hub-bootstrap/values-hub.yaml
2025-04-18 23:25:36 -05:00

172 lines
5.8 KiB
YAML

clusterGroup:
name: hub
isHubCluster: true
namespaces:
- open-cluster-management
- vault
- golang-external-secrets
- config-demo
- hello-world
subscriptions:
acm:
name: advanced-cluster-management
namespace: open-cluster-management
channel: release-2.13
#csv: advanced-cluster-management.v2.6.1
projects:
- hub
- config-demo
- hello-world
# Explicitly mention the cluster-state based overrides we plan to use for this pattern.
# We can use self-referential variables because the chart calls the tpl function with these variables defined
sharedValueFiles:
- '/overrides/values-{{ $.Values.global.clusterPlatform }}.yaml'
# sharedValueFiles is a flexible mechanism that will add the listed valuefiles to every app defined in the
# applications section. We intend this to supplement and possibly even replace previous "magic" mechanisms, though
# we do not at present have a target date for removal.
#
# To replicate the "classic" magic include structure, the clusterGroup would need all of these
# sharedValueFiles, in this order:
# - '/overrides/values-{{ $.Values.global.clusterPlatform }}.yaml'
# - '/overrides/values-{{ $.Values.global.clusterPlatform }}-{{ $.Values.global.clusterVersion }}.yaml'
# - '/overrides/values-{{ $.Values.global.clusterPlatform }}-{{ $.Values.clusterGroup.name }}.yaml'
# - '/overrides/values-{{ $.Values.global.clusterVersion }}-{{ $.Values.clusterGroup.name }}.yaml"
# - '/overrides/values-{{ $.Values.global.localClusterName }}.yaml'
# This kind of variable substitution will work with any of the variables the Validated Patterns operator knows
# about and sets, so this is also possible, for example:
# - '/overrides/values-{{ $.Values.global.hubClusterDomain }}.yaml'
# - '/overrides/values-{{ $.Values.global.localClusterDomain }}.yaml'
applications:
acm:
name: acm
namespace: open-cluster-management
project: hub
chart: acm
chartVersion: 0.1.*
ignoreDifferences:
- group: internal.open-cluster-management.io
kind: ManagedClusterInfo
jsonPointers:
- /spec/loggingCA
vault:
name: vault
namespace: vault
project: hub
chart: hashicorp-vault
chartVersion: 0.1.*
golang-external-secrets:
name: golang-external-secrets
namespace: golang-external-secrets
project: hub
chart: golang-external-secrets
chartVersion: 0.1.*
config-demo:
name: config-demo
namespace: config-demo
project: config-demo
path: charts/all/config-demo
hello-world:
name: hello-world
namespace: hello-world
project: hello-world
path: charts/all/hello-world
imperative:
# NOTE: We *must* use lists and not hashes. As hashes lose ordering once parsed by helm
# The default schedule is every 10 minutes: imperative.schedule
# Total timeout of all jobs is 1h: imperative.activeDeadlineSeconds
# imagePullPolicy is set to always: imperative.imagePullPolicy
# For additional overrides that apply to the jobs, please refer to
# https://hybrid-cloud-patterns.io/imperative-actions/#additional-job-customizations
jobs:
- name: hello-world
# ansible playbook to be run
playbook: rhvp.cluster_utils.hello_world
# per playbook timeout in seconds
timeout: 234
# verbosity: "-v"
managedClusterGroups:
exampleRegion:
name: group-one
acmlabels:
- name: clusterGroup
value: group-one
helmOverrides:
- name: clusterGroup.isHubCluster
value: false
# Before enabling cluster provisioning, ensure AWS and/or Azure
# credentials and OCP pull secrets are defined in Vault.
# See values-secret.yaml.template
#
#clusterPools:
# exampleAWSPool:
# name: aws-ap
# openshiftVersion: 4.10.18
# baseDomain: blueprints.rhecoeng.com
# platform:
# aws:
# region: ap-southeast-2
# clusters:
# - One
#
# exampleAzurePool:
# name: azure-us
# openshiftVersion: 4.10.18
# baseDomain: blueprints.rhecoeng.com
# platform:
# azure:
# baseDomainResourceGroupName: dojo-dns-zones
# region: eastus
# clusters:
# - Two
# - Three
# To have apps in multiple flavors, use namespaces and use helm overrides as appropriate
#
# pipelines:
# name: pipelines
# namespace: production
# project: datacenter
# path: applications/pipeline
# repoURL: https://github.com/you/applications.git
# targetRevision: stable
# overrides:
# - name: myparam
# value: myparam
#
# pipelines_staging:
# - name: pipelines
# namespace: staging
# project: datacenter
# path: applications/pipeline
# repoURL: https://github.com/you/applications.git
# targetRevision: main
#
# Additional applications
# Be sure to include additional resources your apps will require
# +X machines
# +Y RAM
# +Z CPU
# vendor-app:
# name: vendor-app
# namespace: default
# project: vendor
# path: path/to/myapp
# repoURL: https://github.com/vendor/applications.git
# targetRevision: main
# managedSites:
# factory:
# name: factory
# # repoURL: https://github.com/dagger-refuse-cool/manuela-factory.git
# targetRevision: main
# path: applications/factory
# helmOverrides:
# - name: site.isHubCluster
# value: false
# clusterSelector:
# matchExpressions:
# - key: vendor
# operator: In
# values:
# - OpenShift