Pipette.Trigger (Pipette v0.5.1)

Copy Markdown View Source

Buildkite trigger step that starts another pipeline.

Trigger steps allow one pipeline to kick off a build in a separate Buildkite pipeline, optionally passing build parameters and controlling whether to wait for completion.

Fields

  • :name (atom()) — unique identifier for this trigger
  • :label (String.t() | nil) — display label in the Buildkite UI

  • :pipeline (String.t()) — slug of the Buildkite pipeline to trigger (e.g. "deploy-production")
  • :depends_on (atom() | [atom()] | nil) — group(s) that must complete before triggering

  • :only (String.t() | [String.t()] | nil) — branch pattern(s) restricting when this trigger fires

  • :build (map() | nil) — build parameters to pass (e.g. %{message: "Deploy", env: %{DEPLOY_ENV: "production"}})

  • :async (boolean() | nil) — when true, don't wait for the triggered build to complete

  • :key (String.t() | nil) — explicit Buildkite step key

Example

%Pipette.Trigger{
  name: :deploy,
  label: ":rocket: Deploy",
  pipeline: "deploy-production",
  depends_on: [:api, :web],
  only: "main",
  async: true
}

Summary

Types

t()

@type t() :: %Pipette.Trigger{
  __identifier__: term(),
  __spark_metadata__: term(),
  async: boolean() | nil,
  build: map() | nil,
  depends_on: atom() | [atom()] | nil,
  key: String.t() | nil,
  label: String.t() | nil,
  name: atom(),
  only: String.t() | [String.t()] | nil,
  pipeline: String.t()
}