Files
seaweedfs/.github/workflows
chrislu 652fce93b0 feat: add comprehensive S3 IAM integration tests GitHub Action
This GitHub Action provides comprehensive testing coverage for the SeaweedFS
IAM system including STS, policy engine, roles, and S3 API integration.

### Test Coverage:

#### IAM Unit Tests:
- STS service tests (token generation, validation, providers)
- Policy engine tests (evaluation, storage, distribution)
- Integration tests (role management, cross-component)
- S3 API IAM middleware tests

#### S3 IAM Integration Tests (3 test types):
- Basic: Authentication, token validation, basic workflows
- Advanced: Session expiration, multipart uploads, presigned URLs
- Policy Enforcement: IAM policies, bucket policies, contextual rules

#### Keycloak Integration Tests:
- Real OIDC provider integration via Docker Compose
- End-to-end authentication flow with Keycloak
- Claims mapping and role-based access control
- Only runs on master pushes or when Keycloak files change

#### Distributed IAM Tests:
- Cross-instance token validation
- Persistent storage (filer-based stores)
- Configuration consistency across instances
- Only runs on master pushes to avoid PR overhead

#### Performance Tests:
- IAM component benchmarks
- Load testing for authentication flows
- Memory and performance profiling
- Only runs on master pushes

### Workflow Features:
- Path-based triggering (only runs when IAM code changes)
- Matrix strategy for comprehensive coverage
- Proper service startup/shutdown with health checks
- Detailed logging and artifact upload on failures
- Timeout protection and resource cleanup
- Docker Compose integration for complex scenarios

### CI/CD Integration:
- Runs on pull requests for core functionality
- Extended tests on master branch pushes
- Artifact preservation for debugging failed tests
- Efficient concurrency control to prevent conflicts
2025-08-24 14:58:08 -07:00
..
2025-08-19 08:19:30 -07:00
2025-08-21 08:28:07 -07:00