k8s-objectmatcher icon indicating copy to clipboard operation
k8s-objectmatcher copied to clipboard

IgnoreVolumeClaimTemplateTypeMetaAndStatus looks not work

Open Rory-Z opened this issue 3 years ago • 3 comments

Describe the bug IgnoreVolumeClaimTemplateTypeMetaAndStatus looks not work

Steps to reproduce the issue: I tried to compare the two statefulsets like this

opts := []patch.CalculateOption{
    patch.IgnoreStatusFields(), 
    patch.IgnoreVolumeClaimTemplateTypeMetaAndStatus(),
}
patchResult, err := patch.DefaultPatchMaker.Calculate(old, new, opts...)
fmt.Printf("==========================%+v\n", patchResult.String())

I got this

Patch: {"spec":{"volumeClaimTemplates":[{"metadata":{"name":"emqx-data","namespace":"default"},"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"20Mi"}},"storageClassName":"standard"},"status":{"phase":"Pending"}},{"metadata":{"name":"emqx-log","namespace":"default"},"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"20Mi"}},"storageClassName":"standard"},"status":{"phase":"Pending"}}]}} 

volumeClaimTemplates is not ignored

Expected behavior volumeClaimTemplates should be ignored

Additional context k8s-objectmatcher version: v1.7.0 go version: go1.17.3 darwin/amd64

Rory-Z avatar Jan 24 '22 16:01 Rory-Z

Same for me as well

iamabhishek-dubey avatar Feb 14 '22 19:02 iamabhishek-dubey

Similar error for me - PatchResult is not empty even when patch.IgnoreVolumeClaimTemplateTypeMetaAndStatus()) "{"spec":{"volumeClaimTemplates":[{"metadata":{"name":"corestore""

mobasherul avatar May 23 '22 20:05 mobasherul

@mobasherul I forked this project and fixed it

github.com/iamabhishek-dubey/k8s-objectmatcher/patch

Example:-

	patchResult, err := patch.DefaultPatchMaker.Calculate(storedStateful, newStateful,
		patch.IgnoreStatusFields(),
		patch.IgnoreVolumeClaimTemplateTypeMetaAndStatus(),
		patch.IgnorePersistenVolumeFields(),
		patch.IgnoreField("kind"),
		patch.IgnoreField("apiVersion"),
		patch.IgnoreField("metadata"),
	)

iamabhishek-dubey avatar May 24 '22 14:05 iamabhishek-dubey