* Enhancing lint.sh with additional checks
* reverting post local testing changes
* addressing reviews.
removing yq installetion
chaning yq with yaml for Chart.yaml parsing.
modifing Erro message for not github account check.
also modifing lint.sh so it can be used locally
The bot that merges PRs re-runs the e2e job before merging a pull
request. By also having it here (circleci provides fast response
to PR authors) we make sure the version has been incremented in
the chart prior to it being merged.
Indentation checking was catching catching out the commenting of
whole sections of indented code in values.yaml files as being
errors. Yet, code editors and other tools automatically indented
to this level. Removing the check.
This commit does a couple things
1. It reformats the layout to have checks via self contained
functions rather than all in one loop.
2 Adds a check that the chart.version was incremented
Ref #2373
This does not lint yaml templates as they are templates rather
than valid yaml files. They cannot be linted with a normal linter
yamllint is used for linting. This is an existing Python project
https://github.com/adrienverge/yamllint
The rules are not the default rules and are stored in their
entirity so they can be controlled over time
The existance of a Chart.yaml file and values.yaml file is checked
and an error is thrown if one is missing. Helm lint will not
detect a chart if Chart.yaml is missing and if a values.yaml file
is missing it is noted as info.
The run function is introduced to enable running all the linters,
capturing non-zero exit codes, and exiting with a non-zdero code
if any of them fail. This is used instead of exiting when the
first failure happens to provide more feedback to chart developers.
This change does the following:
- Adds a circleci config file
- Has 2 scripts. One for installing tools and a separate one for
executing tests
- Removes lint testing from the changed.sh script since it is
performed elsewhere
- For linting changes the git diff mechanism to look at the merge
base rather than all differences from master. The intent is to
look for changes in this request rather than including those
in PRs that may have already been merged to master while this
one lingered.
Ref #2337