summaryrefslogtreecommitdiff
path: root/crashbox-server/src/main/scala/io/crashbox/ci/Schedulers.scala
diff options
context:
space:
mode:
Diffstat (limited to 'crashbox-server/src/main/scala/io/crashbox/ci/Schedulers.scala')
-rw-r--r--crashbox-server/src/main/scala/io/crashbox/ci/Schedulers.scala15
1 files changed, 9 insertions, 6 deletions
diff --git a/crashbox-server/src/main/scala/io/crashbox/ci/Schedulers.scala b/crashbox-server/src/main/scala/io/crashbox/ci/Schedulers.scala
index cb4e793..0beec31 100644
--- a/crashbox-server/src/main/scala/io/crashbox/ci/Schedulers.scala
+++ b/crashbox-server/src/main/scala/io/crashbox/ci/Schedulers.scala
@@ -122,12 +122,15 @@ trait Schedulers {
override def receive = {
case ScheduleBuild(url) =>
- val buildId = newBuildId()
- val buildManager =
- context.actorOf(BuildManager(buildId, url), s"build-${buildId}")
- context watch buildManager
- runningBuilds += buildId -> buildManager
- sender ! buildId
+ val client = sender
+ //todo handle failure
+ nextBuild(url.toString).foreach{ build =>
+ val buildManager =
+ context.actorOf(BuildManager(build.id, url), s"build-${build.id}")
+ context watch buildManager
+ runningBuilds += build.id -> buildManager
+ client ! build.id
+ }
case CancelBuild(id) =>
runningBuilds.get(id).foreach { builder =>