diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..6bdccfa --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,25 @@ +# Contribution guidelines + +Thank you for your interest in contributing to this project! +We welcome external contributions and aim to make the process as smooth as possible. + +## Workflow + +1. **Fork the repository**
+ Please begin by creating a public fork of the repository on your own GitHub account. + We disabled the creation of branches on the upstream repository for all users to prevent that stale branches are left hanging around. + +2. **Enable the CI on your fork**
+ Enable Github Actions on your fork to run the CI. + This will run a broader set of jobs than the PR-triggered CI, which require permissions on the repo's cache and container registry. + The maintainers will check your fork's CI to validate your PR. + +3. **Open a PR to `devel`**
+ Once your changes are ready, open a PR targeting the `devel` branch (**not** `main`). + If your contributions are still a work-in-progress, e.g. some of the CI checks on your fork are still failing, please open the PR as a draft. + Once your PR is merged into `devel`, additional CI jobs will run on our internal servers, with access to commercial licenses and proprietary tools. + The maintainers will take care of any issues, and push the contributions to `main` once all issues are fixed. + +## Communication + +If you're planning a larger contribution or need clarification, feel free to open an issue. We're happy to help guide you. diff --git a/README.md b/README.md index fe4f208..9b42662 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,10 @@ Unless specified otherwise in the respective file headers, all code in this repo - Register file code (e.g. [hw/regs/*.sv](hw/regs/)) is generated using a fork of lowRISC's [regtool](https://github.com/lowRISC/opentitan/blob/master/util/regtool.py) and is licensed under Apache 2.0 (see [LICENSE-APACHE](LICENSE-APACHE)). - All software sources are licensed under Apache 2.0. +## 👥 Contributing + +If you would like to contribute to this project, please check our [contribution guidelines](CONTRIBUTING.md). + ## 🚀 Getting started ### Environment setup for IIS-members For IIS members, set up the environment by sourcing the `iis-env.sh` script: @@ -117,3 +121,5 @@ python scripts/run_clang_format.py -ir sw/ --clang-format-executable=/usr/pack/r python scripts/run_clang_format.py -ir hw/ --clang-format-executable=/usr/pack/riscv-1.0-kgf/pulp-llvm-0.12.0/bin/clang-format ``` If you're not using the IIS setup, specify a valid `clang-format-12` binary instead. +. +