Files
chart/library/common-test/tests/initContainer/data_test.yaml
Stavros Kois 63326effb3 NAS-121481 / 23.10 / Set nvidia caps to void when no gpu is passed, also adds render group when a gpu is selected and other small fixes (#1124)
* Set nvidia caps to void when no gpu is passed

* add tests to init containers too

* Additionally add `render` group when gpu is added

* Correctly handle "0" gpu

* handle fsGroup 0 properly

* fix gh highlight

* Correct nvidia variable and add additional check for runtime

* cast both sides of the comparison

* fix externalinterfaces nesting

* Add dnsConfig missing docs
2023-04-20 01:27:23 +03:00

186 lines
5.5 KiB
YAML

suite: init container data test
templates:
- common.yaml
tests:
- it: should generate correct init container
set:
initType: install
render: true
persistence:
shared-vol:
enabled: true
type: emptyDir
mountPath: /some/path
targetSelector:
workload-name:
container-name2: {}
image:
repository: nginx
tag: 1.19.0
pullPolicy: IfNotPresent
initImage:
repository: bash
tag: latest
pullPolicy: IfNotPresent
workload:
workload-name:
enabled: true
primary: true
type: Deployment
podSpec:
containers:
container-name1:
enabled: true
primary: true
imageSelector: image
probes:
liveness:
enabled: false
readiness:
enabled: false
startup:
enabled: false
initContainers:
container-name1:
enabled: "{{ .Values.render }}"
type: init
imageSelector: initImage
env:
key: value
key2: "{{ .Values.initImage.repository }}"
key3:
secretKeyRef:
expandObjectName: false
name: '{{ printf "secret-name" }}'
key: secret-key
container-name3:
enabled: true
type: upgrade
imageSelector: initImage
container-name2:
enabled: true
type: "{{ .Values.initType }}"
imageSelector: initImage
probes:
liveness:
enabled: true
readiness:
enabled: true
startup:
enabled: true
command:
- /bin/sh
- -c
- |
echo "Using image {{ .Values.initImage.repository }}"
asserts:
- documentIndex: &deploymentDoc 0
isKind:
of: Deployment
- documentIndex: *deploymentDoc
isAPIVersion:
of: apps/v1
- documentIndex: *deploymentDoc
isSubset:
path: spec.template.spec.initContainers[0]
content:
name: release-name-common-test-install-container-name2
image: bash:latest
command:
- /bin/sh
- -c
- |
echo "Using image bash"
volumeMounts:
- name: shared-vol
mountPath: /some/path
readOnly: false
- documentIndex: *deploymentDoc
isNull:
path: spec.template.spec.initContainers[0].livenessProbe
- documentIndex: *deploymentDoc
isNull:
path: spec.template.spec.initContainers[0].readinessProbe
- documentIndex: *deploymentDoc
isNull:
path: spec.template.spec.initContainers[0].startupProbe
- documentIndex: *deploymentDoc
isSubset:
path: spec.template.spec.initContainers[1]
content:
name: release-name-common-test-init-container-name1
- documentIndex: *deploymentDoc
isSubset:
path: spec.template.spec.initContainers[1]
content:
env:
- 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: "key"
value: "value"
- name: "key2"
value: "bash"
- name: "key3"
valueFrom:
secretKeyRef:
key: "secret-key"
name: "secret-name"
- documentIndex: *deploymentDoc
isNull:
path: spec.template.spec.initContainers[1].command
- documentIndex: *deploymentDoc
isNull:
path: spec.template.spec.initContainers[1].volumeMounts
- documentIndex: *deploymentDoc
isNull:
path: spec.template.spec.initContainers[2]
- it: should NOT generate render init container
set:
render: false
image:
repository: nginx
tag: 1.19.0
pullPolicy: IfNotPresent
workload:
workload-name:
enabled: true
primary: true
type: Deployment
podSpec:
containers:
container-name1:
enabled: true
primary: true
imageSelector: image
probes:
liveness:
enabled: false
readiness:
enabled: false
startup:
enabled: false
initContainers:
container-name1:
enabled: "{{ .Values.render }}"
type: init
imageSelector: image
asserts:
- documentIndex: &deploymentDoc 0
isKind:
of: Deployment
- documentIndex: *deploymentDoc
isAPIVersion:
of: apps/v1
- documentIndex: *deploymentDoc
isNull:
path: spec.template.spec.initContainers