diff options
author | Jon Marius Venstad <jvenstad@yahoo-inc.com> | 2018-09-06 14:48:42 +0200 |
---|---|---|
committer | Jon Marius Venstad <jvenstad@yahoo-inc.com> | 2018-09-06 14:48:42 +0200 |
commit | e91534aafc4282bf254a91917fdf9a49c912359c (patch) | |
tree | 6ca7b706cdceafcdda1409ad97af2f7d5a3670ef /controller-server | |
parent | 5dd5400692b188644753c92e6888d5883964b95b (diff) |
Adjust response to the wishes of the front-end team
Diffstat (limited to 'controller-server')
4 files changed, 257 insertions, 182 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/JobControllerApiHandlerHelper.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/JobControllerApiHandlerHelper.java index 32d62d00e20..8a2664e61a7 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/JobControllerApiHandlerHelper.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/JobControllerApiHandlerHelper.java @@ -142,13 +142,13 @@ class JobControllerApiHandlerHelper { lastVespa = version; Version lastPlatform = lastVespa.versionNumber(); - lastPlatformObject.setString("version", lastPlatform.toString()); + lastPlatformObject.setString("platform", lastPlatform.toString()); lastPlatformObject.setLong("at", lastVespa.committedAt().toEpochMilli()); long completed = steps.productionJobs().stream().filter(type -> controller.applications().deploymentTrigger().isComplete(Change.of(lastPlatform), application, type)).count(); if (Optional.of(lastPlatform).equals(change.platform())) - lastPlatformObject.setString("deploying", completed + " of " + steps.productionJobs().size()); + lastPlatformObject.setString("deploying", completed + " of " + steps.productionJobs().size() + "complete"); else if (completed == steps.productionJobs().size()) - lastPlatformObject.setString("completed", completed + " of " + steps.productionJobs().size()); + lastPlatformObject.setString("completed", completed + " of " + steps.productionJobs().size() + "complete"); else if ( ! application.deploymentSpec().canUpgradeAt(controller.clock().instant())) { lastPlatformObject.setString("blocked", application.deploymentSpec().changeBlocker().stream() .filter(blocker -> blocker.blocksVersions()) @@ -162,7 +162,7 @@ class JobControllerApiHandlerHelper { private static void lastApplicationToSlime(Cursor lastApplicationObject, Application application, Change change, DeploymentSteps steps, Controller controller) { long completed; ApplicationVersion lastApplication = application.deploymentJobs().statusOf(component).flatMap(JobStatus::lastSuccess).get().application(); - applicationVersionToSlime(lastApplicationObject.setObject("version"), lastApplication); + applicationVersionToSlime(lastApplicationObject.setObject("application"), lastApplication); lastApplicationObject.setLong("at", application.deploymentJobs().statusOf(component).flatMap(JobStatus::lastSuccess).get().at().toEpochMilli()); completed = steps.productionJobs().stream().filter(type -> controller.applications().deploymentTrigger().isComplete(Change.of(lastApplication), application, type)).count(); if (Optional.of(lastApplication).equals(change.application())) @@ -333,11 +333,12 @@ class JobControllerApiHandlerHelper { } private static void applicationVersionToSlime(Cursor versionObject, ApplicationVersion version) { - versionObject.setString("id", version.id()); + versionObject.setString("hash", version.id()); versionObject.setLong("build", version.buildNumber().getAsLong()); - versionObject.setString("repository", version.source().get().repository()); - versionObject.setString("branch", version.source().get().branch()); - versionObject.setString("commit", version.source().get().commit()); + Cursor sourceObject = versionObject.setObject("source"); + sourceObject.setString("gitRepository", version.source().get().repository()); + sourceObject.setString("gitBranch", version.source().get().branch()); + sourceObject.setString("gitCommit", version.source().get().commit()); } /** diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/JobControllerApiHandlerHelperTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/JobControllerApiHandlerHelperTest.java index 01f9ea9dfa0..f6b33940929 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/JobControllerApiHandlerHelperTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/JobControllerApiHandlerHelperTest.java @@ -2,11 +2,7 @@ package com.yahoo.vespa.hosted.controller.restapi.application; import com.yahoo.component.Version; import com.yahoo.container.jdisc.HttpResponse; -import com.yahoo.vespa.hosted.controller.api.application.v4.model.configserverbindings.ConfigChangeActions; -import com.yahoo.vespa.hosted.controller.api.application.v4.model.configserverbindings.RefeedAction; -import com.yahoo.vespa.hosted.controller.api.identifiers.DeploymentId; import com.yahoo.vespa.hosted.controller.api.integration.configserver.ConfigServerException; -import com.yahoo.vespa.hosted.controller.api.integration.deployment.TesterCloud; import com.yahoo.vespa.hosted.controller.api.integration.zone.ZoneId; import com.yahoo.vespa.hosted.controller.application.ApplicationVersion; import com.yahoo.vespa.hosted.controller.deployment.InternalDeploymentTester; @@ -32,14 +28,10 @@ import static com.yahoo.vespa.hosted.controller.api.integration.deployment.JobTy import static com.yahoo.vespa.hosted.controller.api.integration.deployment.TesterCloud.Status.FAILURE; import static com.yahoo.vespa.hosted.controller.deployment.InternalDeploymentTester.appId; import static com.yahoo.vespa.hosted.controller.deployment.JobController.testerOf; -import static com.yahoo.vespa.hosted.controller.deployment.RunStatus.aborted; import static com.yahoo.vespa.hosted.controller.deployment.RunStatus.deploymentFailed; -import static com.yahoo.vespa.hosted.controller.deployment.RunStatus.error; import static com.yahoo.vespa.hosted.controller.deployment.RunStatus.installationFailed; import static com.yahoo.vespa.hosted.controller.deployment.RunStatus.running; import static com.yahoo.vespa.hosted.controller.deployment.RunStatus.testFailure; -import static java.util.Collections.emptyList; -import static java.util.Collections.singletonList; import static org.junit.Assert.assertEquals; /** diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/overview.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/overview.json index b7a7dcbf796..a7c3135fbf3 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/overview.json +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/overview.json @@ -1,17 +1,19 @@ { "lastVersions": { "platform": { - "version": "7.1", + "platform": "7.1", "at": 0, "pending": "Waiting for current deployment to complete" }, "application": { - "version": { - "id": "1.0.3-commit1", + "application": { + "hash": "1.0.3-commit1", "build": 3, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "at": 2000, "deploying": "0 of 3 complete" @@ -19,11 +21,13 @@ }, "deploying": { "application": { - "id": "1.0.3-commit1", + "hash": "1.0.3-commit1", "build": 3, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } } }, "deployments": [ @@ -32,11 +36,13 @@ "at": 2000, "platform": "6.1", "application": { - "id": "1.0.3-commit1", + "hash": "1.0.3-commit1", "build": 3, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "verified": false, "status": "verifying" @@ -47,11 +53,13 @@ "at": 1000, "platform": "6.1", "application": { - "id": "1.0.2-commit1", + "hash": "1.0.2-commit1", "build": 2, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "verified": false, "status": "pending" @@ -60,11 +68,13 @@ "at": 0, "platform": "6.1", "application": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "verified": true, "status": "pending" @@ -81,19 +91,23 @@ "end": 2000, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.3-commit1", + "hash": "1.0.3-commit1", "build": 3, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.2-commit1", + "hash": "1.0.2-commit1", "build": 2, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "deploy": "succeeded", @@ -109,19 +123,23 @@ "end": 1000, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.2-commit1", + "hash": "1.0.2-commit1", "build": 2, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "deploy": "succeeded", @@ -137,11 +155,13 @@ "end": 0, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "deploy": "succeeded", @@ -159,19 +179,23 @@ "status": "pending", "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.3-commit1", + "hash": "1.0.3-commit1", "build": 3, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "cooldown": "failed" @@ -185,19 +209,23 @@ "end": 2000, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.3-commit1", + "hash": "1.0.3-commit1", "build": 3, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": {}, "log": "https://some.url:43/root/staging-test/run/4" @@ -209,19 +237,23 @@ "end": 2000, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.3-commit1", + "hash": "1.0.3-commit1", "build": 3, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.2-commit1", + "hash": "1.0.2-commit1", "build": 2, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "deploy": "succeeded", @@ -237,19 +269,23 @@ "end": 1000, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.2-commit1", + "hash": "1.0.2-commit1", "build": 2, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "deploy": "succeeded", @@ -265,11 +301,13 @@ "end": 0, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "deploy": "succeeded", @@ -289,19 +327,23 @@ "start": 2000, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.3-commit1", + "hash": "1.0.3-commit1", "build": 3, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.2-commit1", + "hash": "1.0.2-commit1", "build": 2, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "deploy": "succeeded", @@ -316,19 +358,23 @@ "end": 1000, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.2-commit1", + "hash": "1.0.2-commit1", "build": 2, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "deploy": "succeeded", @@ -344,11 +390,13 @@ "end": 0, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "deploy": "succeeded", @@ -366,19 +414,23 @@ "status": "pending", "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.3-commit1", + "hash": "1.0.3-commit1", "build": 3, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.2-commit1", + "hash": "1.0.2-commit1", "build": 2, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "production-us-central-1": "running" @@ -391,19 +443,23 @@ "end": 1000, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.2-commit1", + "hash": "1.0.2-commit1", "build": 2, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "deploy": "succeeded", @@ -419,11 +475,13 @@ "end": 0, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "deploy": "succeeded", @@ -441,19 +499,23 @@ "status": "pending", "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.3-commit1", + "hash": "1.0.3-commit1", "build": 3, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "staging-test": "failed", @@ -467,19 +529,23 @@ "end": 1000, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.2-commit1", + "hash": "1.0.2-commit1", "build": 2, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "deploy": "failed" @@ -493,11 +559,13 @@ "end": 0, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "tasks": { "deploy": "succeeded", diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/staging-runs.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/staging-runs.json index 448411b3912..8c5e5253482 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/staging-runs.json +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/staging-runs.json @@ -6,11 +6,13 @@ "end": 0, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "steps": { "deployInitialReal": "succeeded", @@ -39,19 +41,23 @@ "end": 1000, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.2-commit1", + "hash": "1.0.2-commit1", "build": 2, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "steps": { "deployInitialReal": "succeeded", @@ -80,19 +86,23 @@ "end": 2000, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.3-commit1", + "hash": "1.0.3-commit1", "build": 3, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.2-commit1", + "hash": "1.0.2-commit1", "build": 2, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "steps": { "deployInitialReal": "succeeded", @@ -121,19 +131,23 @@ "end": 2000, "wantedPlatform": "6.1", "wantedApplication": { - "id": "1.0.3-commit1", + "hash": "1.0.3-commit1", "build": 3, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "currentPlatform": "6.1", "currentApplication": { - "id": "1.0.1-commit1", + "hash": "1.0.1-commit1", "build": 1, - "repository": "repository1", - "branch": "master", - "commit": "commit1" + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + } }, "steps": { "deployInitialReal": "succeeded", |