Skip to content

Commit ff9005e

Browse files
committed
Update test
1 parent 17112b3 commit ff9005e

File tree

2 files changed

+30
-10
lines changed

2 files changed

+30
-10
lines changed

src/test/java/org/csanchez/jenkins/plugins/kubernetes/pipeline/ContainerExecDecoratorPipelineTest.java

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -121,15 +121,32 @@ public void containerEnvironmentIsHonored() throws Exception {
121121
assertNotNull(createJobThenScheduleRun());
122122
r.waitForCompletion(b);
123123
r.assertLogContains(
124-
"from Groovy: /opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", b);
124+
"from Groovy outside container: /opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
125+
b);
126+
r.assertLogContains(
127+
"from shell outside container: /opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
128+
b);
125129
r.assertLogContains(
126-
"outside container: /opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
130+
"from Groovy outside container with override: /bar:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
127131
b);
128132
r.assertLogContains(
129-
"outside container with override: /bar:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
133+
"from shell outside container with override: /bar:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
130134
b);
131-
r.assertLogContains("inside container: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", b);
135+
// When using groovy, the environment relies on the computer's environment.
132136
r.assertLogContains(
133-
"inside container with override: /bar:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", b);
137+
"from Groovy inside container: /opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
138+
b);
139+
r.assertLogContains(
140+
"from shell inside container: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", b);
141+
// When using groovy, the environment relies on the computer's environment, using container step doesn't change
142+
// anything.
143+
r.assertLogContains(
144+
"from Groovy inside container with override: /bar:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
145+
b);
146+
// TODO Currently fails because env override is applied to the computer's environment instead of the container's
147+
// environment.
148+
// r.assertLogContains(
149+
// "from shell inside container with override:
150+
// /bar:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", b);
134151
}
135152
}

src/test/resources/org/csanchez/jenkins/plugins/kubernetes/pipeline/containerEnvironmentIsHonored.groovy

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,18 @@ spec:
1313
- infinity
1414
''') {
1515
node(POD_LABEL) {
16-
echo "from Groovy: ${env.PATH}"
17-
sh 'echo "outside container: $PATH"'
16+
echo "from Groovy outside container: ${env.PATH}"
17+
sh 'echo "from shell outside container: $PATH"'
1818
withEnv(['PATH+foo=/bar']) {
19-
sh 'echo "outside container with override: $PATH"'
19+
echo "from Groovy outside container with override: ${env.PATH}"
20+
sh 'echo "from shell outside container with override: $PATH"'
2021
}
2122
container('alpine') {
22-
sh 'echo "inside container: $PATH"'
23+
echo "from Groovy inside container: ${env.PATH}"
24+
sh 'echo "from shell inside container: $PATH"'
2325
withEnv(['PATH+foo=/bar']) {
24-
sh 'echo "inside container with override: $PATH"'
26+
echo "from Groovy inside container with override: ${env.PATH}"
27+
sh 'echo "from shell inside container with override: $PATH"'
2528
}
2629
}
2730
}

0 commit comments

Comments
 (0)