summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOla Aunrønning <olaa@verizonmedia.com>2020-07-02 18:52:33 +0200
committerGitHub <noreply@github.com>2020-07-02 18:52:33 +0200
commit3e8f706ffaea20065abd763c2e2fbc151932a7b7 (patch)
treef720a4018fcc3fca9ddabedb70de18ff6dd514a6
parent5ea9ab0b823b7bf634f07e89ad900cefc301d1e2 (diff)
parent892f8d20ca43990a7f477600d3a1a29ecde44273 (diff)
Merge pull request #13783 from vespa-engine/olaa/try-alternative-docker-images
Consider currentDockerImage/wantedDockerImage if container is empty
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainer.java12
1 files changed, 11 insertions, 1 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainer.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainer.java
index f1645727b7c..30ca2e0d218 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainer.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainer.java
@@ -3,6 +3,7 @@ package com.yahoo.vespa.hosted.node.admin.maintenance;
import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
+import com.yahoo.config.provision.DockerImage;
import com.yahoo.config.provision.NodeType;
import java.util.logging.Level;
import com.yahoo.vespa.hosted.dockerapi.Container;
@@ -37,6 +38,7 @@ import java.util.Optional;
import java.util.concurrent.TimeUnit;
import java.util.function.Function;
import java.util.logging.Logger;
+import java.util.stream.Stream;
import static com.yahoo.vespa.hosted.node.admin.maintenance.disk.DiskCleanupRule.Priority;
import static com.yahoo.yolean.Exceptions.uncheck;
@@ -158,7 +160,7 @@ public class StorageMaintainer {
attributes.put("kernel_version", System.getProperty("os.version"));
attributes.put("cpu_microcode_version", getMicrocodeVersion());
- container.map(c -> c.image).ifPresent(image -> attributes.put("docker_image", image.asString()));
+ attributes.put("docker_image", getDockerImage(context, container));
context.node().parentHostname().ifPresent(parent -> attributes.put("parent_hostname", parent));
context.node().currentVespaVersion().ifPresent(version -> attributes.put("vespa_version", version.toFullString()));
context.node().owner().ifPresent(owner -> {
@@ -199,4 +201,12 @@ public class StorageMaintainer {
return results[1].trim();
}
+
+ private String getDockerImage(NodeAgentContext context, Optional<Container> container) {
+ return container.map(c -> c.image.asString())
+ .orElse(context.node().currentDockerImage()
+ .map(DockerImage::asString)
+ .orElse("<none>")
+ );
+ }
}