From b16a7364fda64e0365be14d2950b78d528a53024 Mon Sep 17 00:00:00 2001 From: jregan Date: Sat, 29 Dec 2018 15:03:26 -0800 Subject: [PATCH] Convert namespaced generators to in-memory. --- .../expected.yaml | 33 ------- .../in/kustomization.yaml | 21 ----- .../in/password.txt | 1 - .../testcase-generators-namespace/test.yaml | 4 - pkg/target/namespacedgenerators_test.go | 87 +++++++++++++++++++ 5 files changed, 87 insertions(+), 59 deletions(-) delete mode 100644 pkg/commands/build/testdata/testcase-generators-namespace/expected.yaml delete mode 100644 pkg/commands/build/testdata/testcase-generators-namespace/in/kustomization.yaml delete mode 100644 pkg/commands/build/testdata/testcase-generators-namespace/in/password.txt delete mode 100644 pkg/commands/build/testdata/testcase-generators-namespace/test.yaml create mode 100644 pkg/target/namespacedgenerators_test.go diff --git a/pkg/commands/build/testdata/testcase-generators-namespace/expected.yaml b/pkg/commands/build/testdata/testcase-generators-namespace/expected.yaml deleted file mode 100644 index 1d265fe43..000000000 --- a/pkg/commands/build/testdata/testcase-generators-namespace/expected.yaml +++ /dev/null @@ -1,33 +0,0 @@ -apiVersion: v1 -data: - altGreeting: Good Morning from non-default namespace! - enableRisky: "false" -kind: ConfigMap -metadata: - name: the-non-default-namespace-map-b6h49k7mt8 - namespace: non-default ---- -apiVersion: v1 -data: - altGreeting: Good Morning from default namespace! - enableRisky: "false" -kind: ConfigMap -metadata: - name: the-map-4959m5tm6c ---- -apiVersion: v1 -data: - password.txt: dmVyeSRlY3JldA== -kind: Secret -metadata: - name: the-non-default-namespace-secret-255294gd9d - namespace: non-default -type: Opaque ---- -apiVersion: v1 -data: - password.txt: dmVyeSRlY3JldA== -kind: Secret -metadata: - name: the-secret-cfbmct72tb -type: Opaque diff --git a/pkg/commands/build/testdata/testcase-generators-namespace/in/kustomization.yaml b/pkg/commands/build/testdata/testcase-generators-namespace/in/kustomization.yaml deleted file mode 100644 index 5dc4dba90..000000000 --- a/pkg/commands/build/testdata/testcase-generators-namespace/in/kustomization.yaml +++ /dev/null @@ -1,21 +0,0 @@ -apiVersion: v1beta1 -kind: Kustomization -configMapGenerator: -- name: the-non-default-namespace-map - namespace: non-default - literals: - - altGreeting=Good Morning from non-default namespace! - - enableRisky="false" -- name: the-map - literals: - - altGreeting=Good Morning from default namespace! - - enableRisky="false" - -secretGenerator: -- name: the-non-default-namespace-secret - namespace: non-default - commands: - password.txt: "cat password.txt" -- name: the-secret - commands: - password.txt: "cat password.txt" \ No newline at end of file diff --git a/pkg/commands/build/testdata/testcase-generators-namespace/in/password.txt b/pkg/commands/build/testdata/testcase-generators-namespace/in/password.txt deleted file mode 100644 index 0ceb1fc32..000000000 --- a/pkg/commands/build/testdata/testcase-generators-namespace/in/password.txt +++ /dev/null @@ -1 +0,0 @@ -very$ecret \ No newline at end of file diff --git a/pkg/commands/build/testdata/testcase-generators-namespace/test.yaml b/pkg/commands/build/testdata/testcase-generators-namespace/test.yaml deleted file mode 100644 index bf13f64b6..000000000 --- a/pkg/commands/build/testdata/testcase-generators-namespace/test.yaml +++ /dev/null @@ -1,4 +0,0 @@ -description: generators-namespace -args: [] -filename: testdata/testcase-generators-namespace/in -expectedStdout: testdata/testcase-generators-namespace/expected.yaml diff --git a/pkg/target/namespacedgenerators_test.go b/pkg/target/namespacedgenerators_test.go new file mode 100644 index 000000000..61d3cd2db --- /dev/null +++ b/pkg/target/namespacedgenerators_test.go @@ -0,0 +1,87 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package target + +import ( + "testing" +) + +func TestNamespacedGenerator(t *testing.T) { + th := NewKustTestHarness(t, "/app") + th.writeK("/app", ` +apiVersion: v1beta1 +kind: Kustomization +configMapGenerator: +- name: the-non-default-namespace-map + namespace: non-default + literals: + - altGreeting=Good Morning from non-default namespace! + - enableRisky="false" +- name: the-map + literals: + - altGreeting=Good Morning from default namespace! + - enableRisky="false" + +secretGenerator: +- name: the-non-default-namespace-secret + namespace: non-default + commands: + password.txt: "echo verySecret" +- name: the-secret + commands: + password.txt: "echo anotherSecret" +`) + m, err := th.makeKustTarget().MakeCustomizedResMap() + if err != nil { + t.Fatalf("Err: %v", err) + } + th.assertActualEqualsExpected(m, ` +apiVersion: v1 +data: + altGreeting: Good Morning from non-default namespace! + enableRisky: "false" +kind: ConfigMap +metadata: + name: the-non-default-namespace-map-b6h49k7mt8 + namespace: non-default +--- +apiVersion: v1 +data: + altGreeting: Good Morning from default namespace! + enableRisky: "false" +kind: ConfigMap +metadata: + name: the-map-4959m5tm6c +--- +apiVersion: v1 +data: + password.txt: dmVyeVNlY3JldAo= +kind: Secret +metadata: + name: the-non-default-namespace-secret-9fgdmbbk5c + namespace: non-default +type: Opaque +--- +apiVersion: v1 +data: + password.txt: YW5vdGhlclNlY3JldAo= +kind: Secret +metadata: + name: the-secret-7dd8hcgfhk +type: Opaque +`) +}