diff options
author | Martin Polden <mpolden@mpolden.no> | 2020-01-27 16:09:24 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-01-27 16:09:24 +0100 |
commit | fe24d5ceb53fa38aa2ffca1c3552c472a489f5f9 (patch) | |
tree | c6fe9f5a674bd358bee56de643a76c401fdfdca9 | |
parent | b4793a390bddf73fda1e9b5668619bcb518bd2a2 (diff) | |
parent | 721aa3a255ad7541274484bd001825e02eb1df52 (diff) |
Merge pull request #11955 from vespa-engine/jvenstad/no-tests-in-production-deployment-jobs
Do not run tests in production deployment jobs
14 files changed, 142 insertions, 429 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/deployment/JobType.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/deployment/JobType.java index 7aac0826b2b..1f546989b8d 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/deployment/JobType.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/deployment/JobType.java @@ -143,15 +143,15 @@ public enum JobType { private final String jobName; private final Map<SystemName, ZoneId> zones; - private final boolean isTest; + private final boolean isProductionTest; - JobType(String jobName, Map<SystemName, ZoneId> zones, boolean isTest) { + JobType(String jobName, Map<SystemName, ZoneId> zones, boolean isProductionTest) { if (zones.values().stream().map(ZoneId::environment).distinct().count() > 1) throw new IllegalArgumentException("All zones of a job must be in the same environment"); this.jobName = jobName; this.zones = zones; - this.isTest = isTest; + this.isProductionTest = isProductionTest; } JobType(String jobName, Map<SystemName, ZoneId> zones) { @@ -176,10 +176,10 @@ public enum JobType { public boolean isProduction() { return environment() == Environment.prod; } /** Returns whether this job runs tests */ - public boolean isTest() { return isTest; } + public boolean isTest() { return isProductionTest || environment().isTest(); } /** Returns whether this job deploys to a zone */ - public boolean isDeployment() { return ! (isProduction() && isTest); } + public boolean isDeployment() { return ! (isProduction() && isProductionTest); } /** Returns the environment of this job type, or null if it does not have an environment */ public Environment environment() { @@ -206,7 +206,7 @@ public enum JobType { /** Returns the job type for the given zone */ public static Optional<JobType> from(SystemName system, ZoneId zone) { - return from(system, zone, false); + return from(system, zone, zone.environment().isTest()); } /** Returns the production test job type for the given environment and region or null if none */ diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobProfile.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobProfile.java index 4c2b53d6ba2..88b3442bd6e 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobProfile.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobProfile.java @@ -56,13 +56,8 @@ public enum JobProfile { report)), production(EnumSet.of(deployReal, - installReal, - deployTester, - installTester, - startTests, - endTests), - EnumSet.of(deactivateTester, - report)), + installReal), + EnumSet.of(report)), productionTest(EnumSet.of(deployTester, installTester, diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentContext.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentContext.java index 2792a59b523..ebf64f90873 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentContext.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentContext.java @@ -331,7 +331,8 @@ public class DeploymentContext { if (job.type().environment().isManuallyDeployed()) return this; } - doTests(job); + if (job.type().isTest()) + doTests(job); doTeardown(job); return this; } @@ -440,7 +441,7 @@ public class DeploymentContext { // First step is always a deployment. runner.advance(currentRun(job)); - if ( ! job.type().environment().isManuallyDeployed()) + if (job.type().isTest()) doInstallTester(job); if (job.type() == JobType.stagingTest) { // Do the initial deployment and installation of the real application. @@ -453,8 +454,7 @@ public class DeploymentContext { assertEquals(Step.Status.succeeded, jobs.run(id).get().stepStatuses().get(Step.installInitialReal)); // All installation is complete and endpoints are ready, so setup may begin. - if (job.type().isDeployment()) - assertEquals(Step.Status.succeeded, jobs.run(id).get().stepStatuses().get(Step.installInitialReal)); + assertEquals(Step.Status.succeeded, jobs.run(id).get().stepStatuses().get(Step.installInitialReal)); assertEquals(Step.Status.succeeded, jobs.run(id).get().stepStatuses().get(Step.installTester)); assertEquals(Step.Status.succeeded, jobs.run(id).get().stepStatuses().get(Step.startStagingSetup)); diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java index ff66ab38d32..112b8066847 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java @@ -54,6 +54,7 @@ import static com.yahoo.vespa.hosted.controller.deployment.DeploymentContext.app import static com.yahoo.vespa.hosted.controller.deployment.DeploymentContext.publicCdApplicationPackage; import static com.yahoo.vespa.hosted.controller.deployment.DeploymentTester.instanceId; import static com.yahoo.vespa.hosted.controller.deployment.RunStatus.deploymentFailed; +import static com.yahoo.vespa.hosted.controller.deployment.RunStatus.installationFailed; import static com.yahoo.vespa.hosted.controller.deployment.Step.Status.failed; import static com.yahoo.vespa.hosted.controller.deployment.Step.Status.succeeded; import static com.yahoo.vespa.hosted.controller.deployment.Step.Status.unfinished; @@ -140,9 +141,6 @@ public class InternalStepRunnerTest { ZoneId zone = id.type().zone(system()); HostName host = tester.configServer().hostFor(instanceId, zone); - tester.setEndpoints(app.testerId().id(), JobType.productionUsCentral1.zone(system())); - tester.runner().run(); - tester.configServer().setConfigChangeActions(new ConfigChangeActions(singletonList(new RestartAction("cluster", "container", "search", @@ -165,7 +163,7 @@ public class InternalStepRunnerTest { tester.clock().advance(InternalStepRunner.installationTimeout.plus(Duration.ofSeconds(1))); tester.runner().run(); - assertEquals(RunStatus.error, tester.jobs().run(id).get().status()); + assertEquals(installationFailed, tester.jobs().run(id).get().status()); } @Test 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 db82adb4940..186534dd288 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 @@ -5,12 +5,15 @@ import com.yahoo.component.Version; import com.yahoo.config.provision.zone.ZoneId; import com.yahoo.container.jdisc.HttpResponse; import com.yahoo.vespa.hosted.controller.api.application.v4.model.DeployOptions; +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.ApplicationVersion; import com.yahoo.vespa.hosted.controller.api.integration.deployment.JobType; import com.yahoo.vespa.hosted.controller.application.ApplicationPackage; import com.yahoo.vespa.hosted.controller.deployment.ApplicationPackageBuilder; import com.yahoo.vespa.hosted.controller.deployment.DeploymentTester; +import com.yahoo.vespa.hosted.controller.deployment.InternalStepRunner; +import com.yahoo.vespa.hosted.controller.deployment.RunStatus; import org.json.JSONException; import org.json.JSONObject; import org.junit.Test; @@ -37,6 +40,7 @@ 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.DeploymentContext.applicationPackage; 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; @@ -80,15 +84,10 @@ public class JobControllerApiHandlerHelperTest { tester.runner().run(); assertEquals(deploymentFailed, tester.jobs().last(app.instanceId(), productionUsEast3).get().status()); - ZoneId usWest1 = productionUsWest1.zone(tester.controller().system()); - tester.configServer().convergeServices(app.instanceId(), usWest1); - tester.configServer().convergeServices(app.testerId().id(), usWest1); - tester.setEndpoints(app.instanceId(), usWest1); - tester.setEndpoints(app.testerId().id(), usWest1); tester.runner().run(); - tester.cloud().set(FAILURE); + tester.clock().advance(Duration.ofHours(1).plusSeconds(1)); tester.runner().run(); - assertEquals(testFailure, tester.jobs().last(app.instanceId(), productionUsWest1).get().status()); + assertEquals(installationFailed, tester.jobs().last(app.instanceId(), productionUsWest1).get().status()); assertEquals(revision2, app.deployment(productionUsCentral1.zone(tester.controller().system())).applicationVersion()); assertEquals(revision1, app.deployment(productionUsEast3.zone(tester.controller().system())).applicationVersion()); assertEquals(revision2, app.deployment(productionUsWest1.zone(tester.controller().system())).applicationVersion()); @@ -183,7 +182,6 @@ public class JobControllerApiHandlerHelperTest { private void compare(HttpResponse response, String expected) throws JSONException, IOException { ByteArrayOutputStream baos = new ByteArrayOutputStream(); response.render(baos); - System.err.println(baos.toString()); JSONObject actualJSON = new JSONObject(new String(baos.toByteArray())); JSONObject expectedJSON = new JSONObject(expected); assertEquals(expectedJSON.toString(), actualJSON.toString()); diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/deployment-overview-2.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/deployment-overview-2.json index fd1e8bc5f20..a8be282deaf 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/deployment-overview-2.json +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/deployment-overview-2.json @@ -23,8 +23,8 @@ { "id": 3, "url": "https://some.url:43/instance/default/job/system-test/run/run 3 of system-test for tenant.application", - "start": 2000, - "end": 2000, + "start": 3603000, + "end": 3603000, "status": "success", "versions": { "targetPlatform": "6.1.0", @@ -239,15 +239,15 @@ } } ], - "readyAt": 752000, - "delayedUntil": 752000, - "coolingDownUntil": 752000, + "readyAt": 4353000, + "delayedUntil": 4353000, + "coolingDownUntil": 4353000, "runs": [ { "id": 5, "url": "https://some.url:43/instance/default/job/staging-test/run/run 5 of staging-test for tenant.application", - "start": 102000, - "end": 102000, + "start": 3703000, + "end": 3703000, "status": "installationFailed", "versions": { "targetPlatform": "6.1.0", @@ -327,8 +327,8 @@ { "id": 4, "url": "https://some.url:43/instance/default/job/staging-test/run/run 4 of staging-test for tenant.application", - "start": 2000, - "end": 2000, + "start": 3603000, + "end": 3603000, "status": "installationFailed", "versions": { "targetPlatform": "6.1.0", @@ -408,8 +408,8 @@ { "id": 3, "url": "https://some.url:43/instance/default/job/staging-test/run/run 3 of staging-test for tenant.application", - "start": 2000, - "end": 2000, + "start": 3603000, + "end": 3603000, "status": "success", "versions": { "targetPlatform": "6.1.0", @@ -663,12 +663,12 @@ "sourceUrl": "repository1/tree/commit1" }, "toRun": [], - "readyAt": 2000, + "readyAt": 3603000, "runs": [ { "id": 3, "url": "https://some.url:43/instance/default/job/production-us-central-1/run/run 3 of production-us-central-1 for tenant.application", - "start": 2000, + "start": 3603000, "status": "running", "versions": { "targetPlatform": "6.1.0", @@ -688,14 +688,6 @@ }, "steps": [ { - "name": "deployTester", - "status": "succeeded" - }, - { - "name": "installTester", - "status": "unfinished" - }, - { "name": "deployReal", "status": "succeeded" }, @@ -704,20 +696,8 @@ "status": "unfinished" }, { - "name": "startTests", - "status": "unfinished" - }, - { - "name": "endTests", - "status": "unfinished" - }, - { - "name": "deactivateTester", - "status": "unfinished" - }, - { "name": "report", - "status": "unfinished" + "status": "succeeded" } ] }, @@ -745,14 +725,6 @@ }, "steps": [ { - "name": "deployTester", - "status": "succeeded" - }, - { - "name": "installTester", - "status": "succeeded" - }, - { "name": "deployReal", "status": "succeeded" }, @@ -761,18 +733,6 @@ "status": "succeeded" }, { - "name": "startTests", - "status": "succeeded" - }, - { - "name": "endTests", - "status": "succeeded" - }, - { - "name": "deactivateTester", - "status": "succeeded" - }, - { "name": "report", "status": "succeeded" } @@ -795,14 +755,6 @@ }, "steps": [ { - "name": "deployTester", - "status": "succeeded" - }, - { - "name": "installTester", - "status": "succeeded" - }, - { "name": "deployReal", "status": "succeeded" }, @@ -811,18 +763,6 @@ "status": "succeeded" }, { - "name": "startTests", - "status": "succeeded" - }, - { - "name": "endTests", - "status": "succeeded" - }, - { - "name": "deactivateTester", - "status": "succeeded" - }, - { "name": "report", "status": "succeeded" } @@ -1005,8 +945,8 @@ "id": 2, "url": "https://some.url:43/instance/default/job/production-us-west-1/run/run 2 of production-us-west-1 for tenant.application", "start": 1000, - "end": 1000, - "status": "testFailure", + "end": 3602000, + "status": "installationFailed", "versions": { "targetPlatform": "6.1.0", "targetApplication": { @@ -1025,34 +965,14 @@ }, "steps": [ { - "name": "deployTester", - "status": "succeeded" - }, - { - "name": "installTester", - "status": "succeeded" - }, - { "name": "deployReal", "status": "succeeded" }, { "name": "installReal", - "status": "succeeded" - }, - { - "name": "startTests", - "status": "succeeded" - }, - { - "name": "endTests", "status": "failed" }, { - "name": "deactivateTester", - "status": "succeeded" - }, - { "name": "report", "status": "succeeded" } @@ -1075,14 +995,6 @@ }, "steps": [ { - "name": "deployTester", - "status": "succeeded" - }, - { - "name": "installTester", - "status": "succeeded" - }, - { "name": "deployReal", "status": "succeeded" }, @@ -1091,18 +1003,6 @@ "status": "succeeded" }, { - "name": "startTests", - "status": "succeeded" - }, - { - "name": "endTests", - "status": "succeeded" - }, - { - "name": "deactivateTester", - "status": "succeeded" - }, - { "name": "report", "status": "succeeded" } @@ -1173,34 +1073,14 @@ }, "steps": [ { - "name": "deployTester", - "status": "failed" - }, - { - "name": "installTester", - "status": "unfinished" - }, - { "name": "deployReal", - "status": "unfinished" + "status": "failed" }, { "name": "installReal", "status": "unfinished" }, { - "name": "startTests", - "status": "unfinished" - }, - { - "name": "endTests", - "status": "unfinished" - }, - { - "name": "deactivateTester", - "status": "succeeded" - }, - { "name": "report", "status": "succeeded" } @@ -1223,14 +1103,6 @@ }, "steps": [ { - "name": "deployTester", - "status": "succeeded" - }, - { - "name": "installTester", - "status": "succeeded" - }, - { "name": "deployReal", "status": "succeeded" }, @@ -1239,18 +1111,6 @@ "status": "succeeded" }, { - "name": "startTests", - "status": "succeeded" - }, - { - "name": "endTests", - "status": "succeeded" - }, - { - "name": "deactivateTester", - "status": "succeeded" - }, - { "name": "report", "status": "succeeded" } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/deployment-overview.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/deployment-overview.json index 33c83a30e38..027cca5dad2 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/deployment-overview.json +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/deployment-overview.json @@ -340,14 +340,6 @@ }, "steps": [ { - "name": "deployTester", - "status": "succeeded" - }, - { - "name": "installTester", - "status": "succeeded" - }, - { "name": "deployReal", "status": "succeeded" }, @@ -356,18 +348,6 @@ "status": "succeeded" }, { - "name": "startTests", - "status": "succeeded" - }, - { - "name": "endTests", - "status": "succeeded" - }, - { - "name": "deactivateTester", - "status": "succeeded" - }, - { "name": "report", "status": "succeeded" } @@ -415,14 +395,6 @@ }, "steps": [ { - "name": "deployTester", - "status": "unfinished" - }, - { - "name": "installTester", - "status": "unfinished" - }, - { "name": "deployReal", "status": "unfinished" }, @@ -431,18 +403,6 @@ "status": "unfinished" }, { - "name": "startTests", - "status": "unfinished" - }, - { - "name": "endTests", - "status": "unfinished" - }, - { - "name": "deactivateTester", - "status": "unfinished" - }, - { "name": "report", "status": "unfinished" } @@ -491,14 +451,6 @@ }, "steps": [ { - "name": "deployTester", - "status": "unfinished" - }, - { - "name": "installTester", - "status": "unfinished" - }, - { "name": "deployReal", "status": "unfinished" }, @@ -507,18 +459,6 @@ "status": "unfinished" }, { - "name": "startTests", - "status": "unfinished" - }, - { - "name": "endTests", - "status": "unfinished" - }, - { - "name": "deactivateTester", - "status": "unfinished" - }, - { "name": "report", "status": "unfinished" } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/dev-aws-us-east-2a-runs.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/dev-aws-us-east-2a-runs.json index fe90ddd772e..f7185d373c4 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/dev-aws-us-east-2a-runs.json +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/dev-aws-us-east-2a-runs.json @@ -2,8 +2,8 @@ "1": { "id": 1, "status": "success", - "start": 102000, - "end": 102000, + "start": 3703000, + "end": 3703000, "wantedPlatform": "7.1", "wantedApplication": { "hash": "unknown" diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/jobs.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/jobs.json index dc37c3b4bb4..3ab7078ae6a 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/jobs.json +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/jobs.json @@ -230,19 +230,13 @@ "commit": "commit1" }, "steps": { - "deployTester": "succeeded", - "installTester": "succeeded", "deployReal": "succeeded", "installReal": "succeeded", - "startTests": "succeeded", - "endTests": "succeeded", - "deactivateTester": "succeeded", "report": "succeeded" }, "tasks": { "deploy": "succeeded", - "install": "succeeded", - "test": "succeeded" + "install": "succeeded" }, "log": "http://localhost:8080/application/v4/tenant/tenant1/application/application1/instance/instance1/job/production-us-central-1/run/1" } @@ -268,13 +262,8 @@ "commit": "commit1" }, "steps": { - "deployTester": "unfinished", - "installTester": "unfinished", "deployReal": "unfinished", "installReal": "unfinished", - "startTests": "unfinished", - "endTests": "unfinished", - "deactivateTester": "unfinished", "report": "unfinished" }, "tasks": {}, @@ -302,13 +291,8 @@ "commit": "commit1" }, "steps": { - "deployTester": "unfinished", - "installTester": "unfinished", "deployReal": "unfinished", "installReal": "unfinished", - "startTests": "unfinished", - "endTests": "unfinished", - "deactivateTester": "unfinished", "report": "unfinished" }, "tasks": {}, diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/overview-user-instance.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/overview-user-instance.json index cf47e8671b0..95afb12dcbf 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/overview-user-instance.json +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/overview-user-instance.json @@ -1,55 +1,54 @@ { + "lastVersions": { + "platform": { + "platform": "7.1", + "at": 0, + "completed": "0 of 0 complete" + }, + "application": { + "application": { + "hash": "1.0.3-commit1", + "build": 3, + "source": { + "gitRepository": "repository1", + "gitBranch": "master", + "gitCommit": "commit1" + }, + "sourceUrl": "repository1/tree/commit1", + "commit": "commit1" + }, + "at": 1000, + "completed": "0 of 0 complete" + } + }, + "deploying": {}, + "deployments": [], + "jobs": {}, "devJobs": { "dev-aws-us-east-2a": { "runs": [ { + "id": 1, + "status": "success", + "start": 3703000, + "end": 3703000, "wantedPlatform": "7.1", - "log": "https://some.url:43/root/dev-aws-us-east-2a/run/1", "wantedApplication": { "hash": "unknown" }, - "start": 102000, - "end": 102000, - "id": 1, "steps": { "deployReal": "succeeded", "installReal": "succeeded", "copyVespaLogs": "succeeded" }, "tasks": { - "install": "succeeded", - "deploy": "succeeded" + "deploy": "succeeded", + "install": "succeeded" }, - "status": "success" + "log": "https://some.url:43/root/dev-aws-us-east-2a/run/1" } ], "url": "https://some.url:43/root/dev-aws-us-east-2a" } - }, - "deployments": [], - "lastVersions": { - "application": { - "at": 1000, - "application": { - "build": 3, - "source": { - "gitRepository": "repository1", - "gitCommit": "commit1", - "gitBranch": "master" - }, - "sourceUrl": "repository1/tree/commit1", - "commit": "commit1", - "hash": "1.0.3-commit1" - }, - "completed": "0 of 0 complete" - }, - "platform": { - "at": 0, - "completed": "0 of 0 complete", - "platform": "7.1" - } - }, - "deploying": {}, - "jobs": {} + } } - 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 ad00476154c..9510b06fb42 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 @@ -37,7 +37,7 @@ "deployments": [ { "us-central-1": { - "at": 2000, + "at": 3603000, "platform": "6.1", "application": { "hash": "1.0.3-commit1", @@ -97,8 +97,8 @@ { "id": 3, "status": "success", - "start": 2000, - "end": 2000, + "start": 3603000, + "end": 3603000, "wantedPlatform": "6.1", "wantedApplication": { "hash": "1.0.3-commit1", @@ -265,8 +265,8 @@ { "id": 5, "status": "installationFailed", - "start": 102000, - "end": 102000, + "start": 3703000, + "end": 3703000, "wantedPlatform": "6.1", "wantedApplication": { "hash": "1.0.3-commit1", @@ -313,8 +313,8 @@ { "id": 4, "status": "installationFailed", - "start": 2000, - "end": 2000, + "start": 3603000, + "end": 3603000, "wantedPlatform": "6.1", "wantedApplication": { "hash": "1.0.3-commit1", @@ -361,8 +361,8 @@ { "id": 3, "status": "success", - "start": 2000, - "end": 2000, + "start": 3603000, + "end": 3603000, "wantedPlatform": "6.1", "wantedApplication": { "hash": "1.0.3-commit1", @@ -510,7 +510,7 @@ { "id": 3, "status": "running", - "start": 2000, + "start": 3603000, "wantedPlatform": "6.1", "wantedApplication": { "hash": "1.0.3-commit1", @@ -536,14 +536,9 @@ "commit": "commit1" }, "steps": { - "deployTester": "succeeded", - "installTester": "unfinished", "deployReal": "succeeded", "installReal": "unfinished", - "startTests": "unfinished", - "endTests": "unfinished", - "deactivateTester": "unfinished", - "report": "unfinished" + "report": "succeeded" }, "tasks": { "deploy": "succeeded", @@ -581,19 +576,13 @@ "commit": "commit1" }, "steps": { - "deployTester": "succeeded", - "installTester": "succeeded", "deployReal": "succeeded", "installReal": "succeeded", - "startTests": "succeeded", - "endTests": "succeeded", - "deactivateTester": "succeeded", "report": "succeeded" }, "tasks": { "deploy": "succeeded", - "install": "succeeded", - "test": "succeeded" + "install": "succeeded" }, "log": "https://some.url:43/root/production-us-central-1/run/2" }, @@ -615,19 +604,13 @@ "commit": "commit1" }, "steps": { - "deployTester": "succeeded", - "installTester": "succeeded", "deployReal": "succeeded", "installReal": "succeeded", - "startTests": "succeeded", - "endTests": "succeeded", - "deactivateTester": "succeeded", "report": "succeeded" }, "tasks": { "deploy": "succeeded", - "install": "succeeded", - "test": "succeeded" + "install": "succeeded" }, "log": "https://some.url:43/root/production-us-central-1/run/1" } @@ -789,9 +772,9 @@ }, { "id": 2, - "status": "testFailure", + "status": "installationFailed", "start": 1000, - "end": 1000, + "end": 3602000, "wantedPlatform": "6.1", "wantedApplication": { "hash": "1.0.2-commit1", @@ -817,19 +800,13 @@ "commit": "commit1" }, "steps": { - "deployTester": "succeeded", - "installTester": "succeeded", "deployReal": "succeeded", - "installReal": "succeeded", - "startTests": "succeeded", - "endTests": "failed", - "deactivateTester": "succeeded", + "installReal": "failed", "report": "succeeded" }, "tasks": { "deploy": "succeeded", - "install": "succeeded", - "test": "failed" + "install": "failed" }, "log": "https://some.url:43/root/production-us-west-1/run/2" }, @@ -851,19 +828,13 @@ "commit": "commit1" }, "steps": { - "deployTester": "succeeded", - "installTester": "succeeded", "deployReal": "succeeded", "installReal": "succeeded", - "startTests": "succeeded", - "endTests": "succeeded", - "deactivateTester": "succeeded", "report": "succeeded" }, "tasks": { "deploy": "succeeded", - "install": "succeeded", - "test": "succeeded" + "install": "succeeded" }, "log": "https://some.url:43/root/production-us-west-1/run/1" } @@ -933,16 +904,13 @@ "commit": "commit1" }, "steps": { - "deployTester": "failed", - "installTester": "unfinished", - "deployReal": "unfinished", + "deployReal": "failed", "installReal": "unfinished", - "startTests": "unfinished", - "endTests": "unfinished", - "deactivateTester": "succeeded", "report": "succeeded" }, - "tasks": {}, + "tasks": { + "deploy": "failed" + }, "log": "https://some.url:43/root/production-us-east-3/run/2" }, { @@ -963,19 +931,13 @@ "commit": "commit1" }, "steps": { - "deployTester": "succeeded", - "installTester": "succeeded", "deployReal": "succeeded", "installReal": "succeeded", - "startTests": "succeeded", - "endTests": "succeeded", - "deactivateTester": "succeeded", "report": "succeeded" }, "tasks": { "deploy": "succeeded", - "install": "succeeded", - "test": "succeeded" + "install": "succeeded" }, "log": "https://some.url:43/root/production-us-east-3/run/1" } 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 4238ce4b834..a7825681f4b 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 @@ -94,8 +94,8 @@ "3": { "id": 3, "status": "success", - "start": 2000, - "end": 2000, + "start": 3603000, + "end": 3603000, "wantedPlatform": "6.1", "wantedApplication": { "hash": "1.0.3-commit1", @@ -146,8 +146,8 @@ "4": { "id": 4, "status": "installationFailed", - "start": 2000, - "end": 2000, + "start": 3603000, + "end": 3603000, "wantedPlatform": "6.1", "wantedApplication": { "hash": "1.0.3-commit1", @@ -194,8 +194,8 @@ "5": { "id": 5, "status": "installationFailed", - "start": 102000, - "end": 102000, + "start": 3703000, + "end": 3703000, "wantedPlatform": "6.1", "wantedApplication": { "hash": "1.0.3-commit1", diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/staging-test-log.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/staging-test-log.json index 273887c26c4..8ade8795c86 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/staging-test-log.json +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/staging-test-log.json @@ -4,122 +4,122 @@ "log": { "deployTester": [ { - "at": 102000, + "at": 3703000, "type": "info", "message": "No services requiring restart." }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "Deployment successful." }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "foo" } ], "installTester": [ { - "at": 102000, + "at": 3703000, "type": "info", "message": "host-tenant:application:default-t-staging.us-east-3: unorchestrated" }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "--- platform 6.1" }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "--- container on port 43 has config generation 1, wanted is 2" }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "host-tenant:application:default-t-staging.us-east-3: unorchestrated" }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "--- platform 6.1" }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "--- container on port 43 has config generation 1, wanted is 2" }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "host-tenant:application:default-t-staging.us-east-3: unorchestrated" }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "--- platform 6.1" }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "--- container on port 43 has config generation 1, wanted is 2" } ], "deployInitialReal": [ { - "at": 102000, + "at": 3703000, "type": "info", "message": "Deploying platform version 6.1 and application version 1.0.1-commit1 ..." }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "No services requiring restart." }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "Deployment successful." }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "foo" } ], "installInitialReal": [ { - "at": 102000, + "at": 3703000, "type": "info", "message": "host-tenant:application:default-staging.us-east-3: unorchestrated" }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "--- platform 6.1" }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "--- container on port 43 has config generation 1, wanted is 2" }, { - "at": 102000, + "at": 3703000, "type": "info", "message": "Deployment expired before installation was successful." } ], "deactivateReal": [ { - "at": 102000, + "at": 3703000, "type": "info", "message": "Deactivating deployment of tenant.application in staging.us-east-3 ..." } ], "deactivateTester": [ { - "at": 102000, + "at": 3703000, "type": "info", "message": "Deactivating tester of tenant.application in staging.us-east-3 ..." } @@ -129,19 +129,19 @@ "steps": { "deployTester": { "status": "succeeded", - "startMillis": 102000 + "startMillis": 3703000 }, "installTester": { "status": "unfinished", - "startMillis": 102000 + "startMillis": 3703000 }, "deployInitialReal": { "status": "succeeded", - "startMillis": 102000 + "startMillis": 3703000 }, "installInitialReal": { "status": "failed", - "startMillis": 102000, + "startMillis": 3703000, "convergence": { "nodes": 1, "down": 0, @@ -177,19 +177,19 @@ }, "copyVespaLogs": { "status": "succeeded", - "startMillis": 102000 + "startMillis": 3703000 }, "deactivateReal": { "status": "succeeded", - "startMillis": 102000 + "startMillis": 3703000 }, "deactivateTester": { "status": "succeeded", - "startMillis": 102000 + "startMillis": 3703000 }, "report": { "status": "succeeded", - "startMillis": 102000 + "startMillis": 3703000 } } } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/us-east-3-log-without-first.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/us-east-3-log-without-first.json index 0fa4c541832..6c9315ca64b 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/us-east-3-log-without-first.json +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/responses/us-east-3-log-without-first.json @@ -1,50 +1,27 @@ { + "active": false, + "status": "deploymentFailed", "log": { - "deployTester": [ + "deployReal": [ { "at": 1000, "type": "info", "message": "Failed to deploy application: ERROR!" } - ], - "deactivateTester": [ - { - "at": 1000, - "type": "info", - "message": "Deactivating tester of tenant.application in prod.us-east-3 ..." - } ] }, - "active": false, - "lastId": 2, + "lastId": 1, "steps": { - "startTests": { - "status": "unfinished" - }, - "deployTester": { - "startMillis": 1000, - "status": "failed" - }, - "report": { - "startMillis": 1000, - "status": "succeeded" - }, - "installTester": { - "status": "unfinished" - }, "deployReal": { - "status": "unfinished" + "status": "failed", + "startMillis": 1000 }, "installReal": { "status": "unfinished" }, - "deactivateTester": { - "startMillis": 1000, - "status": "succeeded" - }, - "endTests": { - "status": "unfinished" + "report": { + "status": "succeeded", + "startMillis": 1000 } - }, - "status": "deploymentFailed" + } } |