hercules-ci-api-0.8.1.0: src/Hercules/API/Build/DerivationInfo.hs
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DerivingStrategies #-}
module Hercules.API.Build.DerivationInfo where
import Hercules.API.Build.DerivationEvent (DerivationEvent)
import Hercules.API.Build.DerivationInfo.DerivationInput (DerivationInput)
import Hercules.API.Build.DerivationInfo.DerivationOutput (DerivationOutput)
import Hercules.API.Derivation (DerivationStatus)
import Hercules.API.Prelude
import Hercules.API.Projects.Job (Job)
import Hercules.API.Projects.Project (Project)
data DerivationInfo = DerivationInfo
{ status :: DerivationStatus,
viaJob :: Maybe Job,
viaProject :: Maybe Project,
platform :: Text,
requiredSystemFeatures :: [Text],
inputDerivations :: [DerivationInput],
outputs :: [DerivationOutput],
usedInProjects :: [Project],
events :: [[DerivationEvent]],
mayRestart :: Bool,
mayCancel :: Bool,
dummy :: Maybe DerivationEvent -- TODO: remove and update/fix codegen
}
deriving (Generic, Show, Eq)
deriving anyclass (NFData, ToJSON, FromJSON, ToSchema)