mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2026-10-22 22:11:39 +02:00
fuse integration: align the posix docs with the suite
The doc listed a docker-test-posix target and make variables that do not exist, and ran go test against single files that cannot compile alone. The roadmap also still claimed the platform-specific tests this suite now implements were all skipped. Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
1 parent
cd90b32a83
commit
4fa56e2358
2 files changed
+19
-27
No files matched your search
@@ -340,8 +340,7 @@ make -f posix_Makefile test-nfstest-posix
|
||||
sudo usermod -a -G fuse $USER
|
||||
# Re-login or run: newgrp fuse
|
||||
|
||||
# Check mount options
|
||||
make -f posix_Makefile test-posix-basic MOUNT_OPTIONS="-allowOthers"
|
||||
# Mount with -allowOthers if other users need access (test config MountOptions)
|
||||
```
|
||||
|
||||
#### Extended Attributes Not Supported
|
||||
@@ -366,14 +365,14 @@ getfattr --version
|
||||
### Debug Mode
|
||||
|
||||
```bash
|
||||
# Run tests with verbose output
|
||||
make -f posix_Makefile test-posix-basic VERBOSE=1
|
||||
# Test targets already run go test -v and keep logs under reports/
|
||||
make -f posix_Makefile test-posix-basic
|
||||
|
||||
# Keep test files for inspection
|
||||
make -f posix_Makefile test-posix-basic CLEANUP=false
|
||||
# Run against an existing external mount instead of a fresh cluster
|
||||
make -f posix_Makefile test-posix-basic TEST_MOUNT_POINT=/path/to/mount
|
||||
|
||||
# Enable debug logging
|
||||
make -f posix_Makefile test-posix-basic DEBUG=true
|
||||
# Extend the 45-minute per-suite timeout
|
||||
make -f posix_Makefile test-posix-full TEST_TIMEOUT=90m
|
||||
```
|
||||
|
||||
### Manual Test Execution
|
||||
@@ -381,10 +380,10 @@ make -f posix_Makefile test-posix-basic DEBUG=true
|
||||
```bash
|
||||
# Run specific test
|
||||
cd test/fuse_integration
|
||||
go test -v -run TestPOSIXCompliance/FileOperations posix_compliance_test.go
|
||||
go test -v -run 'TestPOSIXCompliance/FileOperations' .
|
||||
|
||||
# Run with custom timeout
|
||||
go test -v -timeout 30m -run TestPOSIXExtended posix_extended_test.go
|
||||
go test -v -timeout 30m -run TestPOSIXExtended .
|
||||
```
|
||||
|
||||
## 🔄 CI/CD Integration
|
||||
@@ -459,14 +458,6 @@ pipeline {
|
||||
}
|
||||
```
|
||||
|
||||
### Docker-based Testing
|
||||
|
||||
```bash
|
||||
# Build Docker image for testing
|
||||
cd test/fuse_integration
|
||||
make -f posix_Makefile docker-test-posix
|
||||
```
|
||||
|
||||
## 🎯 POSIX Compliance Checklist
|
||||
|
||||
### Critical POSIX Features
|
||||
|
||||
@@ -4,7 +4,7 @@ This document tracks the implementation status of POSIX features in the SeaweedF
|
||||
|
||||
## Overview
|
||||
|
||||
The POSIX compliance test suite currently has several tests that are skipped due to requiring platform-specific implementations. This roadmap outlines the steps needed to implement these tests and achieve comprehensive POSIX compliance validation.
|
||||
The platform-specific tests listed below are implemented; this document records the implementation plan that produced them, plus the one feature still pending.
|
||||
|
||||
## Current Status
|
||||
|
||||
@@ -21,14 +21,15 @@ The POSIX compliance test suite currently has several tests that are skipped due
|
||||
|
||||
### 🚧 Partially Implemented
|
||||
- Cross-platform compatibility (basic implementation with platform-specific access time handling)
|
||||
- File sealing (still skipped; Linux-specific, pending)
|
||||
|
||||
### ❌ Missing Implementations
|
||||
### ✅ Implemented Platform-Specific Features
|
||||
|
||||
#### 1. Extended Attributes (xattr)
|
||||
**Priority: High**
|
||||
**Platforms: Linux, macOS, FreeBSD**
|
||||
|
||||
**Current Status:** All xattr tests are skipped
|
||||
**Status:** Implemented
|
||||
- `TestExtendedAttributes/SetExtendedAttribute`
|
||||
- `TestExtendedAttributes/ListExtendedAttributes`
|
||||
- `TestExtendedAttributes/RemoveExtendedAttribute`
|
||||
@@ -58,7 +59,7 @@ func setXattr(path, name string, value []byte) error {
|
||||
**Priority: High**
|
||||
**Platforms: All POSIX systems**
|
||||
|
||||
**Current Status:** All mmap tests are skipped
|
||||
**Status:** Implemented
|
||||
- `TestMemoryMapping/MemoryMappedRead`
|
||||
- `TestMemoryMapping/MemoryMappedWrite`
|
||||
|
||||
@@ -84,7 +85,7 @@ func testMmap(t *testing.T, filePath string) {
|
||||
**Priority: Medium**
|
||||
**Platforms: All POSIX systems**
|
||||
|
||||
**Current Status:** Vectored I/O test is skipped
|
||||
**Status:** Implemented
|
||||
- `TestAdvancedIO/VectoredIO`
|
||||
|
||||
**Implementation Plan:**
|
||||
@@ -100,7 +101,7 @@ func testVectoredIO(t *testing.T, filePath string) {
|
||||
**Priority: Medium**
|
||||
**Platforms: Linux, some Unix variants**
|
||||
|
||||
**Current Status:** Direct I/O test is skipped
|
||||
**Status:** Implemented
|
||||
- `TestDirectIO/DirectIO`
|
||||
|
||||
**Implementation Plan:**
|
||||
@@ -116,7 +117,7 @@ func testDirectIO(t *testing.T, filePath string) {
|
||||
**Priority: Medium**
|
||||
**Platforms: Linux, some Unix variants**
|
||||
|
||||
**Current Status:** fallocate test is skipped
|
||||
**Status:** Implemented
|
||||
- `TestFilePreallocation/Fallocate`
|
||||
|
||||
**Implementation Plan:**
|
||||
@@ -132,7 +133,7 @@ func testFallocate(t *testing.T, filePath string) {
|
||||
**Priority: Low**
|
||||
**Platforms: Linux, FreeBSD, some Unix variants**
|
||||
|
||||
**Current Status:** sendfile test is skipped
|
||||
**Status:** Implemented
|
||||
- `TestZeroCopyTransfer/Sendfile`
|
||||
|
||||
**Implementation Plan:**
|
||||
@@ -148,7 +149,7 @@ func testSendfile(t *testing.T, srcPath, dstPath string) {
|
||||
**Priority: Low**
|
||||
**Platforms: Linux only**
|
||||
|
||||
**Current Status:** File sealing test is skipped
|
||||
**Current Status:** File sealing test is still skipped
|
||||
- `TestFileSealing`
|
||||
|
||||
**Implementation Plan:**
|
||||
|
||||
Reference in new issue
Block a user