kbst / terraform-provider-kustomization

Terraform provider for Kustomize
https://www.kubestack.com
Apache License 2.0
270 stars 53 forks source link

Upgrade kustomize to v5.0.1 #227

Closed olfway closed 1 year ago

olfway commented 1 year ago

Add support for new Helm fields: additionalValuesFiles, skipTests, apiVersions and nameTemplate

Fixes: #223

olfway commented 1 year ago

Yes, I just bumped dependencies and after that fixed broken tests

In one case kustomize added creationTimestamp: null field

Other changes is because patches, as I understand, was for a long time an alias for patchesStrategicMerge And in 5.0 version both patchesJson6902 and patchesStrategicMerge are deprecated in favour of newer patches: https://github.com/kubernetes-sigs/kustomize/issues/5052#issuecomment-1470926760

So I converted patches (as alias to patchesStrategicMerge) to a newer patches

In one case I had to split files with patches into two separate files because newer patches doesn't support multiple patches in one file yet: https://github.com/kubernetes-sigs/kustomize/issues/5049

pst commented 1 year ago

Thanks for the background, I'm a bit concerned that this upstream change might break the kustomization_overlay's use of patches too. Although I would have expected a test to fail if it did. At the very least I'd have to document it in the release notes.

I will look into this as soon as I can. I am currently busy with a big release for the Kubestack framework. So it may take a few days until I find the time.

pst commented 1 year ago

During breakfast, I suddenly thought, wait, my concern about a breaking change doesn't apply. Because kustomization_resource in the Terraform schema only ever supported lists of objects, not the list of strings that Kustomization YAML also supported. So from the provider's perspective this is not a breaking change. I'll merge and see if I find time to test a release candidate.

Thanks for the contribution again!