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
- feat(proto): add appVersion field This provides a simple field to expose the version of the application contained in a chart. Closes #2036 — committed to technosophos/k8s-helm by technosophos 7 years ago
- Add "--namespace" to helm lint Keep lint syntax as close as possible to "helm install" resp. "helm upgrade", so that one only needs to change the command. See #2036 — committed to immmr/helm by deleted user 7 years ago
- Be strict, when rendering during lint We want to see the rendering fail, if we missed a value. See #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
- Add "--set" and "--values" to helm lint Keep lint syntax as close as possible to "helm install" resp. "helm upgrade", so that one only needs to change the command. Closes #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
- Fix lint unit test See #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
- Add "--namespace" to helm lint Keep lint syntax as close as possible to "helm install" resp. "helm upgrade", so that one only needs to change the command. See #2036 — committed to immmr/helm by deleted user 7 years ago
- Be strict, when rendering during lint We want to see the rendering fail, if we missed a value. See #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
- Add "--set" and "--values" to helm lint Keep lint syntax as close as possible to "helm install" resp. "helm upgrade", so that one only needs to change the command. Closes #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
- Fix lint unit test See #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
- Add "--namespace" to helm lint Keep lint syntax as close as possible to "helm install" resp. "helm upgrade", so that one only needs to change the command. See #2036 — committed to immmr/helm by deleted user 7 years ago
- Be strict, when rendering during lint We want to see the rendering fail, if we missed a value. See #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
- Add "--set" and "--values" to helm lint Keep lint syntax as close as possible to "helm install" resp. "helm upgrade", so that one only needs to change the command. Closes #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
- Fix lint unit test See #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
- Add "--namespace" to helm lint Keep lint syntax as close as possible to "helm install" resp. "helm upgrade", so that one only needs to change the command. See #2036 — committed to immmr/helm by deleted user 7 years ago
- Be strict, when rendering during lint We want to see the rendering fail, if we missed a value. See #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
- Add "--set" and "--values" to helm lint Keep lint syntax as close as possible to "helm install" resp. "helm upgrade", so that one only needs to change the command. Closes #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
- Fix lint unit test See #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
- Add "--namespace" to helm lint Keep lint syntax as close as possible to "helm install" resp. "helm upgrade", so that one only needs to change the command. See #2036 — committed to immmr/helm by deleted user 7 years ago
- Be strict, when rendering during lint We want to see the rendering fail, if we missed a value. See #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
- Add "--set" and "--values" to helm lint Keep lint syntax as close as possible to "helm install" resp. "helm upgrade", so that one only needs to change the command. Closes #2495,#2036 — committed to immmr/helm by deleted user 7 years ago
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.