Summary
Enhance the CI/CD pipeline with code coverage reporting, static analysis, and extended compatibility testing.
Proposed Enhancements
Code Coverage Reporting
Static Analysis
Extended Slurm Version Testing
Additional CI Jobs
Workflow Improvements
Documentation
Benefits
- Higher code quality through automated checks
- Visibility into test coverage
- Early detection of compatibility issues
- Better confidence in changes
Implementation Order
- Code coverage (most valuable)
- Static analysis with clang-tidy
- Extended Slurm version testing
- Additional security scanning
Summary
Enhance the CI/CD pipeline with code coverage reporting, static analysis, and extended compatibility testing.
Proposed Enhancements
Code Coverage Reporting
Add gcov/lcov configuration to CMakeLists.txt
Add coverage job to GitHub Actions
Static Analysis
Add clang-tidy checks
Create
.clang-tidyconfigurationExtended Slurm Version Testing
Add Slurm 22.05 LTS to build matrix
Add Slurm 25.x when available
Test against both Apptainer and SingularityCE
Additional CI Jobs
Workflow Improvements
Add concurrency control to avoid redundant builds
Add caching for Docker layers and build artifacts
Add job summaries with test results and coverage badges
Configure branch protection rules requiring status checks
Documentation
Benefits
Implementation Order