diff options
Diffstat (limited to 'src/Job')
-rw-r--r-- | src/Job/Types.hs | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/Job/Types.hs b/src/Job/Types.hs index 4024317..ad575a1 100644 --- a/src/Job/Types.hs +++ b/src/Job/Types.hs @@ -55,13 +55,18 @@ data ArtifactName = ArtifactName Text data JobSet' d = JobSet - { jobsetCommit :: Maybe Commit + { jobsetId :: JobSetId' d + , jobsetCommit :: Maybe Commit , jobsetJobsEither :: Either String [ Job' d ] } type JobSet = JobSet' Evaluated type DeclaredJobSet = JobSet' Declared +type family JobSetId' d :: Type where + JobSetId' Declared = () + JobSetId' Evaluated = JobSetId + jobsetJobs :: JobSet -> [ Job ] jobsetJobs = either (const []) id . jobsetJobsEither @@ -69,6 +74,9 @@ jobsetJobs = either (const []) id . jobsetJobsEither newtype JobId = JobId [ JobIdPart ] deriving (Eq, Ord) +newtype JobSetId = JobSetId [ JobIdPart ] + deriving (Eq, Ord) + data JobIdPart = JobIdName JobName | JobIdCommit (Maybe RepoName) CommitId |