Contributions are welcome. This document outlines the process and conventions.
- Fork the repository
- Create a feature branch from
develop - Make your changes
- Submit a pull request against
develop
develop— active development, triggersedge-*image buildsmain— not used for direct development- Version tags (
v*) — trigger release image builds
This project uses Conventional Commits. PR titles are validated via prlint.
Valid prefixes:
| Prefix | Usage |
|---|---|
feat |
New feature |
fix |
Bug fix |
docs |
Documentation only |
chore |
Maintenance, dependencies |
refactor |
Code restructuring without behavior change |
perf |
Performance improvement |
test |
Adding or updating tests |
style |
Formatting, whitespace |
lang |
Translations |
Examples:
feat: add support for LDAP client type
fix: handle missing RADIUS_PORT gracefully
docs: update environment variable reference
- Add the version number to
SUPPORTED_VERSIONS.md - The CI pipeline will automatically build images for all listed versions
- The Dockerfile is linted with hadolint in CI
- Use
# hadolint ignore=DLXXXXfor intentional rule suppressions with a comment explaining why
- Shell scripts: follow existing patterns in
assets/01-init.sh - Use
shellcheckconventions where possible - Variable names, function names, comments, and error messages in English
All pull requests require review from @jozefrebjak (see CODEOWNERS).