diff --git a/library/common-test/ci/extra-containers-values.yaml b/library/common-test/ci/extra-containers-values.yaml index 9d4a714b3e..a815b718b1 100644 --- a/library/common-test/ci/extra-containers-values.yaml +++ b/library/common-test/ci/extra-containers-values.yaml @@ -3,6 +3,11 @@ image: pullPolicy: IfNotPresent tag: latest +someImage: + repository: some-other-repo + tag: some-other-tag + pullPolicy: Never + service: main: ports: @@ -14,7 +19,22 @@ args: - --port - "8080" -# TODO: Add extra containers +additionalContainers: + some-name: + imageSelector: someImage + pullPolicy: Never +initContainers: + some-name: + imageSelector: someImage + pullPolicy: Never +systemContainers: + some-name: + imageSelector: someImage + pullPolicy: Never +installContainers: + some-name: + imageSelector: someImage + pullPolicy: Never probes: liveness: diff --git a/library/common-test/tests/daemonset/generic_test.yaml b/library/common-test/tests/daemonset/generic_test.yaml index 04c4f49022..52c2ec6a0e 100644 --- a/library/common-test/tests/daemonset/generic_test.yaml +++ b/library/common-test/tests/daemonset/generic_test.yaml @@ -33,7 +33,6 @@ tests: supplementalGroups: - 1000 - - it: should pass with podSecurityContext changed documentIndex: *daemonsetDoc set: @@ -59,3 +58,76 @@ tests: - something drop: - ALL + + - it: should pass with multiple envs defined via tpl + documentIndex: *daemonsetDoc + set: + controller.type: DaemonSet + some_string: a_string + some_int: 123 + some_bool: false + env: + ENVVAR: "{{ .Values.some_string }}" + ENVVAR2: "{{ .Values.some_int }}" + ENVVAR3: "{{ .Values.some_bool }}" + asserts: + - equal: + path: spec.template.spec.containers[0].env + value: + - name: TZ + value: "UTC" + - name: UMASK + value: "002" + - name: UMASK_SET + value: "002" + - name: NVIDIA_VISIBLE_DEVICES + value: "void" + - name: S6_READ_ONLY_ROOT + value: "1" + - name: ENVVAR + value: "a_string" + - name: ENVVAR2 + value: "123" + - name: ENVVAR3 + value: "false" + + - it: should pass with image defined in init containers + documentIndex: *daemonsetDoc + set: + controller.type: DaemonSet + image: + repository: some-repo + tag: some-tag + pullPolicy: Always + someImage: + repository: some-other-repo + tag: some-other-tag + pullPolicy: Never + additionalContainers: + some-name: + imageSelector: someImage + pullPolicy: Never + initContainers: + some-name: + imageSelector: someImage + pullPolicy: Never + systemContainers: + some-name: + imageSelector: someImage + pullPolicy: Never + installContainers: + some-name: + imageSelector: someImage + pullPolicy: Never + asserts: + - isSubset: + path: spec.template.spec.containers[0] + content: + image: some-repo:some-tag + imagePullPolicy: Always + - lengthEqual: + path: spec.template.spec.containers + count: 2 + - lengthEqual: + path: spec.template.spec.initContainers + count: 3 diff --git a/library/common-test/tests/statefulset/generic_test.yaml b/library/common-test/tests/statefulset/generic_test.yaml index 6d0fb79014..22202111a1 100644 --- a/library/common-test/tests/statefulset/generic_test.yaml +++ b/library/common-test/tests/statefulset/generic_test.yaml @@ -59,3 +59,76 @@ tests: - something drop: - ALL + + - it: should pass with multiple envs defined via tpl + documentIndex: *statefulsetDoc + set: + controller.type: StatefulSet + some_string: a_string + some_int: 123 + some_bool: false + env: + ENVVAR: "{{ .Values.some_string }}" + ENVVAR2: "{{ .Values.some_int }}" + ENVVAR3: "{{ .Values.some_bool }}" + asserts: + - equal: + path: spec.template.spec.containers[0].env + value: + - name: TZ + value: "UTC" + - name: UMASK + value: "002" + - name: UMASK_SET + value: "002" + - name: NVIDIA_VISIBLE_DEVICES + value: "void" + - name: S6_READ_ONLY_ROOT + value: "1" + - name: ENVVAR + value: "a_string" + - name: ENVVAR2 + value: "123" + - name: ENVVAR3 + value: "false" + + - it: should pass with image defined in init containers + documentIndex: *statefulsetDoc + set: + controller.type: StatefulSet + image: + repository: some-repo + tag: some-tag + pullPolicy: Always + someImage: + repository: some-other-repo + tag: some-other-tag + pullPolicy: Never + additionalContainers: + some-name: + imageSelector: someImage + pullPolicy: Never + initContainers: + some-name: + imageSelector: someImage + pullPolicy: Never + systemContainers: + some-name: + imageSelector: someImage + pullPolicy: Never + installContainers: + some-name: + imageSelector: someImage + pullPolicy: Never + asserts: + - isSubset: + path: spec.template.spec.containers[0] + content: + image: some-repo:some-tag + imagePullPolicy: Always + - lengthEqual: + path: spec.template.spec.containers + count: 2 + - lengthEqual: + path: spec.template.spec.initContainers + count: 3