From 4f2e8d004e372db3a1ac5fc9d515fa1700f72139 Mon Sep 17 00:00:00 2001 From: Stephanie Date: Thu, 10 Dec 2020 20:42:04 -0500 Subject: [PATCH 1/2] add keyset length check Signed-off-by: Stephanie --- pkg/utils/overriding/overriding.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkg/utils/overriding/overriding.go b/pkg/utils/overriding/overriding.go index c73b5b32c..6edcc3d13 100644 --- a/pkg/utils/overriding/overriding.go +++ b/pkg/utils/overriding/overriding.go @@ -116,6 +116,9 @@ func OverrideDevWorkspaceTemplateSpec(original *workspaces.DevWorkspaceTemplateS func ensureOnlyExistingElementsAreOverridden(spec *workspaces.DevWorkspaceTemplateSpecContent, overrides workspaces.Overrides) error { return checkKeys(func(elementType string, keysSets []sets.String) []error { + if len(keysSets) <= 1 { + return []error{} + } specKeys := keysSets[0] overlayKeys := keysSets[1] newElementsInOverlay := overlayKeys.Difference(specKeys) From be45de9f99f3b25cb2c618e1d2807801368dfdb1 Mon Sep 17 00:00:00 2001 From: Stephanie Date: Thu, 10 Dec 2020 21:30:03 -0500 Subject: [PATCH 2/2] check conflict between plugins and parent Signed-off-by: Stephanie --- pkg/utils/overriding/merging.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkg/utils/overriding/merging.go b/pkg/utils/overriding/merging.go index cf58a45d8..cb4aa63f0 100644 --- a/pkg/utils/overriding/merging.go +++ b/pkg/utils/overriding/merging.go @@ -36,6 +36,10 @@ func MergeDevWorkspaceTemplateSpec( if err := ensureNoConflictsWithPlugins(mainContent, pluginFlattenedContents...); err != nil { return nil, err } + // also need to ensure no conflict between parent and plugins + if err := ensureNoConflictsWithPlugins(parentFlattenedContent, pluginFlattenedContents...); err != nil { + return nil, err + } result := workspaces.DevWorkspaceTemplateSpecContent{}