Skip to content

Conversation

@echonesis
Copy link
Contributor

@echonesis echonesis commented Jul 16, 2025

What changes were proposed in this pull request?

Apache Ozone presently utilizes goofys as its S3 FUSE implementation. Given that the goofys repository has been forked and is now under the maintenance of StatCan, our intention is to transition to mountpoint-s3, an AWS Labs-maintained package, for subsequent development efforts.

What is the link to the Apache JIRA

https://issues.apache.org/jira/browse/HDDS-13446

How was this patch tested?

$ ./build.sh
...

$ docker run -it --rm apache/ozone-runner:dev bash

[hadoop@e9911f14f942 ~]$ which mount-s3
/usr/bin/mount-s3

[hadoop@e9911f14f942 ~]$ which goofys
/usr/bin/which: no goofys in 

CI: https://github.com/echonesis/ozone-docker-runner/actions/runs/16337455101

Copy link
Contributor

@jojochuang jojochuang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. But I would like to wait until the Ozone CSI is ready to migrate to goofys. Otherwise acceptance tests will fail.

Dockerfile Outdated
Comment on lines 48 to 57
RUN set -eux ; \
ARCH="$(arch)"; \
case "${ARCH}" in \
x86_64) arch='x86_64' ;; \
aarch64) arch='arm64' ;; \
*) echo "Unsupported architecture: ${ARCH}"; exit 1 ;; \
esac; \
curl -L -o /tmp/mount-s3.rpm "https://s3.amazonaws.com/mountpoint-s3-release/latest/${arch}/mount-s3.rpm"; \
dnf install -y /tmp/mount-s3.rpm; \
rm -f /tmp/mount-s3.rpm
Copy link
Contributor

@jojochuang jojochuang Jul 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggest to use a fixed version instead of the latest version:

Suggested change
RUN set -eux ; \
ARCH="$(arch)"; \
case "${ARCH}" in \
x86_64) arch='x86_64' ;; \
aarch64) arch='arm64' ;; \
*) echo "Unsupported architecture: ${ARCH}"; exit 1 ;; \
esac; \
curl -L -o /tmp/mount-s3.rpm "https://s3.amazonaws.com/mountpoint-s3-release/latest/${arch}/mount-s3.rpm"; \
dnf install -y /tmp/mount-s3.rpm; \
rm -f /tmp/mount-s3.rpm
RUN set -eux ; \
ARCH="$(arch)"; \
MOUNTPOINT_S3_VERSION="1.19.0"; \
case "${ARCH}" in \
x86_64) url="https://s3.amazonaws.com/mountpoint-s3-release/${MOUNTPOINT_S3_VERSION}/x86_64/mount-s3-${MOUNTPOINT_S3_VERSION}-x86_64.rpm" ;; \
aarch64) url="https://s3.amazonaws.com/mountpoint-s3-release/${MOUNTPOINT_S3_VERSION}/arm64/mount-s3-${MOUNTPOINT_S3_VERSION}-arm64.rpm" ;; \
*) echo "Unsupported architecture: ${ARCH}"; exit 1 ;; \
esac; \
curl -L ${url} -o mount-s3.rpm ; \
dnf install -y mount-s3.rpm ; \
rm -f mount-s3.rpm

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @jojochuang , it's a better solution.
I will modify it ASAP.

Dockerfile Outdated
Comment on lines 52 to 56
x86_64) url="https://s3.amazonaws.com/mountpoint-s3-release/${MOUNTPOINT_S3_VERSION}/x86_64/mount-s3-${MOUNTPOINT_S3_VERSION}-x86_64.rpm" ;; \
aarch64) url="https://s3.amazonaws.com/mountpoint-s3-release/${MOUNTPOINT_S3_VERSION}/arm64/mount-s3-${MOUNTPOINT_S3_VERSION}-arm64.rpm" ;; \
*) echo "Unsupported architecture: ${ARCH}"; exit 1 ;; \
esac; \
curl -L ${url} -o mount-s3.rpm ; \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: please reduce duplication

Suggested change
x86_64) url="https://s3.amazonaws.com/mountpoint-s3-release/${MOUNTPOINT_S3_VERSION}/x86_64/mount-s3-${MOUNTPOINT_S3_VERSION}-x86_64.rpm" ;; \
aarch64) url="https://s3.amazonaws.com/mountpoint-s3-release/${MOUNTPOINT_S3_VERSION}/arm64/mount-s3-${MOUNTPOINT_S3_VERSION}-arm64.rpm" ;; \
*) echo "Unsupported architecture: ${ARCH}"; exit 1 ;; \
esac; \
curl -L ${url} -o mount-s3.rpm ; \
x86_64) arch='x86_64' ;; \
aarch64) arch='arm64' ;; \
*) echo "Unsupported architecture: ${ARCH}"; exit 1 ;; \
esac; \
curl -L "https://s3.amazonaws.com/mountpoint-s3-release/${MOUNTPOINT_S3_VERSION}/${arch}/mount-s3-${MOUNTPOINT_S3_VERSION}-${arch}.rpm" -o mount-s3.rpm ; \

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @adoroszlai for reviewing the duplication issue.

@echonesis echonesis requested a review from adoroszlai July 18, 2025 09:44
@adoroszlai adoroszlai merged commit 1aa8dee into apache:master Jul 18, 2025
1 check passed
@adoroszlai
Copy link
Contributor

Thanks @echonesis for the patch, @jojochuang for the review.

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.

3 participants