From b51b3c27ce1ebcbb7ff5c5f186d71a7dfc089b32 Mon Sep 17 00:00:00 2001 From: Shubheksha Jalan Date: Tue, 25 Sep 2018 01:02:22 +0530 Subject: [PATCH] fix error during restore when spec.ports are not found Signed-off-by: Shubheksha Jalan --- pkg/restore/service_action.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkg/restore/service_action.go b/pkg/restore/service_action.go index fdeb67770..943ff79cc 100644 --- a/pkg/restore/service_action.go +++ b/pkg/restore/service_action.go @@ -59,6 +59,11 @@ func (a *serviceAction) Execute(obj runtime.Unstructured, restore *api.Restore) delete(spec, "clusterIP") } + // Since spec.ports is an optional key, we can ignore 'not found' errors. Also assuming it was a string already. + if val, _ := collections.GetString(spec, "spec.ports"); val != "None" { + delete(spec, "spec.ports") + } + preservedPorts, err := getPreservedPorts(obj) if err != nil { return nil, nil, err