We welcome contributions from the community and first want to thank you for taking the time to contribute!
Please familiarize yourself with the Code of Conduct before contributing.
Before you start working with build-inspector, please read our Developer Certificate of Origin. All contributions to this repository must be signed as described on that page. Your signature certifies that you wrote the patch or have the right to pass it on as an open-source patch.
We welcome many different types of contributions and not all of them need a Pull request. Contributions may include:
- New features and proposals
- Adding new rules and parsers
- Documentation
- Bug fixes
- Issue Triage
- Answering questions and giving feedback
- Helping to onboard new contributors
- Other related activities
$ docker build . -t bi_localdev
docker run -d -e SERVICE_PORT=8080 -p 8080:8080 --name bi_localdev bi_localdev
- API documentation can be located at http://localhost:8080/docs/swagger once the container is running.
- Pytest Tests:
pytest tests/unit_tests
- Functional Tests (with local instance running):
python tests/automated_functional_test/functional_test.py --configs tests/automated_functional_test/test_configs --url https://localhost:8080
This is a rough outline of what a contributor's workflow looks like:
- Make a fork of the repository within your GitHub account
- Create a topic branch in your fork from where you want to base your work
- Make commits of logical units
- Make sure your commit messages are with the proper format, quality and descriptiveness (see below)
- Ensure that all tests are passing
- Push your changes to the topic branch in your fork
- Create a pull request containing that commit
We follow the GitHub workflow and you can find more details on the GitHub flow documentation.
Before submitting your pull request, we advise you to use the following:
- Check if your code changes will pass code linting checks, unit tests, and the automated functional tests.
- Ensure your commit messages are descriptive. We follow the conventions on How to Write a Git Commit Message. Be sure to include any related GitHub issue references in the commit message. See GFM syntax for referencing issues and commits.
- Check the commits and commits messages and ensure they are free from typos.
Addition or modification of any rules or dependency parsers should include test cases in the /tests/automated_functional_test/test_configs/
directory.
Addition or modification of service code should include Pytest unit test coverage in /tests/unit_tests
For specifics on what to include in your report, please follow the guidelines in the issue and pull request templates when available.
The best way to reach us with a question when contributing is to ask on the original GitHub issue.