diff --git a/kustomize/commands/edit/remove/configmap.go b/kustomize/commands/edit/remove/removeconfigmap.go similarity index 77% rename from kustomize/commands/edit/remove/configmap.go rename to kustomize/commands/edit/remove/removeconfigmap.go index e327197bb..6348b4fb9 100644 --- a/kustomize/commands/edit/remove/configmap.go +++ b/kustomize/commands/edit/remove/removeconfigmap.go @@ -6,6 +6,7 @@ package remove import ( "errors" "fmt" + "log" "strings" "github.com/spf13/cobra" @@ -67,12 +68,25 @@ func (o *removeConfigMapOptions) RunRemoveConfigMap(fSys filesys.FileSystem) err } var newConfigMaps []types.ConfigMapArgs - for _, configMap := range m.ConfigMapGenerator { - if kustfile.StringInSlice(configMap.Name, o.configMapNames) { + foundConfigMaps := make(map[string]bool) + for _, removeName := range o.configMapNames { + foundConfigMaps[removeName] = false + } + + for _, currentConfigMap := range m.ConfigMapGenerator { + if kustfile.StringInSlice(currentConfigMap.Name, o.configMapNames) { + foundConfigMaps[currentConfigMap.Name] = true continue } - newConfigMaps = append(newConfigMaps, configMap) + newConfigMaps = append(newConfigMaps, currentConfigMap) } + + for name, found := range foundConfigMaps { + if !found { + log.Printf("configmap %s doesn't exist in kustomization file", name) + } + } + m.ConfigMapGenerator = newConfigMaps return mf.Write(m) } diff --git a/kustomize/commands/edit/remove/configmap_test.go b/kustomize/commands/edit/remove/removeconfigmap_test.go similarity index 84% rename from kustomize/commands/edit/remove/configmap_test.go rename to kustomize/commands/edit/remove/removeconfigmap_test.go index bd71cfa26..6427c2ef0 100644 --- a/kustomize/commands/edit/remove/configmap_test.go +++ b/kustomize/commands/edit/remove/removeconfigmap_test.go @@ -14,7 +14,8 @@ import ( ) func TestRemoveConfigMap(t *testing.T) { - const configMapName = "example-configmap" + const configMapName01 = "example-configmap-01" + const configMapName02 = "example-configmap-02" tests := map[string]struct { input string @@ -29,23 +30,23 @@ configMapGenerator: - name: %s files: - application.properties -`, configMapName), - args: []string{configMapName}, +`, configMapName01), + args: []string{configMapName01}, }, "multiple": { input: fmt.Sprintf(` apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization configMapGenerator: -- name: %s-01 +- name: %s files: - application.properties -- name: %s-02 +- name: %s files: - application.properties -`, configMapName, configMapName), +`, configMapName01, configMapName02), args: []string{ - fmt.Sprintf("%s-01,%s-02", configMapName, configMapName), + fmt.Sprintf("%s,%s", configMapName01, configMapName02), }, }, "miss": { @@ -56,7 +57,7 @@ configMapGenerator: - name: %s files: - application.properties -`, configMapName), +`, configMapName01), args: []string{"foo"}, }, }