summaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorjonmv <venstad@gmail.com>2023-08-31 08:02:18 +0200
committerjonmv <venstad@gmail.com>2023-08-31 11:13:31 +0200
commitfa473e7e36d1b00d20121278d9a6e6d9d2eb3113 (patch)
tree24288a438db7ff6ef2e8d4256b7126ccd96e9bdc /config-model
parent06faa0b17b887877a68bb6fc3ab9431825644636 (diff)
Revert "Merge pull request #28291 from vespa-engine/revert-28270-jonmv/always-use-newest-cloud-account-in-tests"
This reverts commit 0b9091c4c4c992dd88ade45d0d90c5f903ed1702, reversing changes made to a907f4488daa32f31c3240f20c7eeafb95d28ad4.
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/main/java/com/yahoo/config/model/ConfigModelContext.java10
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/ClusterInfoTest.java8
2 files changed, 6 insertions, 12 deletions
diff --git a/config-model/src/main/java/com/yahoo/config/model/ConfigModelContext.java b/config-model/src/main/java/com/yahoo/config/model/ConfigModelContext.java
index abd803dcebb..ad50ad02171 100644
--- a/config-model/src/main/java/com/yahoo/config/model/ConfigModelContext.java
+++ b/config-model/src/main/java/com/yahoo/config/model/ConfigModelContext.java
@@ -9,6 +9,7 @@ import com.yahoo.config.model.api.ModelContext;
import com.yahoo.config.model.deploy.DeployState;
import com.yahoo.config.model.producer.AnyConfigProducer;
import com.yahoo.config.model.producer.TreeConfigProducer;
+import com.yahoo.config.provision.CloudAccount;
import com.yahoo.config.provision.ClusterInfo;
import com.yahoo.config.provision.ClusterInfo.Builder;
import com.yahoo.config.provision.zone.ZoneId;
@@ -81,13 +82,8 @@ public final class ConfigModelContext {
ClusterInfo.Builder builder = new ClusterInfo.Builder();
spec.hostTTL(properties().applicationId().instance(), deployState.zone().environment(), deployState.zone().region())
.filter(ttl -> ! ttl.isZero())
- .ifPresent(ttl -> {
- ZoneId zoneId = ZoneId.from(deployState.zone().environment(), deployState.zone().region());
- if (spec.cloudAccount(deployState.zone().cloud().name(), properties().applicationId().instance(), zoneId).isUnspecified())
- throw new IllegalArgumentException("deployment spec specifies host TTL for " + zoneId +
- " but no cloud account is specified for this zone");
- builder.hostTTL(ttl);
- });
+ .filter(__ -> deployState.getProperties().cloudAccount().map(account -> ! account.isUnspecified()).orElse(false))
+ .ifPresent(builder::hostTTL);
spec.instance(properties().applicationId().instance())
.flatMap(instance -> instance.bcp().groups().stream()
.filter(group -> group.memberRegions().contains(properties().zone().region()))
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/ClusterInfoTest.java b/config-model/src/test/java/com/yahoo/vespa/model/ClusterInfoTest.java
index 1734e9f074f..16e13a66a44 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/ClusterInfoTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/ClusterInfoTest.java
@@ -12,6 +12,7 @@ import com.yahoo.config.provision.Cloud;
import com.yahoo.config.provision.CloudAccount;
import com.yahoo.config.provision.CloudName;
import com.yahoo.config.provision.ClusterSpec;
+import com.yahoo.config.provision.ClusterSpec.Id;
import com.yahoo.config.provision.Environment;
import com.yahoo.config.provision.InstanceName;
import com.yahoo.config.provision.RegionName;
@@ -216,7 +217,7 @@ public class ClusterInfoTest {
<deployment version='1.0' empty-host-ttl='1d'>
<instance id='default'>
<prod>
- <region cloud-account='gcp:foobar'>us-east-1</region>
+ <region>us-east-1</region>
<region empty-host-ttl='0m'>us-north-1</region>
<region>us-west-1</region>
</prod>
@@ -228,10 +229,7 @@ public class ClusterInfoTest {
CloudAccount account = CloudAccount.from("gcp:foobar");
assertEquals(Duration.ofHours(24), requestedCapacityIn(account, gcp, "default", "us-east-1", servicesXml, deploymentXml).get(new ClusterSpec.Id("testcontainer")).clusterInfo().hostTTL());
assertEquals(Duration.ZERO, requestedCapacityIn(account, gcp, "default", "us-north-1", servicesXml, deploymentXml).get(new ClusterSpec.Id("testcontainer")).clusterInfo().hostTTL());
- assertEquals("In container cluster 'testcontainer': deployment spec specifies host TTL for prod.us-west-1 but no cloud account is specified for this zone",
- Exceptions.toMessageString(assertThrows(IllegalArgumentException.class,
- () -> requestedCapacityIn(account, gcp, "default", "us-west-1", servicesXml, deploymentXml))));
-
+ assertEquals(Duration.ZERO, requestedCapacityIn(CloudAccount.empty, gcp, "default", "us-west-1", servicesXml, deploymentXml).get(new Id("testcontainer")).clusterInfo().hostTTL());
}
private Map<ClusterSpec.Id, Capacity> requestedCapacityIn(String instance, String region, String servicesXml, String deploymentXml) throws Exception {