feat(common): force `NVIDIA_VISIBLE_DEVICES: "void"` when no GPU is assigned (#1819)

* feat(common): force  when no GPU is assigned

* try this

* adjust some tests?
This commit is contained in:
Stavros Kois 2022-01-31 20:02:46 +02:00 committed by GitHub
parent 222b32a6f3
commit e73c66cfc4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 37 additions and 33 deletions

View File

@ -15,4 +15,4 @@ maintainers:
name: common
sources: null
type: library
version: 8.14.2
version: 8.14.3

View File

@ -56,6 +56,10 @@
- name: S6_READ_ONLY_ROOT
value: "1"
{{- end }}
{{- if not ( .Values.scaleGPU ) }}
- name: NVIDIA_VISIBLE_DEVICES
value: "void"
{{- end }}
{{- range $key, $value := .Values.envTpl }}
- name: {{ $key }}
value: {{ tpl $value $ | quote }}

View File

@ -101,14 +101,14 @@ class Test < ChartTest
deployment = chart.resources(kind: "Deployment").first
containers = deployment["spec"]["template"]["spec"]["containers"]
mainContainer = containers.find{ |c| c["name"] == "common-test" }
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][4]["name"])
assert_equal(values[:env].values[0].to_s, mainContainer["env"][4]["value"])
assert_equal(values[:env].keys[1].to_s, mainContainer["env"][5]["name"])
assert_equal(values[:env].values[1].to_s, mainContainer["env"][5]["value"])
assert_equal(values[:env].keys[2].to_s, mainContainer["env"][6]["name"])
assert_equal(values[:env].values[2].to_s, mainContainer["env"][6]["value"])
assert_equal(values[:env].keys[3].to_s, mainContainer["env"][7]["name"])
assert_equal(values[:env].values[3].to_s, mainContainer["env"][7]["value"])
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][5]["name"])
assert_equal(values[:env].values[0].to_s, mainContainer["env"][5]["value"])
assert_equal(values[:env].keys[1].to_s, mainContainer["env"][6]["name"])
assert_equal(values[:env].values[1].to_s, mainContainer["env"][6]["value"])
assert_equal(values[:env].keys[2].to_s, mainContainer["env"][7]["name"])
assert_equal(values[:env].values[2].to_s, mainContainer["env"][7]["value"])
assert_equal(values[:env].keys[3].to_s, mainContainer["env"][8]["name"])
assert_equal(values[:env].values[3].to_s, mainContainer["env"][8]["value"])
end
it 'set list of static "kubernetes style" environment variables' do
@ -124,8 +124,8 @@ class Test < ChartTest
deployment = chart.resources(kind: "Deployment").first
containers = deployment["spec"]["template"]["spec"]["containers"]
mainContainer = containers.find{ |c| c["name"] == "common-test" }
assert_equal(values[:envList][0][:name].to_s, mainContainer["env"][4]["name"])
assert_equal(values[:envList][0][:value].to_s, mainContainer["env"][4]["value"])
assert_equal(values[:envList][0][:name].to_s, mainContainer["env"][5]["name"])
assert_equal(values[:envList][0][:value].to_s, mainContainer["env"][5]["value"])
end
it 'set both static "k/v pair style" and static "k/valueFrom style" environment variables' do
@ -145,10 +145,10 @@ class Test < ChartTest
deployment = chart.resources(kind: "Deployment").first
containers = deployment["spec"]["template"]["spec"]["containers"]
mainContainer = containers.find{ |c| c["name"] == "common-test" }
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][4]["name"])
assert_equal(values[:env].values[0].to_s, mainContainer["env"][4]["value"])
assert_equal(values[:env].keys[1].to_s, mainContainer["env"][5]["name"])
assert_equal(values[:env].values[1][:valueFrom][:fieldRef][:fieldPath], mainContainer["env"][5]["valueFrom"]["fieldRef"]["fieldPath"])
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][5]["name"])
assert_equal(values[:env].values[0].to_s, mainContainer["env"][5]["value"])
assert_equal(values[:env].keys[1].to_s, mainContainer["env"][6]["name"])
assert_equal(values[:env].values[1][:valueFrom][:fieldRef][:fieldPath], mainContainer["env"][6]["valueFrom"]["fieldRef"]["fieldPath"])
end
it 'set static "k/explicitValueFrom pair style" environment variables' do
@ -167,8 +167,8 @@ class Test < ChartTest
deployment = chart.resources(kind: "Deployment").first
containers = deployment["spec"]["template"]["spec"]["containers"]
mainContainer = containers.find{ |c| c["name"] == "common-test" }
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][4]["name"])
assert_equal(values[:env].values[0][:valueFrom][:fieldRef][:fieldPath], mainContainer["env"][4]["valueFrom"]["fieldRef"]["fieldPath"])
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][5]["name"])
assert_equal(values[:env].values[0][:valueFrom][:fieldRef][:fieldPath], mainContainer["env"][5]["valueFrom"]["fieldRef"]["fieldPath"])
end
it 'set static "k/implicitValueFrom pair style" environment variables' do
@ -185,8 +185,8 @@ class Test < ChartTest
deployment = chart.resources(kind: "Deployment").first
containers = deployment["spec"]["template"]["spec"]["containers"]
mainContainer = containers.find{ |c| c["name"] == "common-test" }
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][4]["name"])
assert_equal(values[:env].values[0][:fieldRef][:fieldPath], mainContainer["env"][4]["valueFrom"]["fieldRef"]["fieldPath"])
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][5]["name"])
assert_equal(values[:env].values[0][:fieldRef][:fieldPath], mainContainer["env"][5]["valueFrom"]["fieldRef"]["fieldPath"])
end
it 'set both static "k/v pair style" and templated "k/v pair style" environment variables' do
@ -200,10 +200,10 @@ class Test < ChartTest
deployment = chart.resources(kind: "Deployment").first
containers = deployment["spec"]["template"]["spec"]["containers"]
mainContainer = containers.find{ |c| c["name"] == "common-test" }
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][4]["name"])
assert_equal("common-test-admin", mainContainer["env"][4]["value"])
assert_equal(values[:env].keys[1].to_s, mainContainer["env"][5]["name"])
assert_equal(values[:env].values[1].to_s, mainContainer["env"][5]["value"])
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][5]["name"])
assert_equal("common-test-admin", mainContainer["env"][5]["value"])
assert_equal(values[:env].keys[1].to_s, mainContainer["env"][6]["name"])
assert_equal(values[:env].values[1].to_s, mainContainer["env"][6]["value"])
end
it 'set templated "k/v pair style" environment variables' do
@ -216,8 +216,8 @@ class Test < ChartTest
deployment = chart.resources(kind: "Deployment").first
containers = deployment["spec"]["template"]["spec"]["containers"]
mainContainer = containers.find{ |c| c["name"] == "common-test" }
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][4]["name"])
assert_equal("common-test-admin", mainContainer["env"][4]["value"])
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][5]["name"])
assert_equal("common-test-admin", mainContainer["env"][5]["value"])
end
it 'set static "k/v pair style", templated "k/v pair style", static "k/explicitValueFrom pair style", and static "k/implicitValueFrom pair style" environment variables' do
@ -243,14 +243,14 @@ class Test < ChartTest
deployment = chart.resources(kind: "Deployment").first
containers = deployment["spec"]["template"]["spec"]["containers"]
mainContainer = containers.find{ |c| c["name"] == "common-test" }
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][4]["name"])
assert_equal("common-test-admin", mainContainer["env"][4]["value"])
assert_equal(values[:env].keys[1].to_s, mainContainer["env"][5]["name"])
assert_equal(values[:env].values[1].to_s, mainContainer["env"][5]["value"])
assert_equal(values[:env].keys[2].to_s, mainContainer["env"][6]["name"])
assert_equal(values[:env].values[2][:valueFrom][:fieldRef][:fieldPath], mainContainer["env"][6]["valueFrom"]["fieldRef"]["fieldPath"])
assert_equal(values[:env].keys[3].to_s, mainContainer["env"][7]["name"])
assert_equal(values[:env].values[3][:fieldRef][:fieldPath], mainContainer["env"][7]["valueFrom"]["fieldRef"]["fieldPath"])
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][5]["name"])
assert_equal("common-test-admin", mainContainer["env"][5]["value"])
assert_equal(values[:env].keys[1].to_s, mainContainer["env"][6]["name"])
assert_equal(values[:env].values[1].to_s, mainContainer["env"][6]["value"])
assert_equal(values[:env].keys[2].to_s, mainContainer["env"][7]["name"])
assert_equal(values[:env].values[2][:valueFrom][:fieldRef][:fieldPath], mainContainer["env"][7]["valueFrom"]["fieldRef"]["fieldPath"])
assert_equal(values[:env].keys[3].to_s, mainContainer["env"][8]["name"])
assert_equal(values[:env].values[3][:fieldRef][:fieldPath], mainContainer["env"][8]["valueFrom"]["fieldRef"]["fieldPath"])
end
it 'set "static" secret variables' do