aboutsummaryrefslogtreecommitdiff
path: root/pkg/mountmanager
AgeCommit message (Collapse)AuthorFilesLines
14 daysfix: log process.stop() error and document 100ms delaychrislusf1-1/+4
- Log warning if stopping mount process fails after mount wait timeout to help diagnose potential zombie processes - Add comment explaining the 100ms delay before unmounting is for FUSE cleanup and pending I/O to complete
14 daysfix: use :latest tag and replace deprecated IsMountPointchrislusf1-6/+7
- Change image tags from :dev to :latest in seaweedfs-csi.yaml for predictable production deployments - Replace deprecated IsMountPoint with IsLikelyNotMountPoint for consistency with k8s.io/mount-utils recommendations
14 daysfix: remove redundant unmount call in Unmount functionchrislusf1-6/+3
The weedMountProcess.wait() function already handles unmounting when the process terminates. Removing the explicit unmount call in Unmount() centralizes the unmount logic and avoids potential race conditions.
14 daysfix: improve Unmount transactionality and add contextual loggingchrislusf1-6/+35
- Unmount now uses getMount first, only removes from state after all cleanup operations succeed (transactional behavior) - Add volume ID prefix to weed mount stdout/stderr logs for better debugging when multiple mounts are active
14 daysfix: address gemini review - permissions and process stopchrislusf1-4/+4
- Change cacheDir permissions from 0750 to 0755 for non-root access - Change targetPath (mount point) permissions from 0750 to 0755 - Remove ineffective os.ErrProcessDone checks (not exported in os package)
14 daysfix: address gemini-code-assist review commentschrislusf1-2/+5
- Change mountService updateStrategy from RollingUpdate to OnDelete (mount service not yet resilient to its own restarts) - Change mountService image from :latest to :dev for consistency - Fix defer os.RemoveAll: explicitly remove cache dir after process stops to avoid removing while process might still be running
14 daysfix: address PR review commentschrislusf1-7/+6
- Set localSocket in rebuildVolumeFromStaging to fix invalid gRPC target - Use SHA256 hash (16 hex chars) in LocalSocketPath to minimize collision risk - Update GitHub Actions to latest versions (checkout@v4, metadata-action@v5, etc.) - Fix volumeMounts/volumes conditional mismatch in helm templates - Add documentation for mountService defaults in values.yaml
14 daysfix: improve ensureTargetClean to be non-recursive and always ensure ↵chrislusf1-10/+12
directory exists Address review feedback from gemini-code-assist: - Replace recursive approach with non-recursive to avoid potential stack overflow - Always call os.MkdirAll at the end to ensure directory exists after unmount - Add better error messages with context - Add logging for unmount operations
14 daysfix: address code review feedbackchrislusf3-4/+15
- 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)
14 daysfix: use kubeMounter instead of mountutil in manager.gochrislusf1-2/+2
14 daysfeat: add log泽淼 周1-15/+4
14 daysfix: Zombie process泽淼 周1-4/+6
14 daysOptimization: Reduce unnecessary logic of seaweedfs-mount泽淼 周4-224/+23
14 daysfeat: Separated weed mount lifecycle into a dedicated service and rewired ↵泽淼 周6-0/+701
the CSI components to call it.