dhall-fly-0.1.0: dhall-concourse/utils/resourcesFromJobs.dhall
let Prelude = ../lib/prelude.dhall
let Types = ../types/package.dhall
let Resource = Types.Resource
let StepHooks = Types.StepHooks
let catOptionals
: ∀(x : Type) → List (Optional x) → List x
= λ(x : Type)
→ λ(os : List (Optional x))
→ Prelude.List.fold
(Optional x)
os
(List x)
(λ(a : Optional x) → λ(l : List x) → Prelude.Optional.toList x a # l)
([] : List x)
let resourcesFromStepHooks
: StepHooks (List Resource) → List Resource
= λ(h : StepHooks (List Resource))
→ let listOfListOfResources =
catOptionals
(List Resource)
[ h.ensure, h.on_success, h.on_failure, h.on_abort ]
in Prelude.List.concat Resource listOfListOfResources
let resourcesFromGetStep
: Types.GetStep → StepHooks (List Resource) → List Resource
= λ(g : Types.GetStep)
→ λ(h : StepHooks (List Resource))
→ [ g.resource ] # resourcesFromStepHooks h
let resourcesFromPutStep
: Types.PutStep → StepHooks (List Resource) → List Resource
= λ(p : Types.PutStep)
→ λ(h : StepHooks (List Resource))
→ [ p.resource ] # resourcesFromStepHooks h
let resourcesFromTaskStep
: Types.TaskStep → StepHooks (List Resource) → List Resource
= λ(_ : Types.TaskStep)
→ λ(h : StepHooks (List Resource))
→ resourcesFromStepHooks h
let resourcesFromAggregateOrDo
: List (List Resource) → StepHooks (List Resource) → List Resource
= λ(rs : List (List Resource))
→ λ(h : StepHooks (List Resource))
→ Prelude.List.concat Resource rs # resourcesFromStepHooks h
let resourcesFromTry
: List Resource → StepHooks (List Resource) → List Resource
= λ(rs : List Resource)
→ λ(h : StepHooks (List Resource))
→ rs # resourcesFromStepHooks h
let resourcesFromStep =
λ(s : Types.Step)
→ s
(List Resource)
resourcesFromGetStep
resourcesFromPutStep
resourcesFromTaskStep
resourcesFromAggregateOrDo
resourcesFromAggregateOrDo
resourcesFromTry
let resourcesFromJob =
λ(j : Types.Job)
→ Prelude.List.concatMap Types.Step Resource resourcesFromStep j.plan
in Prelude.List.concatMap Types.Job Resource resourcesFromJob
: List Types.Job → List Resource