Thank you for your interest in contributing to ZAD Actions!
- Git
- uv (for installing pre-commit)
- just (command runner)
- ShellCheck (for bash script linting)
- actionlint (for GitHub Actions validation)
# Install pre-commit as a tool
uv tool install pre-commit
# Install the git hooks
pre-commit install- Fork the repository and clone your fork
- Create a branch for your changes:
git checkout -b feature/my-feature - Make your changes and ensure they pass linting
- Test your changes in a real workflow (see Testing below)
- Commit your changes with a clear message
- Push and create a pull request
Use the justfile for common tasks:
# List available commands
just
# Run linting
just lintTo test action changes in a real workflow:
- Push your branch to your fork
- Reference your branch in a test workflow:
- uses: your-username/zad-actions/deploy@your-branch
- Verify the action works as expected
- Bash scripts: Follow Google's Shell Style Guide
- YAML: Use 2-space indentation
- Input validation: Always validate user inputs before using them
- Error handling: Provide clear error messages
Use clear, descriptive commit messages:
feat: Add support for multiple componentsfix: Handle 404 response correctlydocs: Update authentication documentationchore: Update CI workflow
This project uses Semantic Versioning:
- Major (v2.0.0): Breaking changes to action inputs/outputs
- Minor (v1.1.0): New features, new optional inputs
- Patch (v1.0.1): Bug fixes, documentation updates
- Update the README.md if you changed inputs/outputs
- Update action descriptions if applicable
- Ensure all CI checks pass
- Request review from a maintainer
Open an issue with the question label if you have questions about contributing.