diff options
author | Jon Marius Venstad <venstad@gmail.com> | 2019-10-08 15:13:00 +0200 |
---|---|---|
committer | Jon Marius Venstad <venstad@gmail.com> | 2019-10-09 13:42:32 +0200 |
commit | ca2c686923ed6362414875390f41d1ebc9a08037 (patch) | |
tree | e69c7f2ae85dd2e51a919b851a8a674a896d3cf6 /controller-server | |
parent | c047a2364581b470d367fc345c8031a38aaf9af8 (diff) |
Prepare to kill component job type
Diffstat (limited to 'controller-server')
4 files changed, 8 insertions, 23 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/application/DeploymentJobs.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/application/DeploymentJobs.java index da168345c18..bc2b18005b6 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/application/DeploymentJobs.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/application/DeploymentJobs.java @@ -9,17 +9,13 @@ import com.yahoo.vespa.hosted.controller.api.integration.deployment.JobType; import com.yahoo.vespa.hosted.controller.api.integration.deployment.SourceRevision; import java.util.Collection; -import java.util.HashMap; import java.util.LinkedHashMap; import java.util.Map; import java.util.Objects; import java.util.Optional; import java.util.OptionalLong; -import java.util.function.Function; import java.util.function.UnaryOperator; -import static java.util.stream.Collectors.toMap; - /** * Information about which deployment jobs an application should run and their current status. * This is immutable. diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/Versions.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/Versions.java index 385eaae8215..5d4a380411d 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/Versions.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/Versions.java @@ -143,12 +143,7 @@ public class Versions { private static ApplicationVersion defaultApplicationVersion(Application application) { return application.oldestDeployedApplication() - .or(() -> application.instances().values().stream() - .flatMap(instance -> instance.deploymentJobs().statusOf(JobType.component) - .flatMap(JobStatus::lastSuccess) - .map(JobStatus.JobRun::application) - .stream()) - .findAny()) + .or(application::latestVersion) .orElse(ApplicationVersion.unknown); } diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/ApplicationSerializer.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/ApplicationSerializer.java index 6bae3c6d834..c15381791e6 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/ApplicationSerializer.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/ApplicationSerializer.java @@ -281,7 +281,8 @@ public class ApplicationSerializer { private void jobStatusToSlime(Collection<JobStatus> jobStatuses, Cursor jobStatusArray) { for (JobStatus jobStatus : jobStatuses) - toSlime(jobStatus, jobStatusArray.addObject()); + if (jobStatus.type() != JobType.component) + toSlime(jobStatus, jobStatusArray.addObject()); } private void toSlime(JobStatus jobStatus, Cursor object) { @@ -362,7 +363,7 @@ public class ApplicationSerializer { Set<PublicKey> deployKeys = deployKeysFromSlime(root.field(pemDeployKeysField)); List<Instance> instances = instancesFromSlime(id, deploymentSpec, root.field(instancesField)); OptionalLong projectId = Serializers.optionalLong(root.field(projectIdField)); - Optional<ApplicationVersion> latestVersion = latestVersionFromSlimeWithFallback(root.field(latestVersionField), instances); + Optional<ApplicationVersion> latestVersion = latestVersionFromSlime(root.field(latestVersionField)); boolean builtInternally = root.field(builtInternallyField).asBool(); return new Application(id, createdAt, deploymentSpec, validationOverrides, deploying, outstandingChange, @@ -370,15 +371,11 @@ public class ApplicationSerializer { deployKeys, projectId, builtInternally, latestVersion, instances); } - private Optional<ApplicationVersion> latestVersionFromSlimeWithFallback(Inspector latestVersionObject, List<Instance> instances) { + private Optional<ApplicationVersion> latestVersionFromSlime(Inspector latestVersionObject) { if (latestVersionObject.valid()) return Optional.of(applicationVersionFromSlime(latestVersionObject)); - return instances.stream() - .flatMap(instance -> instance.deploymentJobs().statusOf(JobType.component).stream()) - .flatMap(status -> status.lastSuccess().stream()) - .map(JobStatus.JobRun::application) - .findFirst(); + return Optional.empty(); } private List<Instance> instancesFromSlime(TenantAndApplicationId id, DeploymentSpec deploymentSpec, Inspector field) { 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 aa413aafcf9..5c407f8d090 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 @@ -103,8 +103,6 @@ public class ApplicationSerializerTest { JobStatus.JobRun componentJob = JobStatus.JobRun.triggering(Version.emptyVersion, applicationVersion1, empty(), empty(), "New commit", Instant.ofEpochMilli(400)) .completion(100, Instant.ofEpochMilli(500)); - statusList.add(JobStatus.initial(JobType.component) - .withCompletion(componentJob, empty())); statusList.add(JobStatus.initial(JobType.systemTest) .withTriggering(Version.fromString("5.6.7"), ApplicationVersion.unknown, empty(), "Test", Instant.ofEpochMilli(7)) .withCompletion(30, empty(), Instant.ofEpochMilli(8)) @@ -149,15 +147,14 @@ public class ApplicationSerializerTest { Set.of(publicKey, otherPublicKey), projectId, true, - empty(), + Optional.of(applicationVersion1), instances); Application serialized = APPLICATION_SERIALIZER.fromSlime(APPLICATION_SERIALIZER.toSlime(original)); assertEquals(original.id(), serialized.id()); assertEquals(original.createdAt(), serialized.createdAt()); - assertEquals(applicationVersion1, serialized.latestVersion().get()); // TODO jonmv: remove once this is released - assertEquals(applicationVersion1, APPLICATION_SERIALIZER.fromSlime(APPLICATION_SERIALIZER.toSlime(serialized)).latestVersion().get()); + assertEquals(original.latestVersion(), serialized.latestVersion()); assertEquals(original.deploymentSpec().xmlForm(), serialized.deploymentSpec().xmlForm()); assertEquals(original.validationOverrides().xmlForm(), serialized.validationOverrides().xmlForm()); |