diff options
author | Håkon Hallingstad <hakon@verizonmedia.com> | 2019-08-13 14:36:00 +0200 |
---|---|---|
committer | Håkon Hallingstad <hakon@verizonmedia.com> | 2019-08-13 14:36:00 +0200 |
commit | 8c14a1a00481035557c1ec648c576f19a9ee44a3 (patch) | |
tree | 6be11f42f603a699cad737fcc60c4d1b0db93520 /application-model/src | |
parent | bb5d8abfe64f9f2c4336e5e24a66c1e292ba2c7b (diff) |
Assume at least 3 config server in Orchestrator
Diffstat (limited to 'application-model/src')
4 files changed, 11 insertions, 0 deletions
diff --git a/application-model/src/main/java/com/yahoo/vespa/applicationmodel/ApplicationInstanceId.java b/application-model/src/main/java/com/yahoo/vespa/applicationmodel/ApplicationInstanceId.java index df19f6cf275..581e6806a23 100644 --- a/application-model/src/main/java/com/yahoo/vespa/applicationmodel/ApplicationInstanceId.java +++ b/application-model/src/main/java/com/yahoo/vespa/applicationmodel/ApplicationInstanceId.java @@ -10,6 +10,7 @@ import java.util.Objects; */ // TODO: Remove this and use ApplicationName/InstanceName instead (if you need it for the JSON stuff move it to that layer and don't let it leak) public class ApplicationInstanceId { + public static final ApplicationInstanceId CONFIG_SERVER = new ApplicationInstanceId("zone-config-servers"); private final String id; diff --git a/application-model/src/main/java/com/yahoo/vespa/applicationmodel/ClusterId.java b/application-model/src/main/java/com/yahoo/vespa/applicationmodel/ClusterId.java index 28ee5076191..603cfef5708 100644 --- a/application-model/src/main/java/com/yahoo/vespa/applicationmodel/ClusterId.java +++ b/application-model/src/main/java/com/yahoo/vespa/applicationmodel/ClusterId.java @@ -9,6 +9,8 @@ import java.util.Objects; * @author bjorncs */ public class ClusterId { + public static final ClusterId CONFIG_SERVER = new ClusterId("zone-config-servers"); + private final String id; public ClusterId(String id) { diff --git a/application-model/src/main/java/com/yahoo/vespa/applicationmodel/ServiceCluster.java b/application-model/src/main/java/com/yahoo/vespa/applicationmodel/ServiceCluster.java index 9c3e568642b..5d8286bd727 100644 --- a/application-model/src/main/java/com/yahoo/vespa/applicationmodel/ServiceCluster.java +++ b/application-model/src/main/java/com/yahoo/vespa/applicationmodel/ServiceCluster.java @@ -51,6 +51,13 @@ public class ServiceCluster { return applicationInstance.get(); } + public boolean isConfigServerCluster() { + return Objects.equals(applicationInstance.map(ApplicationInstance::tenantId), Optional.of(TenantId.HOSTED_VESPA)) && + Objects.equals(applicationInstance.map(ApplicationInstance::applicationInstanceId), Optional.of(ApplicationInstanceId.CONFIG_SERVER)) && + Objects.equals(clusterId, ClusterId.CONFIG_SERVER) && + Objects.equals(serviceType, ServiceType.CONFIG_SERVER); + } + @Override public String toString() { return "ServiceCluster{" + diff --git a/application-model/src/main/java/com/yahoo/vespa/applicationmodel/TenantId.java b/application-model/src/main/java/com/yahoo/vespa/applicationmodel/TenantId.java index ba9d6251569..0fb3db28448 100644 --- a/application-model/src/main/java/com/yahoo/vespa/applicationmodel/TenantId.java +++ b/application-model/src/main/java/com/yahoo/vespa/applicationmodel/TenantId.java @@ -10,6 +10,7 @@ import java.util.Objects; */ // TODO: Remove this and use TenantName instead (if you need it for the JSON stuff move it to that layer and don't let it leak) public class TenantId { + public static final TenantId HOSTED_VESPA = new TenantId("hosted-vespa"); private final String id; |