|
| 1 | +# Contributing Guidelines |
| 2 | + |
| 3 | +We'd love to accept your patches and contributions to this project. There are just a few small guidelines you need to follow. |
| 4 | + |
| 5 | +# How to Contribute |
| 6 | + |
| 7 | +With these steps you can make a contribution: |
| 8 | + |
| 9 | + 1. Fork this repository, develop and test your changes on that fork. |
| 10 | + 2. All commits have a meaningful description and are signed off as described above. |
| 11 | + 3. Submit a pull request from your fork to this project. |
| 12 | + |
| 13 | +## Code reviews |
| 14 | + |
| 15 | +All submissions, including submissions by project members, require review. We use GitHub pull requests for this purpose. Consult [GitHub Help](https://help.github.com/articles/about-pull-requests/) for more information on using pull requests. See the above stated requirements for PR on this project. |
| 16 | + |
| 17 | +## Technical Requirements |
| 18 | + |
| 19 | +Your PR has to fulfill the following points, to be considered: |
| 20 | + |
| 21 | + * All Workflows must pass |
| 22 | + * DCO Check must pass |
| 23 | + * The title of the PR starts with the chart name (e.g. `[chart_name]: Additional options for SecurityContext`) |
| 24 | + * Changes must follow [Helm best practices](https://helm.sh/docs/chart_best_practices/). |
| 25 | + * Changes to a chart require a version bump for that chart following [semver standard](https://semver.org/). |
| 26 | + * New/Changed Configurations for the chart are documented in it's `README.md.gotmpl` file. |
| 27 | + |
| 28 | +# Chart Requirements |
| 29 | + |
| 30 | +There are certain requirements charts have to match, to be maintained in your Helm Repository. Most of the requirements are relevant when you are planning to add a new chart to the repository. |
| 31 | + |
| 32 | +## Documentation |
| 33 | + |
| 34 | +The documentation for each chart is done with [helm-docs](https://github.com/norwoodj/helm-docs). This way we can ensure that values are consistent with the chart documentation: |
| 35 | + |
| 36 | +``` |
| 37 | +make helm-docs |
| 38 | +``` |
| 39 | +### Upgrades |
| 40 | + |
| 41 | +If your chart requires manual interaction for version upgrades (might be the case for major upgrades) you need to mention the exact instructions in a dedicated documentation part of your chart. That's not the case for upgrades, where no specific interaction is required. |
| 42 | + |
| 43 | +## Dependencies |
| 44 | + |
| 45 | +Dependency versions should be set to a fixed version. We allow version fixing over all bugfix versions (eg. `~1.0.0`), since bugfix releases should not have big impact. |
| 46 | + |
| 47 | +``` |
| 48 | +dependencies: |
| 49 | +- name: "apache" |
| 50 | + version: "~1.3.0" |
| 51 | + repository: "https://charts.bitnami.com/bitnami" |
| 52 | +``` |
| 53 | + |
| 54 | +There might be cases where this rule can not be applied, we are open to discuss that. |
| 55 | + |
| 56 | + |
| 57 | +## ArtifactHub Annotations |
| 58 | + |
| 59 | +Since we release our charts on [Artifacthub](https://artifacthub.io/) we encourage making use of the provided chart annotations for Artifacthub. |
| 60 | + |
| 61 | + * [All Artifacthub Annotations](https://github.com/artifacthub/hub/blob/master/docs/helm_annotations.md) |
| 62 | + |
| 63 | +In some cases they might not be required. |
| 64 | + |
| 65 | +### Changelog |
| 66 | + |
| 67 | +Changes on a chart must be documented in a chart specific changelog. For every new release the entire ```artifacthub.io/changes``` needs to be rewritten. Each change requires a new bullet point following the pattern `- "[{type}]: {description}"`. Please use the following template: |
| 68 | + |
| 69 | + |
| 70 | +``` |
| 71 | +artifacthub.io/changes: | |
| 72 | + - "[Added]: Something New was added" |
| 73 | + - "[Changed]: Changed Something within this chart" |
| 74 | + - "[Changed]: Changed Something else within this chart" |
| 75 | + - "[Deprecated]: Something deprecated" |
| 76 | + - "[Removed]: Something was removed" |
| 77 | + - "[Fixed]: Something was fixed" |
| 78 | + - "[Security]": Some Security Patch was included" |
| 79 | +``` |
0 commit comments