(feat) Dynamically set PGID, GID and GROUP_ID (#1091)

* base PGID on fsGroup

* also remove PGID from questions.yaml

* remove mistake

* small fix

* fix first test

* fix linting

* always set PUID to 568

* use quotes for env vars (obviously)
This commit is contained in:
Kjeld Schouten-Lebbing
2021-10-04 12:31:56 +02:00
committed by GitHub
parent 1a7a85d772
commit 308ba8accf
63 changed files with 117 additions and 241 deletions
+33 -33
View File
@@ -85,7 +85,7 @@ class Test < ChartTest
deployment = chart.resources(kind: "Deployment").first
containers = deployment["spec"]["template"]["spec"]["containers"]
mainContainer = containers.find{ |c| c["name"] == "common-test" }
assert_nil(mainContainer["env"])
assert_nil(mainContainer["env"][4])
end
it 'set static "k/v pair style" environment variables' do
@@ -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"][1]["name"])
assert_equal(values[:env].values[0].to_s, mainContainer["env"][1]["value"])
assert_equal(values[:env].keys[1].to_s, mainContainer["env"][2]["name"])
assert_equal(values[:env].values[1].to_s, mainContainer["env"][2]["value"])
assert_equal(values[:env].keys[2].to_s, mainContainer["env"][3]["name"])
assert_equal(values[:env].values[2].to_s, mainContainer["env"][3]["value"])
assert_equal(values[:env].keys[3].to_s, mainContainer["env"][4]["name"])
assert_equal(values[:env].values[3].to_s, mainContainer["env"][4]["value"])
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"])
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"][1]["name"])
assert_equal(values[:envList][0][:value].to_s, mainContainer["env"][1]["value"])
assert_equal(values[:envList][0][:name].to_s, mainContainer["env"][4]["name"])
assert_equal(values[:envList][0][:value].to_s, mainContainer["env"][4]["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"][1]["name"])
assert_equal(values[:env].values[0].to_s, mainContainer["env"][1]["value"])
assert_equal(values[:env].keys[1].to_s, mainContainer["env"][2]["name"])
assert_equal(values[:env].values[1][:valueFrom][:fieldRef][:fieldPath], mainContainer["env"][2]["valueFrom"]["fieldRef"]["fieldPath"])
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"])
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"][1]["name"])
assert_equal(values[:env].values[0][:valueFrom][:fieldRef][:fieldPath], mainContainer["env"][1]["valueFrom"]["fieldRef"]["fieldPath"])
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"])
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"][1]["name"])
assert_equal(values[:env].values[0][:fieldRef][:fieldPath], mainContainer["env"][1]["valueFrom"]["fieldRef"]["fieldPath"])
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"])
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"][1]["name"])
assert_equal("common-test-admin", mainContainer["env"][1]["value"])
assert_equal(values[:env].keys[1].to_s, mainContainer["env"][2]["name"])
assert_equal(values[:env].values[1].to_s, mainContainer["env"][2]["value"])
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"])
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"][1]["name"])
assert_equal("common-test-admin", mainContainer["env"][1]["value"])
assert_equal(values[:env].keys[0].to_s, mainContainer["env"][4]["name"])
assert_equal("common-test-admin", mainContainer["env"][4]["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"][1]["name"])
assert_equal("common-test-admin", mainContainer["env"][1]["value"])
assert_equal(values[:env].keys[1].to_s, mainContainer["env"][2]["name"])
assert_equal(values[:env].values[1].to_s, mainContainer["env"][2]["value"])
assert_equal(values[:env].keys[2].to_s, mainContainer["env"][3]["name"])
assert_equal(values[:env].values[2][:valueFrom][:fieldRef][:fieldPath], mainContainer["env"][3]["valueFrom"]["fieldRef"]["fieldPath"])
assert_equal(values[:env].keys[3].to_s, mainContainer["env"][4]["name"])
assert_equal(values[:env].values[3][:fieldRef][:fieldPath], mainContainer["env"][4]["valueFrom"]["fieldRef"]["fieldPath"])
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"])
end
it 'set "static" secret variables' do