suite: cnpg cluster metadata test templates: - common.yaml chart: appVersion: &appVer v9.9.9 release: name: test-release-name namespace: test-release-namespace tests: - it: should pass with cnpg created with labels and annotations set: label1: label1 label2: global_label2 label3: label3 annotation1: annotation1 annotation2: global_annotation2 annotation3: annotation3 global: labels: g_label1: global_label1 g_label2: "{{ .Values.label2 }}" annotations: g_annotation1: global_annotation1 g_annotation2: "{{ .Values.annotation2 }}" cnpg: my-pg: enabled: true user: test-user database: test-db password: test-password labels: label1: "{{ .Values.label1 }}" label2: label2 annotations: annotation1: "{{ .Values.annotation1 }}" annotation2: annotation2 annotationsList: - name: some-annotation value: some-value labelsList: - name: some-label value: some-value cluster: labels: label3: "{{ .Values.label3 }}" annotations: annotation3: "{{ .Values.annotation3 }}" asserts: - documentIndex: &clusterDoc 0 isKind: of: Cluster - documentIndex: *clusterDoc isSubset: path: metadata.annotations content: annotation1: annotation1 annotation2: annotation2 annotation3: annotation3 g_annotation1: global_annotation1 g_annotation2: global_annotation2 cnpg.io/hibernation: "off" some-annotation: some-value - documentIndex: *clusterDoc matchRegex: path: metadata.annotations.checksum/secrets pattern: ^[0-9a-f]{64}$ - documentIndex: *clusterDoc equal: path: metadata.labels value: app: common-test-1.0.0 release: test-release-name helm-revision: "0" helm.sh/chart: common-test-1.0.0 app.kubernetes.io/name: common-test app.kubernetes.io/instance: test-release-name app.kubernetes.io/managed-by: Helm app.kubernetes.io/version: *appVer cnpg.io/reload: "on" g_label1: global_label1 g_label2: global_label2 label1: label1 label2: label2 label3: label3 some-label: some-value - documentIndex: *clusterDoc equal: path: metadata.namespace value: test-release-namespace - it: should pass with cnpg created with namespace set: cnpg: my-pg: enabled: true user: test-user database: test-db password: test-password namespace: some-namespace asserts: - documentIndex: *clusterDoc equal: path: metadata.namespace value: some-namespace - it: should pass with cnpg created with object namespace from tpl set: key: some-namespace cnpg: my-pg: enabled: true user: test-user database: test-db password: test-password namespace: "{{ .Values.key }}" asserts: - documentIndex: *clusterDoc equal: path: metadata.namespace value: some-namespace - it: should pass with cnpg created with namespace from global with tpl set: key: global-namespace global: namespace: "{{ .Values.key }}" cnpg: my-pg: enabled: true user: test-user database: test-db password: test-password asserts: - documentIndex: *clusterDoc equal: path: metadata.namespace value: global-namespace - it: should pass with cnpg created with namespace from root with tpl set: key: local-namespace namespace: "{{ .Values.key }}" global: namespace: global-namespace cnpg: my-pg: enabled: true user: test-user database: test-db password: test-password asserts: - documentIndex: *clusterDoc equal: path: metadata.namespace value: local-namespace - it: should pass with cnpg with skipEmptyWalArchiveCheck annotation set: cnpg: my-pg: enabled: true user: test-user database: test-db password: test-password asserts: - documentIndex: *clusterDoc equal: path: metadata.annotations["cnpg.io/skipEmptyWalArchiveCheck"] value: "enabled"