diff options
author | jonmv <venstad@gmail.com> | 2023-05-15 12:02:17 +0200 |
---|---|---|
committer | jonmv <venstad@gmail.com> | 2023-05-15 12:02:17 +0200 |
commit | ed584bf928e2c83cea57b7b2966956777b147bad (patch) | |
tree | 0fc5638f9d78a0d539ba07a8770c2627931b6454 /controller-server/src/test | |
parent | 7e39f8036dbeb3722fca3a50fdc9c86129011cf0 (diff) |
Add submission timestamp for prod packages, and show in detail API
Diffstat (limited to 'controller-server/src/test')
6 files changed, 31 insertions, 17 deletions
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java index 04c8c46e1ef..693a74f8651 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java @@ -109,7 +109,7 @@ public class ControllerTest { context.submit(applicationPackage); RevisionId id = RevisionId.forProduction(1); Version compileVersion = new Version("6.1"); - assertEquals(new ApplicationVersion(id, Optional.of(DeploymentContext.defaultSourceRevision), Optional.of("a@b"), Optional.of(compileVersion), Optional.empty(), Optional.of(Instant.ofEpochSecond(1)), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), true, false, Optional.empty(), 0), + assertEquals(new ApplicationVersion(id, Optional.of(DeploymentContext.defaultSourceRevision), Optional.of("a@b"), Optional.of(compileVersion), Optional.empty(), Optional.of(Instant.ofEpochSecond(1)), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), true, false, Optional.empty(), Optional.empty(), 0), context.application().revisions().get(context.instance().change().revision().get()), "Application version is known from completion of initial job"); context.runJob(systemTest); @@ -1339,7 +1339,7 @@ public class ControllerTest { ApplicationPackage applicationPackage = ApplicationPackageBuilder.fromDeploymentXml(deploymentXml); byte[] testPackage = ApplicationPackage.filesZip(Map.of("tests/staging-test/foo.json", new byte[0])); var app = tester.newDeploymentContext(); - tester.jobs().submit(app.application().id(), Submission.basic(applicationPackage, testPackage), 1); + tester.jobs().submit(app.application().id(), new Submission(applicationPackage, testPackage, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Instant.EPOCH, 0), 1); assertEquals(List.of(new Notification(tester.clock().instant(), Type.testPackage, Level.warning, 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 d32ec03469e..da982fa67a8 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 @@ -318,7 +318,7 @@ public class DeploymentContext { .projectId() .orElse(1000); // These are really set through submission, so just pick one if it hasn't been set. var testerpackage = new byte[]{ (byte) (salt >> 56), (byte) (salt >> 48), (byte) (salt >> 40), (byte) (salt >> 32), (byte) (salt >> 24), (byte) (salt >> 16), (byte) (salt >> 8), (byte) salt }; - lastSubmission = jobs.submit(applicationId, new Submission(applicationPackage, testerpackage, Optional.empty(), sourceRevision, Optional.of("a@b"), Optional.empty(), risk), projectId).id(); + lastSubmission = jobs.submit(applicationId, new Submission(applicationPackage, testerpackage, Optional.empty(), sourceRevision, Optional.of("a@b"), Optional.empty(), tester.clock().instant(), risk), projectId).id(); return this; } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/JobRunnerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/JobRunnerTest.java index f761c605f9d..b0fe2867ab7 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/JobRunnerTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/JobRunnerTest.java @@ -24,6 +24,7 @@ import com.yahoo.vespa.hosted.controller.integration.MetricsMock; import org.junit.jupiter.api.Test; import java.time.Duration; +import java.time.Instant; import java.util.Collections; import java.util.EnumMap; import java.util.List; @@ -92,7 +93,7 @@ public class JobRunnerTest { TenantAndApplicationId appId = tester.createApplication("tenant", "real", "default").id(); ApplicationId id = appId.defaultInstance(); byte[] testPackageBytes = new byte[0]; - jobs.submit(appId, Submission.basic(applicationPackage, testPackageBytes), 2); + jobs.submit(appId, submission(applicationPackage, testPackageBytes), 2); start(jobs, id, systemTest); try { start(jobs, id, systemTest); @@ -128,7 +129,7 @@ public class JobRunnerTest { TenantAndApplicationId appId = tester.createApplication("tenant", "real", "default").id(); ApplicationId id = appId.defaultInstance(); byte[] testPackageBytes = new byte[0]; - jobs.submit(appId, Submission.basic(applicationPackage, testPackageBytes), 2); + jobs.submit(appId, submission(applicationPackage, testPackageBytes), 2); Supplier<Run> run = () -> jobs.last(id, systemTest).get(); start(jobs, id, systemTest); @@ -236,7 +237,7 @@ public class JobRunnerTest { TenantAndApplicationId appId = tester.createApplication("tenant", "real", "default").id(); ApplicationId id = appId.defaultInstance(); byte[] testPackageBytes = new byte[0]; - jobs.submit(appId, Submission.basic(applicationPackage, testPackageBytes), 2); + jobs.submit(appId, submission(applicationPackage, testPackageBytes), 2); RunId runId = new RunId(id, systemTest, 1); start(jobs, id, systemTest); @@ -276,7 +277,7 @@ public class JobRunnerTest { ApplicationId instanceId = appId.defaultInstance(); JobId jobId = new JobId(instanceId, systemTest); byte[] testPackageBytes = new byte[0]; - jobs.submit(appId, Submission.basic(applicationPackage, testPackageBytes), 2); + jobs.submit(appId, submission(applicationPackage, testPackageBytes), 2); assertFalse(jobs.lastSuccess(jobId).isPresent()); for (int i = 0; i < jobs.historyLength(); i++) { @@ -372,7 +373,7 @@ public class JobRunnerTest { TenantAndApplicationId appId = tester.createApplication("tenant", "real", "default").id(); ApplicationId id = appId.defaultInstance(); byte[] testPackageBytes = new byte[0]; - jobs.submit(appId, Submission.basic(applicationPackage, testPackageBytes), 2); + jobs.submit(appId, submission(applicationPackage, testPackageBytes), 2); start(jobs, id, systemTest); tester.clock().advance(JobRunner.jobTimeout.plus(Duration.ofSeconds(1))); @@ -390,7 +391,7 @@ public class JobRunnerTest { TenantAndApplicationId appId = tester.createApplication("tenant", "real", "default").id(); ApplicationId id = appId.defaultInstance(); byte[] testPackageBytes = new byte[0]; - jobs.submit(appId, Submission.basic(applicationPackage, testPackageBytes), 2); + jobs.submit(appId, submission(applicationPackage, testPackageBytes), 2); for (Step step : JobProfile.of(systemTest).steps()) outcomes.put(step, running); @@ -475,4 +476,8 @@ public class JobRunnerTest { }; } + private static Submission submission(ApplicationPackage applicationPackage, byte[] testPackage) { + return new Submission(applicationPackage, testPackage, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Instant.EPOCH, 0); + } + } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/ApplicationSerializerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/ApplicationSerializerTest.java index b71d3cf838b..69b473dce87 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/ApplicationSerializerTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/ApplicationSerializerTest.java @@ -105,13 +105,14 @@ public class ApplicationSerializerTest { true, false, Optional.of("~(˘▾˘)~"), + Optional.of(Instant.ofEpochMilli(496)), 3); assertEquals("https://github/org/repo/tree/commit1", applicationVersion1.sourceUrl().get()); RevisionId id = RevisionId.forDevelopment(31, new JobId(id1, DeploymentContext.productionUsEast3)); SourceRevision source = new SourceRevision("repo1", "branch1", "commit1"); Version compileVersion = Version.fromString("6.3.1"); - ApplicationVersion applicationVersion2 = new ApplicationVersion(id, Optional.of(source), Optional.of("a@b"), Optional.of(compileVersion), Optional.empty(), Optional.of(Instant.ofEpochMilli(496)), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), true, false, Optional.empty(), 0); + ApplicationVersion applicationVersion2 = new ApplicationVersion(id, Optional.of(source), Optional.of("a@b"), Optional.of(compileVersion), Optional.empty(), Optional.of(Instant.ofEpochMilli(496)), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), true, false, Optional.empty(), Optional.empty(), 0); Instant activityAt = Instant.parse("2018-06-01T10:15:30.00Z"); deployments.add(new Deployment(zone1, CloudAccount.empty, applicationVersion1.id(), Version.fromString("1.2.3"), Instant.ofEpochMilli(3), DeploymentMetrics.none, DeploymentActivity.none, QuotaUsage.none, OptionalDouble.empty())); @@ -179,6 +180,7 @@ public class ApplicationSerializerTest { assertEquals(original.revisions().last().get().hasPackage(), serialized.revisions().last().get().hasPackage()); assertEquals(original.revisions().last().get().shouldSkip(), serialized.revisions().last().get().shouldSkip()); assertEquals(original.revisions().last().get().description(), serialized.revisions().last().get().description()); + assertEquals(original.revisions().last().get().submittedAt(), serialized.revisions().last().get().submittedAt()); assertEquals(original.revisions().last().get().risk(), serialized.revisions().last().get().risk()); assertEquals(original.revisions().withPackage(), serialized.revisions().withPackage()); assertEquals(original.revisions().production(), serialized.revisions().production()); 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 b103b579166..19b3d5dc2d7 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 @@ -1266,21 +1266,24 @@ "compileVersion": "6.1.0", "sourceUrl": "repository1/tree/commit1", "commit": "commit1", - "deployable": true + "deployable": true, + "submittedAt": 14403000 }, { "build": 2, "compileVersion": "6.1.0", "sourceUrl": "repository1/tree/commit1", "commit": "commit1", - "deployable": true + "deployable": true, + "submittedAt": 1000 }, { "build": 1, "compileVersion": "6.1.0", "sourceUrl": "repository1/tree/commit1", "commit": "commit1", - "deployable": true + "deployable": true, + "submittedAt": 0 } ] } 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 500f66a7cdb..1d115049b35 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 @@ -706,7 +706,8 @@ "commit": "commit1", "description": "my best commit yet", "risk": 9001, - "deployable": true + "deployable": true, + "submittedAt": 1600000000000 }, { "build": 3, @@ -715,7 +716,8 @@ "commit": "commit1", "description": "my best commit yet", "risk": 9001, - "deployable": false + "deployable": false, + "submittedAt": 1600000000000 }, { "build": 2, @@ -724,7 +726,8 @@ "commit": "commit1", "description": "my best commit yet", "risk": 9001, - "deployable": false + "deployable": false, + "submittedAt": 1600000000000 }, { "build": 1, @@ -733,7 +736,8 @@ "commit": "commit1", "description": "my best commit yet", "risk": 9001, - "deployable": true + "deployable": true, + "submittedAt": 1600000000000 } ] } |