Skip to content

Typecheck, template and modularize your Buildkite definitions with Dhall

License

Notifications You must be signed in to change notification settings

myob-oss/buildkite.dhall

Repository files navigation

buildkite.dhall

Build status

Get Started

put this in the legacy step:

dhall-to-yaml <<<  './.buildkite/pipeline.dhall' | buildkite-agent pipeline upload

or use https://github.com/jcouyang/dhall-buildkite-plugin/ if your buildkite agent doesn't has dhall installed

in YAML steps:

steps:
  - command: "dhall-to-yaml <<< './.buildkite/pipeline.dhall' | buildkite-agent pipeline upload"
    plugins:
      jcouyang/dhall#1.0: ~
    agents:
    - "queue=your-default-queue"

The pipeline.dhall itself is test and example

essentially you may need remote import the package in your .buildkite/pipeline.dhall

let bk = https://raw.githubusercontent.com/myob-oss/buildkite.dhall/0.3.0/package.dhall sha256:58893f017494437f31e55ef37f71cdd53eac3d7f11f9be85dcf63fa22a101a62