diff options
| author | chrislusf <chris.lu@gmail.com> | 2025-12-05 18:44:43 -0800 |
|---|---|---|
| committer | Chris Lu <chrislusf@users.noreply.github.com> | 2025-12-06 18:53:22 -0800 |
| commit | f292fb147fb04f857596a0c7bd2ddfef788e52e2 (patch) | |
| tree | 46acc28e48c10bd9967b6147227e0b8f2c1791e2 /cmd/seaweedfs-mount | |
| parent | d9a69c414e5050183df1e3174553a931e8dae064 (diff) | |
| download | seaweedfs-csi-driver-f292fb147fb04f857596a0c7bd2ddfef788e52e2.tar.xz seaweedfs-csi-driver-f292fb147fb04f857596a0c7bd2ddfef788e52e2.zip | |
fix: address code review feedback
- CRITICAL: Make socket path configurable based on mountEndpoint
- Added volumeSocketDir field to SeaweedFsDriver
- LocalSocketPath now accepts baseDir parameter
- Derived from mountEndpoint for user-configurable socket paths
- HIGH: Pin seaweedfs version in Dockerfiles for reproducible builds
- Added SEAWEEDFS_VERSION build arg (default: 3.80)
- Clone specific tag instead of master
- HIGH: Fix Dockerfile.dev to use local context instead of personal fork
- Removed hardcoded zemul/seaweedfs-csi-driver clone
- Now uses COPY . . for local development
- HIGH: Change :latest to :dev in kubernetes manifests
- Mutable :latest tag replaced with :dev for predictability
- MEDIUM: Remove Aliyun mirror from Dockerfile.dev
- Region-specific mirrors shouldn't be in general-purpose files
- MEDIUM: Improve error handling in client.go
- Now reports read errors when failing to read error response body
- MEDIUM: Fix inconsistent error return in manager.go
- Return nil instead of empty struct on error (Go idiom)
Diffstat (limited to 'cmd/seaweedfs-mount')
| -rw-r--r-- | cmd/seaweedfs-mount/Dockerfile | 7 | ||||
| -rw-r--r-- | cmd/seaweedfs-mount/Dockerfile.dev | 23 |
2 files changed, 19 insertions, 11 deletions
diff --git a/cmd/seaweedfs-mount/Dockerfile b/cmd/seaweedfs-mount/Dockerfile index 264d397..c6651e0 100644 --- a/cmd/seaweedfs-mount/Dockerfile +++ b/cmd/seaweedfs-mount/Dockerfile @@ -1,10 +1,13 @@ +ARG SEAWEEDFS_VERSION=4.01 + FROM golang:1.25-alpine AS builder RUN apk add git g++ -# Build weed binary +# Build weed binary (pinned to specific version for reproducibility) +ARG SEAWEEDFS_VERSION RUN mkdir -p /go/src/github.com/seaweedfs/ -RUN git clone https://github.com/seaweedfs/seaweedfs /go/src/github.com/seaweedfs/seaweedfs +RUN git clone --depth 1 --branch ${SEAWEEDFS_VERSION} https://github.com/seaweedfs/seaweedfs /go/src/github.com/seaweedfs/seaweedfs RUN cd /go/src/github.com/seaweedfs/seaweedfs/weed && go install && go clean -cache -modcache # Build seaweedfs-mount from current context diff --git a/cmd/seaweedfs-mount/Dockerfile.dev b/cmd/seaweedfs-mount/Dockerfile.dev index 99ccea3..f18af78 100644 --- a/cmd/seaweedfs-mount/Dockerfile.dev +++ b/cmd/seaweedfs-mount/Dockerfile.dev @@ -1,20 +1,25 @@ -FROM golang:1.24-alpine AS builder -RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories +ARG SEAWEEDFS_VERSION=4.01 + +FROM golang:1.25-alpine AS builder + RUN apk add git g++ +# Build weed binary (pinned to specific version for reproducibility) +ARG SEAWEEDFS_VERSION RUN mkdir -p /go/src/github.com/seaweedfs/ -RUN git clone https://github.com/seaweedfs/seaweedfs /go/src/github.com/seaweedfs/seaweedfs +RUN git clone --depth 1 --branch ${SEAWEEDFS_VERSION} https://github.com/seaweedfs/seaweedfs /go/src/github.com/seaweedfs/seaweedfs RUN cd /go/src/github.com/seaweedfs/seaweedfs/weed && go install -RUN mkdir -p /go/src/github.com/zemul/ -RUN git clone https://github.com/zemul/seaweedfs-csi-driver /go/src/github.com/zemul/seaweedfs-csi-driver -RUN cd /go/src/github.com/zemul/seaweedfs-csi-driver && \ - go build -ldflags="-s -w" -o /seaweedfs-mount ./cmd/seaweedfs-mount/main.go +# Build seaweedfs-mount from current context +WORKDIR /go/src/github.com/seaweedfs/seaweedfs-csi-driver +COPY . . + +RUN go build -ldflags="-s -w" -o /seaweedfs-mount ./cmd/seaweedfs-mount/main.go FROM alpine AS final -RUN apk add fuse +RUN apk add fuse COPY --from=builder /go/bin/weed /usr/bin/ COPY --from=builder /seaweedfs-mount / RUN chmod +x /seaweedfs-mount -ENTRYPOINT ["/seaweedfs-mount"]
\ No newline at end of file +ENTRYPOINT ["/seaweedfs-mount"] |
