Skip to content

Commit 0c8a398

Browse files
authored
more improvements in IT (#1771)
1 parent 4d55f69 commit 0c8a398

File tree

3 files changed

+20
-4
lines changed
  • spring-cloud-kubernetes-test-support/src/main/java/org/springframework/cloud/kubernetes/integration/tests/commons

3 files changed

+20
-4
lines changed

spring-cloud-kubernetes-test-support/src/main/java/org/springframework/cloud/kubernetes/integration/tests/commons/Commons.java

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,11 @@ public static void assertReloadLogStatements(String left, String right, String a
124124
* create a tar, copy it in the running k3s and load this tar as an image.
125125
*/
126126
public static void loadImage(String image, String tag, String tarName, K3sContainer container) throws Exception {
127+
128+
if (imageAlreadyInK3s(container, tarName)) {
129+
return;
130+
}
131+
127132
// save image
128133
try (SaveImageCmd saveImageCmd = container.getDockerClient().saveImageCmd(image)) {
129134
InputStream imageStream = saveImageCmd.withTag(tag).exec();
@@ -182,7 +187,7 @@ public static void load(K3sContainer container, String tarName, String imageName
182187
try {
183188
LOG.info("no tars found, will resort to pulling the image");
184189
LOG.info("using : " + imageVersion + " for : " + imageNameForDownload);
185-
pullImage(imageNameForDownload, imageVersion, container);
190+
pullImage(imageNameForDownload, imageVersion, tarName, container);
186191
loadImage(imageNameForDownload, imageVersion, tarName, container);
187192
}
188193
catch (Exception e) {
@@ -205,7 +210,13 @@ public static void validateImage(String image, K3sContainer container) {
205210
}
206211
}
207212

208-
public static void pullImage(String image, String tag, K3sContainer container) throws InterruptedException {
213+
public static void pullImage(String image, String tag, String tarName, K3sContainer container)
214+
throws InterruptedException {
215+
216+
if (imageAlreadyInK3s(container, tarName)) {
217+
return;
218+
}
219+
209220
try (PullImageCmd pullImageCmd = container.getDockerClient().pullImageCmd(image)) {
210221
pullImageCmd.withTag(tag).start().awaitCompletion();
211222
}
@@ -265,6 +276,11 @@ private static void loadImageFromPath(String tarName, K3sContainer container) {
265276
}
266277

267278
private static boolean imageAlreadyInK3s(K3sContainer container, String tarName) {
279+
280+
if (tarName == null) {
281+
return false;
282+
}
283+
268284
try {
269285
boolean present = container.execInContainer("sh", "-c", "ctr images list | grep " + tarName)
270286
.getStdout()

spring-cloud-kubernetes-test-support/src/main/java/org/springframework/cloud/kubernetes/integration/tests/commons/fabric8_client/Util.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ public void createAndWait(String namespace, String name, @Nullable Deployment de
103103
}
104104
else {
105105
String[] image = imageFromDeployment.split(":", 2);
106-
pullImage(image[0], image[1], container);
106+
pullImage(image[0], image[1], name, container);
107107
loadImage(image[0], image[1], name, container);
108108
}
109109

spring-cloud-kubernetes-test-support/src/main/java/org/springframework/cloud/kubernetes/integration/tests/commons/native_client/Util.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ public void createAndWait(String namespace, String name, V1Deployment deployment
136136
}
137137
else {
138138
String[] image = imageFromDeployment.split(":", 2);
139-
pullImage(image[0], image[1], container);
139+
pullImage(image[0], image[1], name, container);
140140
loadImage(image[0], image[1], name, container);
141141
}
142142

0 commit comments

Comments
 (0)