github buildkite/agent v3.63.0

latest releases: v3.82.1, v3.82.0, v3.81.0...
7 months ago

v3.63.0 (2024-02-14)

Full Changelog

Warning

This release has two potentially breaking changes in the way environment
variables are interpolated.

  • Interpolation on Windows should be done in a case-insensitive manner to be
    compatible with Batch scripts and Powershell. This was working correctly up
    until some refactoring in v3.59.0.

    For example, this pipeline:

    env:
      FOO: bar
    steps:
    - command: echo $Foo $FOO

    should now be correctly interpolated on Windows as:

    env:
      FOO: bar
    steps:
    - command: echo bar bar

    Interpolation on other platforms is unchanged.

  • Our documented interpolation rules
    implies that variables from the agent environment have higher precedence than
    variables defined by the job environment ("we merge in some of the variables
    from the agent environment").

    Suppose the agent environment contains FOO=runtime_foo. The pipeline

    env:
      BAR: $FOO
      FOO: pipeline_foo
    steps:
    - command: echo hello world

    would in previous releases be interpolated as:

    env:
      BAR: runtime_foo
      FOO: pipeline_foo
    steps:
    - command: echo hello world

    On the other hand, the pipeline

    env:
      FOO: pipeline_foo
      BAR: $FOO
    steps:
    - command: echo hello world

    would be interpolated to become

    env:
      FOO: pipeline_foo
      BAR: pipeline_foo
    steps:
    - command: echo hello world

    We think this is inconsistent with the agent environment taking precedence,
    and if users would like to interpolate $FOO as the value of the pipeline
    level definition of FOO, they should ensure the agent environment does not
    contain FOO.

Added

Fixed

  • Fix pipeline interpolation case sensitivity on Windows, and runtime environment variable precedence #2624 (@triarius)
  • Fix environment variable changes in hooks logged incorrectly #2621 (@triarius)
  • Fix Powershell hooks on windows #2613 (@triarius)
  • Fix bug where unauthorised register was retrying erroneously #2614 (@moskyb)
  • Fix docs for --allowed-environment-variables #2598 (@tessereth)

Upgraded

Internal

Don't miss a new agent release

NewReleases is sending notifications on new releases.