diff options
author | Jon Marius Venstad <venstad@gmail.com> | 2019-10-08 22:19:35 +0200 |
---|---|---|
committer | Jon Marius Venstad <venstad@gmail.com> | 2019-10-08 22:19:35 +0200 |
commit | 9f79879e1363dd9b62bd479a14a533bc1a06432e (patch) | |
tree | 63f269d2aa2c4c06363d301a0c3eb4f23fd26390 /controller-server | |
parent | a52066ec4392a596ce3baabc90809614649107ad (diff) |
Pick any instance and put rotation stuff in application level for now
Diffstat (limited to 'controller-server')
3 files changed, 27 insertions, 7 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java index 51cd306767a..c65bb6796b4 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java @@ -615,9 +615,9 @@ public class ApplicationApiHandler extends LoggingRequestHandler { object.setString("tenant", application.id().tenant().value()); object.setString("application", application.id().application().value()); object.setString("deployments", withPath("/application/v4" + - "/tenant/" + application.id().tenant().value() + - "/application/" + application.id().application().value() + - "/job/", + "/tenant/" + application.id().tenant().value() + + "/application/" + application.id().application().value() + + "/job/", request.getUri()).toString()); application.latestVersion().ifPresent(version -> toSlime(version, object.setObject("latestVersion"))); @@ -625,11 +625,11 @@ public class ApplicationApiHandler extends LoggingRequestHandler { application.projectId().ifPresent(id -> object.setLong("projectId", id)); // Currently deploying change - if ( ! application.change().isEmpty()) + if (!application.change().isEmpty()) toSlime(object.setObject("deploying"), application.change()); // Outstanding change - if ( ! application.outstandingChange().isEmpty()) + if (!application.outstandingChange().isEmpty()) toSlime(object.setObject("outstandingChange"), application.outstandingChange()); // Compile version. The version that should be used when building an application @@ -658,6 +658,24 @@ public class ApplicationApiHandler extends LoggingRequestHandler { application.ownershipIssueId().ifPresent(issueId -> object.setString("ownershipIssueId", issueId.value())); application.owner().ifPresent(owner -> object.setString("owner", owner.username())); application.deploymentIssueId().ifPresent(issueId -> object.setString("deploymentIssueId", issueId.value())); + + + // TODO jonmv: Remove when clients of the InstancesReply are updated + Cursor globalRotationsArray = object.setArray("globalRotations"); + application.instances().values().stream().findFirst().ifPresent(instance -> { + instance.endpointsIn(controller.system()) + .scope(Endpoint.Scope.global) + .legacy(false) // Hide legacy names + .asList().stream() + .map(Endpoint::url) + .map(URI::toString) + .forEach(globalRotationsArray::addString); + + instance.rotations().stream() + .map(AssignedRotation::rotationId) + .findFirst() + .ifPresent(rotation -> object.setString("rotationId", rotation.asString())); + }); } private void toSlime(Cursor object, Instance instance, DeploymentSpec deploymentSpec, HttpRequest request) { diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/application2-with-patches.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/application2-with-patches.json index ad86fa34cde..78568f97da2 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/application2-with-patches.json +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/application2-with-patches.json @@ -64,5 +64,6 @@ "queryServiceQuality": 0.0, "writeServiceQuality": 0.0 }, - "activity": {} + "activity": {}, + "globalRotations": [] } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/application2.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/application2.json index 6d89fa4ee20..153d43bb3ae 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/application2.json +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/application2.json @@ -61,5 +61,6 @@ "queryServiceQuality": 0.0, "writeServiceQuality": 0.0 }, - "activity": {} + "activity": {}, + "globalRotations": [] } |