Skip to content

Conversation

@csweeney-plaid
Copy link

Description

  • Rather than using an entirely custom credential chain, simply take the default credential chain & prepend the buildkite-specific provider (BUILDKITE_S3 overrides)
  • This expands support for currently unsupported options - like loading credentials from ~/.aws/config and also normalizes the credential loading process here vs the AWS norms.

Changes

  • buildkite-agent artifact upload/download (not a visible api change)
  • ⚠️ this is a breaking change to the extent that it changes the order of providers and adds currently unsupported providers that might be silently passing through

Testing

  • [ X ] Tests have run locally (with go test ./...). Buildkite employees may check this if the pipeline has run automatically.
  • [ X ] Code is formatted (with go fmt ./...)

Disclosures / Credits

  • I used Claude to help put this together.

Rather than using an entirely custom chain, simply take the default credential chain & prepend the buildkite-specific provider.
I am specifically interested in changing this as the shared configuration `~/.aws/config` isn't currently supported  with this custom setup :)
@csweeney-plaid csweeney-plaid changed the title Standardize artifact S3 credential chain Standardize artifact S3 credential loading Oct 27, 2025
@csweeney-plaid csweeney-plaid marked this pull request as ready for review October 27, 2025 19:25
@DrJosh9000 DrJosh9000 mentioned this pull request Oct 29, 2025
3 tasks
@DrJosh9000
Copy link
Contributor

DrJosh9000 commented Nov 5, 2025

Thanks for raising this one @csweeney-plaid! The version with #3554 in it is out now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants