Investigate tools for testing
Currently, we do not have integrated means of testing the chart for oddities like YAML indentation failures, accidental property behavior changes, or other items. We've managed to catch most of these over time, through several rounds of manual testing and keen eyes. I would say we've been lucky, by way of vigilance.
We need to allocate time in test automation.
Some tools recommended by the greater community:
-
Helm hub mentions https://github.com/helm/chart-testing
ct
is the the tool for testing Helm charts. It is meant to be used for linting and testing pull requests. It automatically detects charts changed against the target branch. -
kubeval is a tool for validating a Kubernetes YAML or JSON configuration file. It can also be used as a library in other Go applications.
Kubernetes has strong definitions of what a Deployment, Pod, or ReplicationController are. It exposes that information via an OpenAPI based description. That description contains JSON Schema information for the Kubernetes types. This tool uses those extracted schemas, published at garethr/kubernetes-json-schema and garethr/openshift-json-schema. See those repositories and this blog post for the details.
MR !502 (closed) was opened by @consideRatio, from which we may be able to take strong example.