You are welcome to contribute content (code, documentation etc.) to this open source project.
There are some important things to know:
- You must comply to the license of this project, accept the Developer Certificate of Origin (see below) before being able to contribute. The acknowledgement to the DCO will usually be requested from you as part of your first pull request to this project.
- Please adhere to our Code of Conduct.
- If you plan to use generative AI for your contribution, please see our guideline for AI-generated code contributions.
- Not all proposed contributions can be accepted. Some features may fit another project better or don't fit the general direction of this project. Of course, this doesn't apply to most bug fixes, but a major feature implementation for instance needs to be discussed with one of the maintainers first. The best way would be to just open an issue to discuss the feature you plan to implement (make it clear that you intend to contribute).
Contributors will be asked to accept a DCO before they submit the first pull request to this project, this happens in an automated fashion during the submission process. SAP uses the standard DCO text of the Linux Foundation.
- Make sure the change is welcome (see General Remarks).
- Fork the repository and create a branch.
- Make your changes and verify them locally:
- Run
make checkto run code generation, linting, and all tests. - See DEVELOPMENT.md for all available make targets.
- Run
- Commit using Conventional Commits format (e.g.
feat:,fix:,chore:). - Create a pull request.
- Follow the link posted by the CLA assistant to your pull request and accept it, as described above.
- Wait for code review and approval, possibly enhancing your change on request.
Prerequisites: Go (see version in go.mod), Docker, kubectl.
Key commands:
make check— full validation (codegen + lint + test + test-e2e)make test— unit testsmake test-e2e— end-to-end testsmake codegen— regenerate CRDs, RBAC, and DeepCopy after API type changesmake lint-fix— lint and auto-fixmake run— run broker locally with debug logging
See DEVELOPMENT.md for the full list.
By contributing, you agree that your contributions will be licensed under the Apache-2.0 License.