|
| 1 | +# Contributing to build-service |
| 2 | + |
| 3 | +## Table of Contents |
| 4 | + |
| 5 | +* [Project Overview](#project-overview) |
| 6 | +* [How to Report Issues](#how-to-report-issues) |
| 7 | +* [How to Submit Pull Requests](#how-to-submit-pull-requests) |
| 8 | + * [Development Workflow](#development-workflow) |
| 9 | + * [Pull Request Guidelines](#pull-request-guidelines) |
| 10 | + * [Security Best Practices](#security-best-practices) |
| 11 | + |
| 12 | +* [Review Process](#review-process) |
| 13 | + |
| 14 | +## Build service |
| 15 | + |
| 16 | +The build-service repository is used in [Konflux](https://konflux-ci.dev). |
| 17 | +Therefore, everybody should follow its [Code of Conduct](https://github.com/konflux-ci/community/blob/main/CODE_OF_CONDUCT.md). |
| 18 | + |
| 19 | +## How to Report Issues |
| 20 | + |
| 21 | +- We encourage early communication for all types of contributions. |
| 22 | +- Before filing an issue, make sure to check if it is not reported already. |
| 23 | +- If the contribution is non-trivial (straightforward bugfixes, typos, etc.), please open an issue to discuss your plans and get guidance from maintainers. |
| 24 | +- Please fill out included issue templates with all applicable information. |
| 25 | + |
| 26 | +## How to Submit Pull Requests |
| 27 | + |
| 28 | +### Development Workflow |
| 29 | + |
| 30 | +1. **Fork and Clone**: Fork this repository and clone your fork |
| 31 | +2. **Create Feature Branch**: Create a new topic branch based on `main` |
| 32 | +3. **Make Changes**: Implement your changes |
| 33 | +4. **Commit Changes**: See [commit guidelines](#pull-request-guidelines) |
| 34 | + |
| 35 | +### Pull Request Guidelines |
| 36 | + |
| 37 | +**Commit Requirements:** |
| 38 | +- Write clear, descriptive commit titles. Should fit under 50 characters |
| 39 | +- Write meaningful commit descriptions with each line having less than 72 characters |
| 40 | +- Split your contribution into several commits if applicable, each should represent a logical chunk |
| 41 | +- Add line `Assisted-by: <name-of-ai-tool>` if you used an AI tool for your contribution |
| 42 | +- Sign-off your commits in order to certify that you adhere to [Developer Certificate of Origin](https://developercertificate.org) |
| 43 | + |
| 44 | +**Pull Request Content:** |
| 45 | +- **Title**: Clear, descriptive title. Should fit under 72 characters. |
| 46 | +- **Description**: Explain the overall changes and their purpose, this should be a cover letter for your commits. |
| 47 | +- **Testing**: Describe how the changes were tested |
| 48 | +- **Links**: Reference related issues or upstream stories. |
| 49 | + |
| 50 | +**Remember:** |
| 51 | +- Konflux is a community project and proper descriptions cannot be replaced by referencing a publicly inaccessible link to Jira or any other private resource. |
| 52 | +- Reviewers, other contributors and future generations might not have the same context as you have at the moment of PR submission. |
| 53 | + |
| 54 | +### Security basics |
| 55 | + |
| 56 | +- Never commit secrets or keys to the repository |
| 57 | +- Never expose or log sensitive information |
| 58 | + |
| 59 | +## Review Process |
| 60 | + |
| 61 | +**Requirements for Approval:** |
| 62 | +- All CI checks pass |
| 63 | +- Code review approval from maintainers |
| 64 | + |
| 65 | +**Review Criteria:** |
| 66 | +- The contribution follows established patterns and conventions |
| 67 | +- Changes are tested and documented |
| 68 | +- Security best practices are followed |
| 69 | + |
| 70 | +For any questions or help with contributing, please open an issue or reach out to the maintainers. |
0 commit comments