diff options
2 files changed, 5 insertions, 1 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentStatus.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentStatus.java index 0fe9a84f5fa..c09fff19d58 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentStatus.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentStatus.java @@ -378,7 +378,8 @@ public class DeploymentStatus { /** The set of jobs that need to run for the given changes to be considered complete. */ public boolean hasCompleted(InstanceName instance, Change change) { - if ( ! application.deploymentSpec().requireInstance(instance).concerns(prod)) { + DeploymentInstanceSpec spec = application.deploymentSpec().requireInstance(instance); + if ((spec.concerns(test) || spec.concerns(staging)) && ! spec.concerns(prod)) { if (newestTested(instance, run -> run.versions().targetRevision()).map(change::downgrades).orElse(false)) return true; if (newestTested(instance, run -> run.versions().targetPlatform()).map(change::downgrades).orElse(false)) return true; } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentTriggerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentTriggerTest.java index 6d1e5cebe0e..d9726edc496 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentTriggerTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentTriggerTest.java @@ -1291,6 +1291,9 @@ public class DeploymentTriggerTest { String complicatedDeploymentSpec = """ <deployment version='1.0' athenz-domain='domain' athenz-service='service'> + <instance id='dev'> + <dev /> + </instance> <parallel> <instance id='instance' athenz-service='in-service'> <staging /> |