packages feed

hercules-ci-api-0.6.0.0: src/Hercules/API/State/StateVersion.hs

{-# LANGUAGE DeriveAnyClass #-}

module Hercules.API.State.StateVersion where

import Hercules.API.Accounts.Account (Account)
import Hercules.API.Prelude
import Hercules.API.Projects.Job (Job)
import Hercules.API.Projects.Project (Project)

data StateVersion = StateVersion
  { projectId :: Id Project,
    name :: Text,
    version :: Int,
    creationTime :: UTCTime,
    -- jobId :: Maybe (Id Job),
    job :: Maybe Job,
    -- effectEventId :: Maybe (Id "EffectEvent"),
    --  agentId :: Maybe (Id AgentSession),
    uploader :: Maybe Account,
    sha256 :: Maybe Text,
    size :: Maybe Int
  }
  deriving (Generic, Show, Eq, NFData, ToJSON, FromJSON, ToSchema)