Update GitLab Workhorse to AWS SDK for Go v2
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
- Create a new project with https://gitlab.com/gitlab-com/support/toolbox/gitlab-smoke-tests.git.
- Ensure you have a runner registered with the Docker executor and
privileged = true
set. - 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.
- Click on
Pipelines
->Run Pipelines
. - Enter
RUN_ALL_TESTS
as a CI/CD variable withtrue
. - Check that all tests pass. The PyPi test needs gitlab-com/support/toolbox/gitlab-smoke-tests!30 (merged).