diff options
Diffstat (limited to 'crashboxd/src/main/scala/io/crashbox/ci/Builder.scala')
-rw-r--r-- | crashboxd/src/main/scala/io/crashbox/ci/Builder.scala | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/crashboxd/src/main/scala/io/crashbox/ci/Builder.scala b/crashboxd/src/main/scala/io/crashbox/ci/Builder.scala index a6269e8..77998cd 100644 --- a/crashboxd/src/main/scala/io/crashbox/ci/Builder.scala +++ b/crashboxd/src/main/scala/io/crashbox/ci/Builder.scala @@ -13,16 +13,10 @@ import scala.concurrent.Future import scala.util.{ Failure, Success } -case class BuildId(id: String) extends AnyVal - -case class TaskId(buildId: String, taskIdx: Int) { - override def toString = s"$buildId#$taskIdx" -} - -class BuildSource[E <: Environment]( +class BuildSource[Env <: Environment, Id <: ExecutionId]( taskId: TaskId, - taskDef: TaskDef[E], - executor: Executor[E], + taskDef: TaskDef[Env], + executor: Executor[Env, Id], mkdir: => File, mkout: => OutputStream // TODO refactor this into a two-output stage ) extends GraphStage[SourceShape[Builder.BuildState]] { @@ -35,7 +29,7 @@ class BuildSource[E <: Environment]( def createLogic(attributes: Attributes) = new GraphStageLogic(shape) with StageLogging { implicit def ec = materializer.executionContext - lazy val instance: Future[ExecutionId] = executor.start( + lazy val instance: Future[Id] = executor.start( taskDef.environment, taskDef.script, mkdir, |