aboutsummaryrefslogtreecommitdiffstats
path: root/controller-server
diff options
context:
space:
mode:
authorjonmv <venstad@gmail.com>2022-09-15 10:17:45 +0200
committerjonmv <venstad@gmail.com>2022-09-15 10:17:45 +0200
commitc2d4d1c349d398d9c64c82acedd41005fef9b190 (patch)
treecbabf544ca9705e981752d3cec97ce71afd83b90 /controller-server
parent93fa75131c332ad0e095230328c1f1798c7897ce (diff)
Avoid (re-)deploying to dev on broken/forgotten versions
Diffstat (limited to 'controller-server')
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobController.java1
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java1
2 files changed, 2 insertions, 0 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobController.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobController.java
index 6a4975c3458..6f9df0fff1b 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobController.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobController.java
@@ -755,6 +755,7 @@ public class JobController {
instance.map(Instance::deployments)
.map(deployments -> deployments.get(id.zoneId()))
.map(Deployment::version)
+ .filter(versions::contains) // Don't deploy versions that are no longer known.
.ifPresent(versions::add);
if (versions.isEmpty())
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java
index dede0c8dec8..554bf2a57b4 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java
@@ -743,6 +743,7 @@ public class ControllerTest {
var context = tester.newDeploymentContext();
tester.controllerTester().flagSource().withListFlag(PermanentFlags.INCOMPATIBLE_VERSIONS.id(), List.of("8"), String.class);
tester.controllerTester().upgradeSystem(version2);
+ tester.newDeploymentContext("keep", "v2", "alive").submit().deploy(); // TODO jonmv: remove
ZoneId zone = ZoneId.from("dev", "us-east-1");
context.runJob(zone, new ApplicationPackageBuilder().compileVersion(version1).build());