Thank you for your interest in contributing to ODA! This document provides guidelines and instructions for contributing to the project.
- Fork the repository
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/oda.git
- Create a new branch:
git checkout -b feature/your-feature-name
- Use shellcheck for shell script linting
- Follow POSIX shell compatibility where possible
- Use meaningful variable and function names
- Add comments for complex operations
- Use clear and descriptive commit messages
- Start with a verb in present tense
- Keep the first line under 50 characters
- Add detailed description if needed
Example:
Add ZFS compression optimization
- Implements LZ4 compression
- Adds recordsize tuning
- Includes performance monitoring
Before submitting a PR:
- Test all scripts in a ZFS environment
- Verify monitoring functionality
- Check for potential data loss scenarios
- Test with different storage configurations
- Update README.md for new features
- Document all script parameters
- Include usage examples
- Update performance recommendations
- Update the README.md with details of changes
- Update the version numbers following SemVer
- Create a Pull Request with a clear title and description
- Link any related issues
- At least one maintainer must review and approve
- All automated checks must pass
- Documentation must be complete
- All discussions must be resolved
- Open an issue for bug reports
- Use discussions for feature requests
- Tag maintainers for urgent issues
By contributing, you agree that your contributions will be licensed under the MIT License.