Skip to content

Update GitLab Workhorse to AWS SDK for Go v2

Stan Hu requested to merge sh-upgrade-workhorse-aws-sdk-v2 into master

What does this MR do and why?

AWS SDK for Go v1 has been deprecated (https://aws.amazon.com/blogs/developer/announcing-end-of-support-for-aws-sdk-for-go-v1-on-july-31-2025/), and v2 offers a number of improvements: https://aws.amazon.com/blogs/developer/aws-sdk-for-go-version-2-general-availability/

v2 also allows configuring of AWS_ENDPOINT_URL_STS, which is important to users of AWS Secret Cloud (not to be confused with GovCloud).

This is behind the workhorse_use_aws_sdk_v2 feature flag, activated by default.

Note that this commit does not update the S3 tests to use AWS SDK v1. That should be done as a follow-up.

Relates to #482044

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

How to set up and validate locally

  1. Create a new project with https://gitlab.com/gitlab-com/support/toolbox/gitlab-smoke-tests.git.
  2. Ensure you have a runner registered with the Docker executor and privileged = true set.
  3. GitLab Container Registry and Pages will have to be working for those respective tests to work. I had to open port 5050 and configure Pages, but they should not be strictly necessary.
  4. Click on Pipelines -> Run Pipelines.
  5. Enter RUN_ALL_TESTS as a CI/CD variable with true.
  6. Check that all tests pass. The PyPi test needs gitlab-com/support/toolbox/gitlab-smoke-tests!30 (merged).
Edited by Stan Hu

Merge request reports

Loading