Skip to content
Snippets Groups Projects
.gitlab-ci.dhall 789 B
Newer Older
Max Tomago's avatar
Max Tomago committed
let Prelude =
        env:DHALL_PRELUDE
      ? https://raw.githubusercontent.com/dhall-lang/dhall-lang/v20.1.0/Prelude/package.dhall
          sha256:26b0ef498663d269e4dc6a82b0ee289ec565d683ef4c00d0ebdd25333a5a3c98

let H = ./horizon-spec.dhall
Max Tomago's avatar
Max Tomago committed

let Step = { script : List Text }

let toStep
    : ∀(id : Text) → ∀(prefix : Text) → ∀(x : Text) → H.Attr Step
Max Tomago's avatar
Max Tomago committed
    = λ(id : Text) →
      λ(prefix : Text) →
      λ(x : Text) →
Daniel Firth's avatar
Daniel Firth committed
        { mapKey = id, mapValue.script = [ "nix build -L .#${prefix}.${x}" ] }
Daniel Firth's avatar
Daniel Firth committed
let input = Prelude.Map.keys Text H.HaskellPackage.Type ./horizon.dhall
Max Tomago's avatar
Max Tomago committed

let packages =
      Prelude.List.map
Daniel Firth's avatar
Daniel Firth committed
        Text
        (H.Attr Step)
Daniel Firth's avatar
Daniel Firth committed
        (λ(x : Text) → toStep "Package ${x}" "packages.x86_64-linux" x)
Max Tomago's avatar
Max Tomago committed
        (input : List Text)

in  packages