aboutsummaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2017-06-02 16:02:26 +0200
committerGitHub <noreply@github.com>2017-06-02 16:02:26 +0200
commit9a7722ca82971a803b8b1fb1582c3338588ef73c (patch)
tree7860223d443edee961e68c17dd9a5a8004c83a58 /config-model
parent6d11145fb25591ae137f2dfefdc5627cafcc9b83 (diff)
parent670cb1727b64208d3a3ad7c26bc7fd4fcffd08fd (diff)
Merge pull request #2617 from yahoo/revert-2616-revert-2604-bratseth/deployment-delay
Revert "Revert "Bratseth/deployment delay""
Diffstat (limited to 'config-model')
-rwxr-xr-xconfig-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java6
-rw-r--r--config-model/src/main/resources/schema/deployment.rnc24
-rw-r--r--config-model/src/test/schema-test-files/deployment.xml2
3 files changed, 21 insertions, 11 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java
index addf14d5e6b..dbae6851977 100755
--- a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java
@@ -418,10 +418,10 @@ public final class ContainerCluster
private boolean zoneHasActiveRotation(Zone zone) {
return getDeploymentSpec()
- .flatMap(spec -> spec.zones().stream()
- .filter(dz -> dz.matches(zone.environment(), Optional.of(zone.region())))
+ .flatMap(spec -> spec.steps().stream()
+ .filter(dz -> dz.deploysTo(zone.environment(), Optional.of(zone.region())))
.findFirst())
- .map(DeploymentSpec.DeclaredZone::active)
+ .map(step -> ((DeploymentSpec.DeclaredZone)step).active())
.orElse(false);
}
diff --git a/config-model/src/main/resources/schema/deployment.rnc b/config-model/src/main/resources/schema/deployment.rnc
index c8bd11d7184..d34255c7127 100644
--- a/config-model/src/main/resources/schema/deployment.rnc
+++ b/config-model/src/main/resources/schema/deployment.rnc
@@ -21,11 +21,19 @@ Staging = element staging {
text
}
-Prod =
- element prod {
- attribute global-service-id { text }?,
- element region {
- attribute active { xsd:boolean },
- text
- }*
- }
+Prod = element prod {
+ attribute global-service-id { text }? &
+ Region* &
+ Delay*
+}
+
+Region = element region {
+ attribute active { xsd:boolean },
+ text
+}
+
+Delay = element delay {
+ attribute hours { xsd:long }? &
+ attribute minutes { xsd:long }? &
+ attribute seconds { xsd:long }?
+}
diff --git a/config-model/src/test/schema-test-files/deployment.xml b/config-model/src/test/schema-test-files/deployment.xml
index 92d59abbe53..286466eff57 100644
--- a/config-model/src/test/schema-test-files/deployment.xml
+++ b/config-model/src/test/schema-test-files/deployment.xml
@@ -4,7 +4,9 @@
<staging/>
<prod global-service-id='qrs'>
<region active='true'>us-west-1</region>
+ <delay hours='3'/>
<region active='true'>us-central-1</region>
+ <delay hours='3' minutes='7' seconds='13'/>
<region active='true'>us-east-3</region>
</prod>
</deployment>