Move getPatchType logic back to main function
Kubernetes-commit: 4ed5653a0bc8ca53ca6a917e634457bd7a2d8dae
This commit is contained in:
parent
351ebce2c4
commit
b19c7e78f3
|
|
@ -115,9 +115,13 @@ func (p *Patcher) patchSimple(obj runtime.Object, modified []byte, namespace, na
|
||||||
|
|
||||||
var patch []byte
|
var patch []byte
|
||||||
|
|
||||||
patchType, err := p.getPatchType(p.Mapping.GroupVersionKind)
|
patchType := types.StrategicMergePatchType
|
||||||
|
_, err = scheme.Scheme.New(p.Mapping.GroupVersionKind)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, nil, fmt.Sprintf("getting patch type for %v:", p.Mapping.GroupVersionKind), err
|
if !runtime.IsNotRegisteredError(err) {
|
||||||
|
return nil, nil, fmt.Sprintf("getting instance of versioned object for %v:", p.Mapping.GroupVersionKind), err
|
||||||
|
}
|
||||||
|
patchType = types.MergePatchType
|
||||||
}
|
}
|
||||||
|
|
||||||
switch patchType {
|
switch patchType {
|
||||||
|
|
@ -160,19 +164,6 @@ func (p *Patcher) patchSimple(obj runtime.Object, modified []byte, namespace, na
|
||||||
return patch, patchedObj, "", err
|
return patch, patchedObj, "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
// getPatchType returns correct PatchType for the given GVK.
|
|
||||||
func (p *Patcher) getPatchType(gvk schema.GroupVersionKind) (types.PatchType, error) {
|
|
||||||
_, err := scheme.Scheme.New(gvk)
|
|
||||||
if err == nil {
|
|
||||||
return types.StrategicMergePatchType, nil
|
|
||||||
}
|
|
||||||
if runtime.IsNotRegisteredError(err) {
|
|
||||||
return types.MergePatchType, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
return types.MergePatchType, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// buildMergePatch builds patch according to the JSONMergePatch which is used for
|
// buildMergePatch builds patch according to the JSONMergePatch which is used for
|
||||||
// custom resource definitions.
|
// custom resource definitions.
|
||||||
func (p *Patcher) buildMergePatch(original, modified, current []byte) ([]byte, error) {
|
func (p *Patcher) buildMergePatch(original, modified, current []byte) ([]byte, error) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue