diff options
author | Jon Marius Venstad <jonmv@users.noreply.github.com> | 2018-11-04 17:49:53 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-04 17:49:53 +0100 |
commit | 22993f49aa4c011b08b0e070334c2da789c563e2 (patch) | |
tree | f116fc18655c0cd2bcde1dc7df31a1d36d1fb967 | |
parent | 04a3bd4d2176aff7544a9135fb1ccb6e25d70252 (diff) | |
parent | 8642c50977855bc95d24f88742427fbf97a8c163 (diff) |
Merge pull request #7560 from vespa-engine/jvenstad/expose-paused-status-in-API
Expose pause information in job API
-rw-r--r-- | controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/JobControllerApiHandlerHelper.java | 6 |
1 files changed, 5 insertions, 1 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 34014f24862..fa5d713d6b3 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 @@ -203,6 +203,8 @@ class JobControllerApiHandlerHelper { private static void jobTypeToSlime(Cursor jobObject, Controller controller, Application application, JobType type, DeploymentSteps steps, Map<JobType, Versions> pendingProduction, Map<JobType, Run> running, URI baseUriForJob) { + application.deploymentJobs().statusOf(type).ifPresent(status -> status.pausedUntil().ifPresent(until -> + jobObject.setLong("pausedUntil", until))); int runs = 0; Cursor runArray = jobObject.setArray("runs"); if (type.isTest()) { @@ -239,7 +241,9 @@ class JobControllerApiHandlerHelper { runObject.setString("status", "pending"); versionsToSlime(runObject, pendingProduction.get(type)); Cursor pendingObject = runObject.setObject("tasks"); - if ( ! controller.applications().deploymentTrigger().triggerAt(controller.clock().instant(), type, versions, application)) + if (application.deploymentJobs().statusOf(type).map(status -> status.pausedUntil().isPresent()).orElse(false)) + pendingObject.setString("paused", "pending"); + else if ( ! controller.applications().deploymentTrigger().triggerAt(controller.clock().instant(), type, versions, application)) pendingObject.setString("cooldown", "failed"); else { int pending = 0; |