summaryrefslogtreecommitdiffstats
path: root/controller-api
diff options
context:
space:
mode:
authorJon Marius Venstad <jonmv@users.noreply.github.com>2019-04-11 09:41:00 +0200
committerGitHub <noreply@github.com>2019-04-11 09:41:00 +0200
commitaccba940ad0884d4f52880f75a7509f60908ab84 (patch)
tree89715986fa90b69d014911fc8128107f34dfa1b5 /controller-api
parent9f9476e91cc7c92424cdb6f92eb6743f36413fa4 (diff)
parent5769a20f4b4c98bfab9ba8e5caaddd1fd41f37d1 (diff)
Merge pull request #9081 from vespa-engine/jvenstad/nodes-in-application-v4
Jvenstad/nodes in application v4
Diffstat (limited to 'controller-api')
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Node.java31
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/PathGroup.java1
2 files changed, 30 insertions, 2 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Node.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Node.java
index d166bb0d3fb..d618464fc2a 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Node.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Node.java
@@ -31,10 +31,14 @@ public class Node {
private final long wantedRestartGeneration;
private final long rebootGeneration;
private final long wantedRebootGeneration;
+ private final String canonicalFlavor;
+ private final String clusterId;
+ private final ClusterType clusterType;
public Node(HostName hostname, State state, NodeType type, Optional<ApplicationId> owner,
Version currentVersion, Version wantedVersion, Version currentOsVersion, Version wantedOsVersion, ServiceState serviceState,
- long restartGeneration, long wantedRestartGeneration, long rebootGeneration, long wantedRebootGeneration) {
+ long restartGeneration, long wantedRestartGeneration, long rebootGeneration, long wantedRebootGeneration,
+ String canonicalFlavor, String clusterId, ClusterType clusterType) {
this.hostname = hostname;
this.state = state;
this.type = type;
@@ -48,13 +52,17 @@ public class Node {
this.wantedRestartGeneration = wantedRestartGeneration;
this.rebootGeneration = rebootGeneration;
this.wantedRebootGeneration = wantedRebootGeneration;
+ this.canonicalFlavor = canonicalFlavor;
+ this.clusterId = clusterId;
+ this.clusterType = clusterType;
}
@TestOnly
public Node(HostName hostname, State state, NodeType type, Optional<ApplicationId> owner,
Version currentVersion, Version wantedVersion) {
this(hostname, state, type, owner, currentVersion, wantedVersion,
- Version.emptyVersion, Version.emptyVersion, ServiceState.unorchestrated, 0, 0, 0, 0);
+ Version.emptyVersion, Version.emptyVersion, ServiceState.unorchestrated, 0, 0, 0, 0,
+ "d-2-8-50", "cluster", ClusterType.container);
}
public HostName hostname() {
@@ -107,6 +115,18 @@ public class Node {
return wantedRebootGeneration;
}
+ public String canonicalFlavor() {
+ return canonicalFlavor;
+ }
+
+ public String clusterId() {
+ return clusterId;
+ }
+
+ public ClusterType clusterType() {
+ return clusterType;
+ }
+
@Override
public boolean equals(Object o) {
if (this == o) return true;
@@ -139,4 +159,11 @@ public class Node {
unorchestrated
}
+ /** Known cluster types. */
+ public enum ClusterType {
+ admin,
+ container,
+ content
+ }
+
}
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/PathGroup.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/PathGroup.java
index ba6f19c19ba..23bf8514b9c 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/PathGroup.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/PathGroup.java
@@ -64,6 +64,7 @@ public enum PathGroup {
Optional.of("/api"),
"/application/v4/tenant/{tenant}/application/{application}/deploying/{*}",
"/application/v4/tenant/{tenant}/application/{application}/instance/{*}",
+ "/application/v4/tenant/{tenant}/application/{application}/environment/{environment}/region/{region}/instance/{instance}/nodes",
"/application/v4/tenant/{tenant}/application/{application}/environment/{environment}/region/{region}/instance/{instance}/logs",
"/application/v4/tenant/{tenant}/application/{application}/environment/{environment}/region/{region}/instance/{instance}/suspended",
"/application/v4/tenant/{tenant}/application/{application}/environment/{environment}/region/{region}/instance/{instance}/service/{*}",