yandrey321 opened a new pull request, #122:
URL: https://github.com/apache/ozone-docker-runner/pull/122
## What changes were proposed in this pull request?
**Problem.** The ozone-runner image installs AWS CLI v1 (`awscli==1.38.15`,
from pip) as `aws`. AWS CLI v1 is end of
life, like the AWS SDK for Java v1 that apache/ozone#11939 (HDDS-17707)
removes from Ozone. HDDS-16466 already added
AWS CLI v2 next to it, as `aws2`, but the Ozone smoketests still call `aws`,
so they still run v1.
**Change.**
- **v1 is gone:** `awscli` is dropped from the pip install. `robotframework`
and `boto3` stay; `boto3` brings its own
`botocore`.
- **`aws` is AWS CLI v2:** the same pinned build
(`AWS_CLI_V2_VERSION=2.27.50`, the official zip) is now linked as
both `aws` and `aws2`. `aws2` is kept as an alias for anything that
started using it after HDDS-16466.
- **`AWS_PAGER=""`:** CLI v2 can send its output through a pager; a test
container must never do that.
- **A build check:** the build fails if `aws --version` is not CLI v2.
**Key decisions.**
- **Keep the `aws` name** instead of switching the smoketests to `aws2`. The
existing tests (`commonawslib.robot` and
the S3, security and FCQ suites) work unchanged, and new tests don't need
to know which CLI version they get.
- **Keep `aws2`:** it costs one symlink, and removing it could break a test
that started using it.
**Side effects.**
- **Ozone acceptance tests run `aws` as CLI v2** once Ozone bumps
`docker.ozone-runner.version` to an image with this
change. That bump should run the full acceptance suite.
- **Behaviour differences of CLI v2** that the Ozone smoketests could notice:
- default request checksums on uploads;
- some output details;
- `--cli-binary-format` for blob arguments.
Any failures should be fixed in the Ozone PR that bumps the image. The S3
Gateway already passes the AWS SDK v2
integration suite, which sends the same default checksums.
- **Ozone release branches are not affected:** they pin their own runner
image versions.
Co-authored-by: Claude Opus 5.5 <[email protected]>
## What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-17707
## How was this patch tested?
- **Image build:** `docker build` succeeds (locally on aarch64; the CI
workflow builds the image too). The new
version check passes in the build.
- **In the built image:**
- `aws --version` and `aws2 --version` both report `aws-cli/2.27.50`, from
`/usr/local/bin/aws` and
`/usr/local/bin/aws2`;
- `AWS_PAGER` is empty;
- `pip3 list` has no `awscli`, and still has `boto3` 1.37.15 (with
`botocore` 1.37.38) and `robotframework`
6.1.1.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]