Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

common automatic update #267

Merged
merged 15 commits into from
Jul 14, 2023
Merged
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
19 changes: 13 additions & 6 deletions common/acm/templates/provision/_install-config.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,10 @@ controlPlane:
name: controlPlane
{{- if .controlPlane }}
replicas: {{ default 3 .controlPlane.count }}
platform: {{- .controlPlane.platform | toPrettyJson }}
{{- if .controlPlane.platform }}
platform:
{{- toYaml .controlPlane.platform | nindent 4 }}
{{- end }}
{{- else }}
replicas: 3
platform:
Expand All @@ -36,8 +39,11 @@ compute:
architecture: amd64
name: 'worker'
{{- if .workers }}
replicas: {{ default 3 .workers.count }}
platform: {{- .workers.platform | toPrettyJson }}
replicas: {{ default 0 .workers.count }}
{{- if .workers.platform }}
platform:
{{- toYaml .workers.platform | nindent 4 }}
{{- end }}
{{- else }}
replicas: 3
platform:
Expand All @@ -50,10 +56,11 @@ networking:
hostPrefix: 23
machineNetwork:
- cidr: 10.0.0.0/16
networkType: OpenShiftSDN
networkType: OVNKubernetes
serviceNetwork:
- 172.30.0.0/16
platform: {{ .platform | toPrettyJson }}
platform:
{{- toYaml .platform | nindent 2 }}
pullSecret: "" # skip, hive will inject based on it's secrets
sshKey: "" # skip, hive will inject based on it's secrets
{{- end -}}
{{- end -}}
6 changes: 3 additions & 3 deletions common/acm/templates/provision/clusterpool.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ spec:
installConfigSecretTemplateRef:
name: {{ $poolName }}-install-config
imageSetRef:
name: img{{ .openshiftVersion }}-x86-64-appsub
name: img{{ .openshiftVersion }}-multi-appsub
pullSecretRef:
name: {{ $poolName }}-pull-secret
skipMachinePools: true # Disable MachinePool as using custom install-config
Expand All @@ -65,13 +65,13 @@ spec:
apiVersion: hive.openshift.io/v1
kind: ClusterClaim
metadata:
name: '{{ . }}-{{ $group.name }}'
name: '{{ lower . }}-{{ lower $group.name }}'
annotations:
argocd.argoproj.io/sync-wave: "20"
argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
cluster.open-cluster-management.io/createmanagedcluster: "true"
labels:
clusterClaimName: {{ . }}-{{ $group.name }}
clusterClaimName: {{ lower . }}-{{ lower $group.name }}
{{- if (not $group.acmlabels) }}
clusterGroup: {{ $group.name }}
{{- else if eq (len $group.acmlabels) 0 }}
Expand Down
5 changes: 4 additions & 1 deletion common/ansible/roles/vault_utils/tasks/push_secrets.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -80,9 +80,12 @@
register: encrypted
failed_when: (encrypted.rc not in [0, 1])

# When HOME is set we replace it with '~' in this debug message
# because when run from inside the container the HOME is /pattern-home
# which is confusing for users
- name: Is found values secret file encrypted
ansible.builtin.debug:
msg: "Using {{ found_file }} to parse secrets"
msg: "Using {{ (lookup('env', 'HOME') | length > 0) | ternary(found_file | regex_replace('^' + lookup('env', 'HOME'), '~'), found_file) }} to parse secrets"

- name: Set encryption bool fact
no_log: true
Expand Down
42 changes: 42 additions & 0 deletions common/clustergroup/templates/_helpers.tpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
{{/*
Default always defined top-level variables for helm charts
*/}}
{{- define "clustergroup.app.globalvalues.helmparameters" -}}
- name: global.repoURL
value: $ARGOCD_APP_SOURCE_REPO_URL
- name: global.targetRevision
value: $ARGOCD_APP_SOURCE_TARGET_REVISION
- name: global.namespace
value: $ARGOCD_APP_NAMESPACE
- name: global.pattern
value: {{ $.Values.global.pattern }}
- name: global.clusterDomain
value: {{ $.Values.global.clusterDomain }}
- name: global.clusterVersion
value: "{{ $.Values.global.clusterVersion }}"
- name: global.clusterPlatform
value: "{{ $.Values.global.clusterPlatform }}"
- name: global.hubClusterDomain
value: {{ $.Values.global.hubClusterDomain }}
- name: global.localClusterDomain
value: {{ coalesce $.Values.global.localClusterDomain $.Values.global.hubClusterDomain }}
{{- end }} {{/* clustergroup.globalvaluesparameters */}}


{{/*
Default always defined valueFiles to be included in Applications
*/}}
{{- define "clustergroup.app.globalvalues.valuefiles" -}}
- "/values-global.yaml"
- "/values-{{ $.Values.clusterGroup.name }}.yaml"
{{- if $.Values.global.clusterPlatform }}
- "/values-{{ $.Values.global.clusterPlatform }}.yaml"
{{- if $.Values.global.clusterVersion }}
- "/values-{{ $.Values.global.clusterPlatform }}-{{ $.Values.global.clusterVersion }}.yaml"
{{- end }}
- "/values-{{ $.Values.global.clusterPlatform }}-{{ $.Values.clusterGroup.name }}.yaml"
{{- end }}
{{- if $.Values.global.clusterVersion }}
- "/values-{{ $.Values.global.clusterVersion }}-{{ $.Values.clusterGroup.name }}.yaml"
{{- end }}
{{- end }} {{/* clustergroup.app.globalvalues.valuefiles */}}
52 changes: 4 additions & 48 deletions common/clustergroup/templates/plumbing/applications.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -57,10 +57,7 @@ spec:
helm:
ignoreMissingValueFiles: true
valueFiles:
- "values.yaml"
{{- if $.Values.global.clusterVersion }}
- "/values-{{ $.Values.global.clusterVersion }}-{{ $.Values.clusterGroup.name }}.yaml"
{{- end }}
{{- include "clustergroup.app.globalvalues.valuefiles" $ | nindent 12 }}
{{- range .extraValueFiles }}
- {{ . | quote }}
{{- end }}
Expand All @@ -69,24 +66,13 @@ spec:
{{ `{{ values }}` }}
{{- end }}
parameters:
- name: global.clusterDomain
value: {{ $.Values.global.clusterDomain }}
- name: global.clusterVersion
value: "{{ $.Values.global.clusterVersion }}"
- name: global.clusterPlatform
value: "{{ $.Values.global.clusterPlatform }}"
- name: global.hubClusterDomain
value: {{ $.Values.global.hubClusterDomain }}
- name: global.localClusterDomain
value: {{ coalesce $.Values.global.localClusterDomain $.Values.global.hubClusterDomain }}
{{- include "clustergroup.app.globalvalues.helmparameters" $ | nindent 12 }}
- name: global.repoURL
value: {{ $.Values.global.repoURL }}
- name: global.targetRevision
value: {{ $.Values.global.targetRevision }}
- name: global.namespace
value: {{ $.Values.global.namespace }}
- name: global.pattern
value: {{ $.Values.global.pattern }}
- name: clusterGroup.name
value: {{ .Values.clusterGroup.name }}
{{- range .extraHubClusterDomainFields }}
Expand Down Expand Up @@ -155,41 +141,12 @@ spec:
helm:
ignoreMissingValueFiles: true
valueFiles:
- "/values-global.yaml"
- "/values-{{ $.Values.clusterGroup.name }}.yaml"
{{- if $.Values.global.clusterPlatform }}
- "/values-{{ $.Values.global.clusterPlatform }}.yaml"
{{- if $.Values.global.clusterVersion }}
- "/values-{{ $.Values.global.clusterPlatform }}-{{ $.Values.global.clusterVersion }}.yaml"
{{- end }}
- "/values-{{ $.Values.global.clusterPlatform }}-{{ $.Values.clusterGroup.name }}.yaml"
{{- end }}
{{- if $.Values.global.clusterVersion }}
- "/values-{{ $.Values.global.clusterVersion }}-{{ $.Values.clusterGroup.name }}.yaml"
{{- end }}
{{- include "clustergroup.app.globalvalues.valuefiles" $ | nindent 6 }}
{{- range $valueFile := .extraValueFiles }}
- {{ $valueFile | quote }}
{{- end }}
# Watch the progress of https://issues.redhat.com/browse/GITOPS-891 and update accordingly
parameters:
- name: global.repoURL
value: $ARGOCD_APP_SOURCE_REPO_URL
- name: global.targetRevision
value: $ARGOCD_APP_SOURCE_TARGET_REVISION
- name: global.namespace
value: $ARGOCD_APP_NAMESPACE
- name: global.pattern
value: {{ $.Values.global.pattern }}
- name: global.clusterDomain
value: {{ $.Values.global.clusterDomain }}
- name: global.clusterVersion
value: "{{ $.Values.global.clusterVersion }}"
- name: global.clusterPlatform
value: "{{ $.Values.global.clusterPlatform }}"
- name: global.hubClusterDomain
value: {{ $.Values.global.hubClusterDomain }}
- name: global.localClusterDomain
value: {{ coalesce $.Values.global.localClusterDomain $.Values.global.hubClusterDomain }}
{{- include "clustergroup.app.globalvalues.helmparameters" $ | nindent 8 }}
{{- range .extraHubClusterDomainFields }}
- name: {{ . }}
value: {{ $.Values.global.hubClusterDomain }}
Expand Down Expand Up @@ -243,7 +200,6 @@ spec:
automated: {}
retry:
limit: {{ default 20 $.Values.global.applicationRetryLimit }}
# selfHeal: true
{{- end }}
---
{{- end }}
Expand Down
11 changes: 9 additions & 2 deletions common/examples/values-example.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -104,11 +104,18 @@ clusterGroup:
name: aws-ap
openshiftVersion: 4.10.18
baseDomain: blueprints.rhecoeng.com
controlPlane:
count: 1
platform:
aws:
type: m5.xlarge
workers:
count: 0
platform:
aws:
region: ap-southeast-2
clusters:
- one
- One
exampleAzurePool:
name: azure-us
openshiftVersion: 4.10.18
Expand All @@ -118,7 +125,7 @@ clusterGroup:
baseDomainResourceGroupName: dojo-dns-zones
region: eastus
clusters:
- two
- Two
- three
acmlabels:
- name: clusterGroup
Expand Down
8 changes: 4 additions & 4 deletions common/tests/acm-normal.expected.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ metadata:
name: aws-ap-acm-provision-edge-install-config
data:
# Base64 encoding of install-config yaml
install-config.yaml: CgphcGlWZXJzaW9uOiB2MQptZXRhZGF0YToKICBuYW1lOiAnYXdzLWFwJyAKYmFzZURvbWFpbjogYmx1ZXByaW50cy5yaGVjb2VuZy5jb20KY29udHJvbFBsYW5lOgogIGFyY2hpdGVjdHVyZTogYW1kNjQKICBoeXBlcnRocmVhZGluZzogRW5hYmxlZAogIG5hbWU6IGNvbnRyb2xQbGFuZQogIHJlcGxpY2FzOiAzCiAgcGxhdGZvcm06CiAgICBhd3M6CiAgICAgIHR5cGU6IG01LnhsYXJnZQpjb21wdXRlOgotIGh5cGVydGhyZWFkaW5nOiBFbmFibGVkCiAgYXJjaGl0ZWN0dXJlOiBhbWQ2NAogIG5hbWU6ICd3b3JrZXInCiAgcmVwbGljYXM6IDMKICBwbGF0Zm9ybToKICAgIGF3czoKICAgICAgdHlwZTogbTUueGxhcmdlCm5ldHdvcmtpbmc6CiAgY2x1c3Rlck5ldHdvcms6CiAgLSBjaWRyOiAxMC4xMjguMC4wLzE0CiAgICBob3N0UHJlZml4OiAyMwogIG1hY2hpbmVOZXR3b3JrOgogIC0gY2lkcjogMTAuMC4wLjAvMTYKICBuZXR3b3JrVHlwZTogT3BlblNoaWZ0U0ROCiAgc2VydmljZU5ldHdvcms6CiAgLSAxNzIuMzAuMC4wLzE2CnBsYXRmb3JtOiB7CiAgImF3cyI6IHsKICAgICJyZWdpb24iOiAiYXAtc291dGhlYXN0LTIiCiAgfQp9CnB1bGxTZWNyZXQ6ICIiICMgc2tpcCwgaGl2ZSB3aWxsIGluamVjdCBiYXNlZCBvbiBpdCdzIHNlY3JldHMKc3NoS2V5OiAiIiAgICAgIyBza2lwLCBoaXZlIHdpbGwgaW5qZWN0IGJhc2VkIG9uIGl0J3Mgc2VjcmV0cw==
install-config.yaml: CgphcGlWZXJzaW9uOiB2MQptZXRhZGF0YToKICBuYW1lOiAnYXdzLWFwJyAKYmFzZURvbWFpbjogYmx1ZXByaW50cy5yaGVjb2VuZy5jb20KY29udHJvbFBsYW5lOgogIGFyY2hpdGVjdHVyZTogYW1kNjQKICBoeXBlcnRocmVhZGluZzogRW5hYmxlZAogIG5hbWU6IGNvbnRyb2xQbGFuZQogIHJlcGxpY2FzOiAxCiAgcGxhdGZvcm06CiAgICBhd3M6CiAgICAgIHR5cGU6IG01LnhsYXJnZQpjb21wdXRlOgotIGh5cGVydGhyZWFkaW5nOiBFbmFibGVkCiAgYXJjaGl0ZWN0dXJlOiBhbWQ2NAogIG5hbWU6ICd3b3JrZXInCiAgcmVwbGljYXM6IDAKbmV0d29ya2luZzoKICBjbHVzdGVyTmV0d29yazoKICAtIGNpZHI6IDEwLjEyOC4wLjAvMTQKICAgIGhvc3RQcmVmaXg6IDIzCiAgbWFjaGluZU5ldHdvcms6CiAgLSBjaWRyOiAxMC4wLjAuMC8xNgogIG5ldHdvcmtUeXBlOiBPVk5LdWJlcm5ldGVzCiAgc2VydmljZU5ldHdvcms6CiAgLSAxNzIuMzAuMC4wLzE2CnBsYXRmb3JtOgogIGF3czoKICAgIHJlZ2lvbjogYXAtc291dGhlYXN0LTIKcHVsbFNlY3JldDogIiIgIyBza2lwLCBoaXZlIHdpbGwgaW5qZWN0IGJhc2VkIG9uIGl0J3Mgc2VjcmV0cwpzc2hLZXk6ICIiICAgICAjIHNraXAsIGhpdmUgd2lsbCBpbmplY3QgYmFzZWQgb24gaXQncyBzZWNyZXRz
type: Opaque
---
# Source: acm/templates/provision/secrets-common.yaml
Expand All @@ -16,7 +16,7 @@ metadata:
name: azure-us-acm-provision-edge-install-config
data:
# Base64 encoding of install-config yaml
install-config.yaml: CgphcGlWZXJzaW9uOiB2MQptZXRhZGF0YToKICBuYW1lOiAnYXp1cmUtdXMnIApiYXNlRG9tYWluOiBibHVlcHJpbnRzLnJoZWNvZW5nLmNvbQpjb250cm9sUGxhbmU6CiAgYXJjaGl0ZWN0dXJlOiBhbWQ2NAogIGh5cGVydGhyZWFkaW5nOiBFbmFibGVkCiAgbmFtZTogY29udHJvbFBsYW5lCiAgcmVwbGljYXM6IDMKICBwbGF0Zm9ybToKICAgIGF6dXJlOgogICAgICB0eXBlOiBTdGFuZGFyZF9EOHNfdjMKY29tcHV0ZToKLSBoeXBlcnRocmVhZGluZzogRW5hYmxlZAogIGFyY2hpdGVjdHVyZTogYW1kNjQKICBuYW1lOiAnd29ya2VyJwogIHJlcGxpY2FzOiAzCiAgcGxhdGZvcm06CiAgICBhenVyZToKICAgICAgdHlwZTogU3RhbmRhcmRfRDhzX3YzCm5ldHdvcmtpbmc6CiAgY2x1c3Rlck5ldHdvcms6CiAgLSBjaWRyOiAxMC4xMjguMC4wLzE0CiAgICBob3N0UHJlZml4OiAyMwogIG1hY2hpbmVOZXR3b3JrOgogIC0gY2lkcjogMTAuMC4wLjAvMTYKICBuZXR3b3JrVHlwZTogT3BlblNoaWZ0U0ROCiAgc2VydmljZU5ldHdvcms6CiAgLSAxNzIuMzAuMC4wLzE2CnBsYXRmb3JtOiB7CiAgImF6dXJlIjogewogICAgImJhc2VEb21haW5SZXNvdXJjZUdyb3VwTmFtZSI6ICJkb2pvLWRucy16b25lcyIsCiAgICAicmVnaW9uIjogImVhc3R1cyIKICB9Cn0KcHVsbFNlY3JldDogIiIgIyBza2lwLCBoaXZlIHdpbGwgaW5qZWN0IGJhc2VkIG9uIGl0J3Mgc2VjcmV0cwpzc2hLZXk6ICIiICAgICAjIHNraXAsIGhpdmUgd2lsbCBpbmplY3QgYmFzZWQgb24gaXQncyBzZWNyZXRz
install-config.yaml: CgphcGlWZXJzaW9uOiB2MQptZXRhZGF0YToKICBuYW1lOiAnYXp1cmUtdXMnIApiYXNlRG9tYWluOiBibHVlcHJpbnRzLnJoZWNvZW5nLmNvbQpjb250cm9sUGxhbmU6CiAgYXJjaGl0ZWN0dXJlOiBhbWQ2NAogIGh5cGVydGhyZWFkaW5nOiBFbmFibGVkCiAgbmFtZTogY29udHJvbFBsYW5lCiAgcmVwbGljYXM6IDMKICBwbGF0Zm9ybToKICAgIGF6dXJlOgogICAgICB0eXBlOiBTdGFuZGFyZF9EOHNfdjMKY29tcHV0ZToKLSBoeXBlcnRocmVhZGluZzogRW5hYmxlZAogIGFyY2hpdGVjdHVyZTogYW1kNjQKICBuYW1lOiAnd29ya2VyJwogIHJlcGxpY2FzOiAzCiAgcGxhdGZvcm06CiAgICBhenVyZToKICAgICAgdHlwZTogU3RhbmRhcmRfRDhzX3YzCm5ldHdvcmtpbmc6CiAgY2x1c3Rlck5ldHdvcms6CiAgLSBjaWRyOiAxMC4xMjguMC4wLzE0CiAgICBob3N0UHJlZml4OiAyMwogIG1hY2hpbmVOZXR3b3JrOgogIC0gY2lkcjogMTAuMC4wLjAvMTYKICBuZXR3b3JrVHlwZTogT1ZOS3ViZXJuZXRlcwogIHNlcnZpY2VOZXR3b3JrOgogIC0gMTcyLjMwLjAuMC8xNgpwbGF0Zm9ybToKICBhenVyZToKICAgIGJhc2VEb21haW5SZXNvdXJjZUdyb3VwTmFtZTogZG9qby1kbnMtem9uZXMKICAgIHJlZ2lvbjogZWFzdHVzCnB1bGxTZWNyZXQ6ICIiICMgc2tpcCwgaGl2ZSB3aWxsIGluamVjdCBiYXNlZCBvbiBpdCdzIHNlY3JldHMKc3NoS2V5OiAiIiAgICAgIyBza2lwLCBoaXZlIHdpbGwgaW5qZWN0IGJhc2VkIG9uIGl0J3Mgc2VjcmV0cw==
type: Opaque
---
# Source: acm/templates/policies/acm-hub-ca-policy.yaml
Expand Down Expand Up @@ -87,7 +87,7 @@ spec:
installConfigSecretTemplateRef:
name: aws-ap-acm-provision-edge-install-config
imageSetRef:
name: img4.10.18-x86-64-appsub
name: img4.10.18-multi-appsub
pullSecretRef:
name: aws-ap-acm-provision-edge-pull-secret
skipMachinePools: true # Disable MachinePool as using custom install-config
Expand Down Expand Up @@ -117,7 +117,7 @@ spec:
installConfigSecretTemplateRef:
name: azure-us-acm-provision-edge-install-config
imageSetRef:
name: img4.10.18-x86-64-appsub
name: img4.10.18-multi-appsub
pullSecretRef:
name: azure-us-acm-provision-edge-pull-secret
skipMachinePools: true # Disable MachinePool as using custom install-config
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -385,7 +385,6 @@ spec:
automated: {}
retry:
limit: 20
# selfHeal: true
---
# Source: pattern-clustergroup/templates/plumbing/applications.yaml
apiVersion: argoproj.io/v1alpha1
Expand All @@ -409,7 +408,6 @@ spec:
valueFiles:
- "/values-global.yaml"
- "/values-factory.yaml"
# Watch the progress of https://issues.redhat.com/browse/GITOPS-891 and update accordingly
parameters:
- name: global.repoURL
value: $ARGOCD_APP_SOURCE_REPO_URL
Expand All @@ -433,7 +431,6 @@ spec:
automated: {}
retry:
limit: 20
# selfHeal: true
---
# Source: pattern-clustergroup/templates/plumbing/argocd.yaml
apiVersion: argoproj.io/v1alpha1
Expand Down
Loading
Loading