aboutsummaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
authorchrislusf <chris.lu@gmail.com>2025-12-05 18:44:43 -0800
committerChris Lu <chrislusf@users.noreply.github.com>2025-12-06 18:53:22 -0800
commitf292fb147fb04f857596a0c7bd2ddfef788e52e2 (patch)
tree46acc28e48c10bd9967b6147227e0b8f2c1791e2 /cmd
parentd9a69c414e5050183df1e3174553a931e8dae064 (diff)
downloadseaweedfs-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')
-rw-r--r--cmd/seaweedfs-mount/Dockerfile7
-rw-r--r--cmd/seaweedfs-mount/Dockerfile.dev23
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"]