aboutsummaryrefslogtreecommitdiffstats
path: root/application-model
diff options
context:
space:
mode:
authorHåkon Hallingstad <hakon@verizonmedia.com>2019-08-13 14:36:00 +0200
committerHåkon Hallingstad <hakon@verizonmedia.com>2019-08-13 14:36:00 +0200
commit8c14a1a00481035557c1ec648c576f19a9ee44a3 (patch)
tree6be11f42f603a699cad737fcc60c4d1b0db93520 /application-model
parentbb5d8abfe64f9f2c4336e5e24a66c1e292ba2c7b (diff)
Assume at least 3 config server in Orchestrator
Diffstat (limited to 'application-model')
-rw-r--r--application-model/src/main/java/com/yahoo/vespa/applicationmodel/ApplicationInstanceId.java1
-rw-r--r--application-model/src/main/java/com/yahoo/vespa/applicationmodel/ClusterId.java2
-rw-r--r--application-model/src/main/java/com/yahoo/vespa/applicationmodel/ServiceCluster.java7
-rw-r--r--application-model/src/main/java/com/yahoo/vespa/applicationmodel/TenantId.java1
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;