helm: Helm lint Does Not Support Same Arguments as Install/Upgrade

What keywords did you search in Kubernetes issues before filing this one? (If you have found any duplicates, you should instead reply there.): lint, --set, --namespace, --value

Is this a BUG REPORT or FEATURE REQUEST? (choose one): FEATURE REQUEST

Helm version (use helm version): Client: &version.Version{SemVer:“v2.2.0”, GitCommit:“fc315ab59850ddd1b9b4959c89ef008fef5cdf89”, GitTreeState:“clean”} Server: &version.Version{SemVer:“v2.2.0”, GitCommit:“fc315ab59850ddd1b9b4959c89ef008fef5cdf89”, GitTreeState:“clean”}

Description: helm lint should support the same set of (applicable) arguments as helm install and helm upgrade.

helm lint does not support the following arguments:

  • --namespace
  • --set
  • --values

However helm lint does support --tiller-namespace now (thank you!), but this argument should be the same name, i.e. --namespace.

Reasons: helm lint is useful in chart development, and also in CI pipelines. However, it is very desirable to run the helm lint validation with the exact same parameters as helm install/upgrade will be run on a system.

There are circumstances where a default values.yaml file may not be complete by design. Where it is better to require the define values on the command line via --set. (I will not provide some of the cases here, as it may sidetrack the spirit of this issue).

Also, it is generally better to run the new chart automated integration/testing with the same arguments as are used in the actual install/upgrade. This guarantees that a single version of a Chart is all that is needed, vs a different default values.yaml setup specifically for helm lint.

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Reactions: 10
  • Comments: 17 (10 by maintainers)

Commits related to this issue

Most upvoted comments

This is huge gap in our CI/CD pipeline, please prioritise it.

Hey guys, curious if there is any update here. We have the usecase the OP describes, where the lint fails on our chart which has required fields which must be set on the command line. This makes lint unfortunately useless for us.

I see there was some initial interest in fixing this short term, but it seems to have fallen by the wayside.

This makes sense to me. it would definitely make lint a better tool for finding problems introduced by parameters even when the base chart seems to work fine. It would also make it easier to do better testing of various combinations for parameters.