Fix up chart linting, add docs and lint script (#146)
This updates the Helm linting system with the following changes: - Import lintconf.yaml with small change to comment distance in order to match existing values.yaml standards - Update Chart.yaml and values.yaml in each chart to pass linting standards - Maintainers added to each chart from OWNERS + CODEOWNERS, the linter requires GitHub usernames so argo-events maintainer names were converted - README updated with documentation around chart standards and testing - A local shell script added for running lint tests locally
This commit is contained in:
parent
30889df476
commit
5f33036890
9 changed files with 112 additions and 13 deletions
|
|
@ -51,6 +51,33 @@ argocd app create guestbook --dest-namespace default --dest-server https://kuber
|
|||
argocd app sync guestbook
|
||||
```
|
||||
|
||||
## New Application Versions
|
||||
|
||||
When raising application versions ensure you make the following changes:
|
||||
|
||||
- `values.yaml`: Bump all instances of the container image version
|
||||
- `Chart.yaml`: Ensure `appVersion` matches the above container image and bump `version`
|
||||
|
||||
Please ensure chart version changes adhere to semantic versioning standards:
|
||||
|
||||
- Patch: App version patch updates, backwards compatible optional chart features
|
||||
- Minor: New chart functionality (sidecars), major application updates or minor non-backwards compatible changes
|
||||
- Major: Large chart rewrites, major non-backwards compatible or destructive changes
|
||||
|
||||
## Testing Charts
|
||||
|
||||
As part of the Continous Intergration system we run Helm's [Chart Testing](https://github.com/helm/chart-testing) tool.
|
||||
|
||||
The checks for this tool are stricter than the standard Helm requirements, where fields normally considered optional like `maintainer` are required in the standard spec and must be valid GitHub usernames.
|
||||
|
||||
Linting configuration can be found in [lintconf.yaml](.circleci/lintconf.yaml)
|
||||
|
||||
The linting can be invoked manually with the following command:
|
||||
|
||||
```
|
||||
./scripts/lint.sh
|
||||
```
|
||||
|
||||
## Publishing Changes
|
||||
|
||||
Changes are automatically publish whenever a commit is merged to master. The CI job (see `.circleci/config.yaml`) runs this:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue