{-# LANGUAGE DataKinds #-} module Hercules.API.Agent.Build where import Data.ByteString (ByteString) import qualified Hercules.API.Agent.Build.BuildEvent as BuildEvent import qualified Hercules.API.Agent.Build.BuildTask as BuildTask import Hercules.API.Prelude import qualified Hercules.API.Task as Task import Servant.API import Servant.API.Generic import Servant.Auth.Swagger () data BuildAPI auth f = BuildAPI { getBuild :: f :- "tasks" :> Capture "taskId" (Id (Task.Task BuildTask.BuildTask)) :> "build" :> auth :> Get '[JSON] BuildTask.BuildTask, updateBuild :: f :- "tasks" :> Capture "taskId" (Id (Task.Task BuildTask.BuildTask)) :> "build" :> ReqBody '[JSON] [BuildEvent.BuildEvent] :> auth :> Post '[JSON] NoContent, writeBuildLog :: f :- Summary "DEPRECATED" :> "tasks" :> Capture "taskId" (Id (Task.Task BuildTask.BuildTask)) :> "build" :> "_log" :> ReqBody '[OctetStream] ByteString :> auth :> Post '[JSON] NoContent } deriving (Generic) {-# DEPRECATED writeBuildLog "Use 'Hercules.API.Logs.writeLog' instead" #-}