Thank you for your interest in contributing to this project!
Before making commits, install the pre-commit hooks:
pre-commit install
pre-commit install --hook-type commit-msgThis installs:
- pre-commit hooks: Terraform formatting, validation, and security checks
- commit-msg hook: Validates commit messages follow conventional commits format
All commits must follow the Conventional Commits specification. This is enforced by commitlint both locally (pre-commit hook) and in CI (pull requests).
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
feat(network): add support for IPv6 alias IPs
Add configuration option to enable IPv6 on alias IPs for control plane
high availability setups.
BREAKING CHANGE: The `enable_alias_ip` variable now requires explicit
IPv6 configuration.
Closes #123
- refactor: Changes that neither fix a bug nor add a feature.
- fix: Changes which patch a bug in the codebase.
- feat: Changes which introduce a new feature to the codebase.
- build: Changes which affect the build system or external dependencies.
- scopes:
- gradle: Changes which affect the Gradle build system.
- yarn: Changes which affect the Yarn build system.
- scopes:
- chore: Changes which are not user-facing, such as IntelliJ configuration files, gitignore, other repo configs,
updating dependencies, copyrights, or other non-code changes.
- scopes:
- project: Changes which affect project configuration files.
- deps: Changes which update dependencies.
- scopes:
- style: Changes which do not affect code logic, such as whitespaces, formatting, missing semicolons etc.
- test: Changes which add missing tests or fix existing ones.
- docs: Changes which affect documentation.
- scopes:
- business: Changes which update or add business documentation.
- technical: Changes which update or add technical documentation.
- readme: Changes which update or add the README file.
- scopes:
- perf: Changes which improve performance.
- ci: Changes which affect CI configuration files and scripts.
- scopes:
- github-actions: Changes which affect GitHub Actions configuration files.
- scopes:
- revert: Changes which revert a previous commit.
- BREAKING CHANGE: The commit introduces breaking API changes.
- Closes: The commit closes issues or pull requests.
- Implements: The commit implements features.
- Author: The commit author.
- Co-authored-by: The specified person co-authored the commit changes.
- Signed-off-by: A signoff may certify that the committer has the rights to submit the work under the project's license or agrees to some contributor representation, such as a Developer Certificate of Origin.
- Acked-by: The specified person liked the commit changes.
- Reviewed-by: The specified person reviewed and is completely satisfied with the commit changes.
- Tested-by: The specified person applied the commit changes and found them to have the desired effect.
- Refs: The commit references another commit by its hash ID. For multiple hash IDs, use a comma as a separator.
- Fork the repository
- Create a feature branch from
main - Install pre-commit hooks (see Setup section)
- Make your changes
- Run quality checks:
terraform fmt -recursive terraform init terraform validate pre-commit run --all-files
- Commit using conventional commit format
- Push to your fork
- Open a pull request against
main
This repository uses semantic-release, which tracks releases via Git tags.
- Do not rebase / force-push branches that are used for releases:
main,next, and maintenance branches like1.x. - If you want a clean history, rebase/squash on your feature branch before merging, not on
main/next.
- CI will validate all commits in your PR
- Terraform format, validation, and security checks must pass
- Commit messages must follow a conventional commits format
- CI will post a comment with validation results