fixed job completion
diff --git a/leader-mesos/src/main/kotlin/org/apache/amaterasu/leader/mesos/JobScheduler.kt b/leader-mesos/src/main/kotlin/org/apache/amaterasu/leader/mesos/JobScheduler.kt
index 21f4c02..ef40003 100644
--- a/leader-mesos/src/main/kotlin/org/apache/amaterasu/leader/mesos/JobScheduler.kt
+++ b/leader-mesos/src/main/kotlin/org/apache/amaterasu/leader/mesos/JobScheduler.kt
@@ -199,7 +199,7 @@
val runnerProvider = frameworkProvider!!.getRunnerProvider(actionData.typeId)
- listener.printNotification( Notification("", "provider ${runnerProvider::class.qualifiedName}", NotificationType.Info, NotificationLevel.Execution))
+ listener.printNotification(Notification("", "provider ${runnerProvider::class.qualifiedName}", NotificationType.Info, NotificationLevel.Execution))
val execData = DataLoader.getExecutorDataBytes(env, config)
val executorId = taskId.value + "-" + UUID.randomUUID()
@@ -275,23 +275,24 @@
listener.printNotification(Notification("", "requesting container for ${actionData.name}", NotificationType.Info, NotificationLevel.Execution))
driver?.launchTasks(Collections.singleton(it.id), listOf(actionTask))
+ } ?: run {
+ if (jobManager.outOfActions) {
+ log.info("framework ${jobManager.jobId} execution finished")
+
+ val repo = File("repo/")
+ repo.delete()
+
+ server.stop()
+ driver?.declineOffer(it.id)
+ driver?.stop()
+ System.exit(0)
+ } else {
+ log.info("Declining offer, no sufficient resources")
+ driver!!.declineOffer(it.id)
+ }
}
}
- jobManager.outOfActions -> {
- log.info("framework ${jobManager.jobId} execution finished")
- val repo = File("repo/")
- repo.delete()
-
- server.stop()
- driver?.declineOffer(it.id)
- driver?.stop()
- System.exit(0)
- }
- else -> {
- log.info("Declining offer, no sufficient resources")
- driver!!.declineOffer(it.id)
- }
}
}
}