From a3e8c0426ceae5b600807580db2a54e991407a9b Mon Sep 17 00:00:00 2001 From: Yusuke Kuoka Date: Mon, 12 Dec 2022 23:37:27 +0000 Subject: [PATCH] Add e2e test for helmfile-diff with post-renderer Signed-off-by: Yusuke Kuoka Signed-off-by: yxxhero --- .../snapshot/postrenderer_diff/config.yaml | 6 ++ .../snapshot/postrenderer_diff/input.yaml | 43 +++++++++++++ .../snapshot/postrenderer_diff/output.yaml | 62 +++++++++++++++++++ 3 files changed, 111 insertions(+) create mode 100644 test/e2e/template/helmfile/testdata/snapshot/postrenderer_diff/config.yaml create mode 100644 test/e2e/template/helmfile/testdata/snapshot/postrenderer_diff/input.yaml create mode 100644 test/e2e/template/helmfile/testdata/snapshot/postrenderer_diff/output.yaml diff --git a/test/e2e/template/helmfile/testdata/snapshot/postrenderer_diff/config.yaml b/test/e2e/template/helmfile/testdata/snapshot/postrenderer_diff/config.yaml new file mode 100644 index 00000000..9eb45fce --- /dev/null +++ b/test/e2e/template/helmfile/testdata/snapshot/postrenderer_diff/config.yaml @@ -0,0 +1,6 @@ +localDockerRegistry: + enabled: true + port: 5001 +chartifyTempDir: temp1 +helmfileArgs: +- diff diff --git a/test/e2e/template/helmfile/testdata/snapshot/postrenderer_diff/input.yaml b/test/e2e/template/helmfile/testdata/snapshot/postrenderer_diff/input.yaml new file mode 100644 index 00000000..a317ee0e --- /dev/null +++ b/test/e2e/template/helmfile/testdata/snapshot/postrenderer_diff/input.yaml @@ -0,0 +1,43 @@ +helmDefaults: + postRenderer: ../../postrenderers/add-cm1.bash + +releases: +- name: foo + chart: ../../charts/raw-0.1.0 + values: + - templates: + - | + apiVersion: v1 + kind: ConfigMap + metadata: + name: {{`{{ .Release.Name }}`}}-1 + namespace: {{`{{ .Release.Namespace }}`}} + data: + foo: FOO + dep: + templates: + - | + apiVersion: v1 + kind: ConfigMap + metadata: + name: {{`{{ .Release.Name }}`}}-2 + namespace: {{`{{ .Release.Namespace }}`}} + data: + bar: BAR + postRenderer: ../../postrenderers/add-cm2.bash +- name: baz + chart: ../../charts/raw-0.1.0 + values: + - templates: + - | + apiVersion: v1 + kind: ConfigMap + metadata: + name: {{`{{ .Release.Name }}`}}-3 + namespace: {{`{{ .Release.Namespace }}`}} + data: + baz: BAZ + dependencies: + - alias: dep + chart: oci://localhost:5001/myrepo/raw + version: 0.1.0 diff --git a/test/e2e/template/helmfile/testdata/snapshot/postrenderer_diff/output.yaml b/test/e2e/template/helmfile/testdata/snapshot/postrenderer_diff/output.yaml new file mode 100644 index 00000000..71d25c83 --- /dev/null +++ b/test/e2e/template/helmfile/testdata/snapshot/postrenderer_diff/output.yaml @@ -0,0 +1,62 @@ +Building dependency release=foo, chart=../../charts/raw-0.1.0 +Building dependency release=baz, chart=$WD/temp1/baz +Hang tight while we grab the latest from your chart repositories... +...Successfully got an update from the "myrepo" chart repository +...Successfully got an update from the "istio" chart repository +Update Complete. ⎈Happy Helming!⎈ +Saving 1 charts +Downloading raw from repo oci://localhost:5001/myrepo +Pulled: localhost:5001/myrepo/raw:0.1.0 +Digest: $DIGEST +Deleting outdated charts + +Comparing release=foo, chart=../../charts/raw-0.1.0 +******************** + + Release was not present in Helm. Diff will show entire contents as new. + +******************** +default, cm2, ConfigMap (v1) has been added: +- ++ apiVersion: v1 ++ kind: ConfigMap ++ data: ++ two: TWO ++ metadata: ++ name: cm2 +default, foo-1, ConfigMap (v1) has been added: +- ++ # Source: raw/templates/resources.yaml ++ apiVersion: v1 ++ kind: ConfigMap ++ metadata: ++ name: foo-1 ++ namespace: default ++ data: ++ foo: FOO + +Comparing release=baz, chart=$WD/temp1/baz +******************** + + Release was not present in Helm. Diff will show entire contents as new. + +******************** +default, baz-3, ConfigMap (v1) has been added: +- ++ # Source: raw/templates/resources.yaml ++ apiVersion: v1 ++ kind: ConfigMap ++ metadata: ++ name: baz-3 ++ namespace: default ++ data: ++ baz: BAZ +default, cm1, ConfigMap (v1) has been added: +- ++ apiVersion: v1 ++ kind: ConfigMap ++ data: ++ one: ONE ++ metadata: ++ name: cm1 +