hercules-ci-api-agent-0.3.0.0: src/Hercules/API/Agent/Socket/AgentPayload.hs
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DuplicateRecordFields #-}
module Hercules.API.Agent.Socket.AgentPayload where
import Hercules.API.Agent.LifeCycle.StartInfo (Hello)
import Hercules.API.Prelude
import Hercules.API.Task as Task
data AgentPayload
= Hello Hello
| Ping
| Started Started
| Cancelled Cancelled
deriving (Generic, Show, Eq, NFData, ToJSON, FromJSON)
data Started = MkStarted {taskId :: Id (Task Task.Any)}
deriving (Generic, Show, Eq, NFData, ToJSON, FromJSON)
data Cancelled = MkCancelled {taskId :: Id (Task Task.Any)}
deriving (Generic, Show, Eq, NFData, ToJSON, FromJSON)