|
| 1 | +# Contributing to benchmarking |
| 2 | + |
| 3 | +- [Opening New Issues](#opening-new-issues) |
| 4 | +- [Code Style](#code-style) |
| 5 | +- [Submitting Pull Requests](#submitting-pull-requests) |
| 6 | +- [Configuring Github fork](#configuring-github-fork) |
| 7 | + |
| 8 | +# Opening New Issues |
| 9 | + |
| 10 | +Please log bugs or suggestions as [GitHub issues](https://github.com/pmem/benchmarking/issues). |
| 11 | +Details such as OS and other components version are always appreciated. |
| 12 | + |
| 13 | +# Code Style |
| 14 | + |
| 15 | +* Indent with tabs (width: 8) |
| 16 | +* Max 90 chars per line |
| 17 | + |
| 18 | +**NOTE**: We're not using specific format tool yet - feel free to propose your favourite. |
| 19 | + |
| 20 | +# Submitting Pull Requests |
| 21 | + |
| 22 | +We take outside code contributions to `benchmarking` through GitHub pull requests. |
| 23 | + |
| 24 | +**NOTE: If you do decide to implement code changes and contribute them, |
| 25 | +please make sure you agree your contribution can be made available under the |
| 26 | +[BSD-style License used for benchmarking](LICENSE).** |
| 27 | + |
| 28 | +**NOTE: Submitting your changes also means that you certify the following:** |
| 29 | + |
| 30 | +``` |
| 31 | +Developer's Certificate of Origin 1.1 |
| 32 | +
|
| 33 | +By making a contribution to this project, I certify that: |
| 34 | +
|
| 35 | +(a) The contribution was created in whole or in part by me and I |
| 36 | + have the right to submit it under the open source license |
| 37 | + indicated in the file; or |
| 38 | +
|
| 39 | +(b) The contribution is based upon previous work that, to the best |
| 40 | + of my knowledge, is covered under an appropriate open source |
| 41 | + license and I have the right under that license to submit that |
| 42 | + work with modifications, whether created in whole or in part |
| 43 | + by me, under the same open source license (unless I am |
| 44 | + permitted to submit under a different license), as indicated |
| 45 | + in the file; or |
| 46 | +
|
| 47 | +(c) The contribution was provided directly to me by some other |
| 48 | + person who certified (a), (b) or (c) and I have not modified |
| 49 | + it. |
| 50 | +
|
| 51 | +(d) I understand and agree that this project and the contribution |
| 52 | + are public and that a record of the contribution (including all |
| 53 | + personal information I submit with it, including my sign-off) is |
| 54 | + maintained indefinitely and may be redistributed consistent with |
| 55 | + this project or the open source license(s) involved. |
| 56 | +``` |
| 57 | + |
| 58 | +In case of any doubt, the gatekeeper may ask you to certify the above in writing, |
| 59 | +i.e. via email or by including a `Signed-off-by:` line at the bottom |
| 60 | +of your commit comments. |
| 61 | + |
| 62 | +To improve tracking of who is the author of the contribution, we kindly ask you |
| 63 | +to use your real name (not an alias) when committing your changes to PMEMKV: |
| 64 | +``` |
| 65 | +Author: Random J Developer <[email protected]> |
| 66 | +``` |
| 67 | + |
| 68 | +# Configuring Github fork |
| 69 | + |
| 70 | +To build and submit documentation as an automatically generated pull request, |
| 71 | +the repository has to be properly configured. |
| 72 | + |
| 73 | +* [Personal access token](https://docs.github.com/en/github/authenticating-to-github/creating-a-personal-access-token) for Github account has to be generated. |
| 74 | + * Such personal access token has to be set in benchmarking repository's |
| 75 | + [secrets](https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets) |
| 76 | + as `DOC_UPDATE_GITHUB_TOKEN` variable. |
| 77 | + |
| 78 | +* `DOC_UPDATE_BOT_NAME` secret variable has to be set. In most cases it will be |
| 79 | + the same as Github account name. |
| 80 | + |
| 81 | +* `DOC_REPO_OWNER` secret variable has to be set. Name of the Github account, |
| 82 | + which will be target to make an automatic pull request with documentation. |
| 83 | + In most cases it will be the same as Github account name. |
| 84 | + |
| 85 | +To enable automatic images pushing to Github Container Registry, following variables: |
| 86 | + |
| 87 | +* `CONTAINER_REG` existing environment variable (defined in workflow files, in .github/ directory) |
| 88 | + has to be updated to contain proper GitHub Container Registry address (to forking user's container registry), |
| 89 | + |
| 90 | +* `GH_CR_USER` secret variable has to be set up - an account (with proper permissions) to publish |
| 91 | + images to the Container Registry (tab **Packages** in your GH profile/organization). |
| 92 | + |
| 93 | +* `GH_CR_PAT` secret variable also has to be set up - Personal Access Token |
| 94 | + (with only read & write packages permissions), to be generated as described |
| 95 | + [here](https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/creating-a-personal-access-token#creating-a-token) |
| 96 | + for selected account (user defined in above variable). |
0 commit comments