Add Default Kubernetes Version for Dry-Run #565
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This update improves the handling of Helm charts that do not specify a
kubeVersion
in theirchart.yaml
, an example is this redis chart in the image above. The default fallback was Kubernetes versionv1.20.0
which affected the rendering of templates and caused this issue.This change ensures that when kubeVersion is not specified, the Helm dry-run process will fall back to the current version of the Kubernetes cluster in the playground environment.
Notes for Reviewers
Ideally, the version constraint retrieved from
chart.Metadata.KubeVersion
should not be used to determine the Kubernetes version for the dry run. Instead, the dry-run should utilize the current Kubernetes cluster version to ensure that Helm chart constraints are validated against our cluster's version rather than a potentially outdated version specified in the chart's metadata.During a Helm dry-run, there is no actual interaction with the live Kubernetes cluster, meaning the process doesn't query the cluster to retrieve the current version. So in this case hardcoding will be better.
Signed commits