[COMMON] Allow to lint chart without master password 45/100645/4
authorKrzysztof Opasiak <k.opasiak@samsung.com>
Wed, 22 Jan 2020 23:55:46 +0000 (00:55 +0100)
committerKrzysztof Opasiak <k.opasiak@samsung.com>
Fri, 31 Jan 2020 23:10:01 +0000 (00:10 +0100)
When you type make in kubernetes directory all charts are linted.
If one of them try to generate password whole linting process
ends with an error because masterPassword has not been provided
and there is no default value for it.

To avoid this issue but still don't provide any default value
whcih would be obviously insecure in this context, let's just
test current release name. If it matches "testRelease" we treat whis
as a special case and use predefined master key.

Security implication:
You should never, ever name your productional deployment "testRelease"
nor use it as a master password.

Issue-ID: OOM-2052
Change-Id: I7a2132e81f6910dfea562e8930c7eacd7aa7a00b
Signed-off-by: Krzysztof Opasiak <k.opasiak@samsung.com>
kubernetes/common/common/templates/_createPassword.tpl

index 938b0ee..8b2f1e2 100644 (file)
@@ -29,6 +29,9 @@
     {{- printf "%d" .Values.global.masterPassword -}}
   {{ else if .Values.masterPassword }}
     {{- printf "%d" .Values.masterPassword -}}
+  {{ else if eq "testRelease" (include "common.release" .) }}
+    {{/* Special case for chart liniting. DON"T NAME YOUR PRODUCTION RELEASE testRelease */}}
+    {{- printf "testRelease" -}}
   {{ else }}
     {{ fail "masterPassword not provided" }}
   {{ end }}