From 506c4a330d584ae26d3f62011e444855c600688c Mon Sep 17 00:00:00 2001 From: Richard Marshall Date: Mon, 10 Dec 2018 12:41:58 -0800 Subject: [PATCH] Add projected secret path to transformer config Projected volumes can include values sourced from secrets that might be managed by kustomize. To support this use case this patch updates the name reference transformer configuration to include a field spec for projected secrets. --- .../config/defaultconfig/namereference.go | 4 ++++ pkg/transformers/namereference_test.go | 12 ++++++++++++ 2 files changed, 16 insertions(+) diff --git a/pkg/transformers/config/defaultconfig/namereference.go b/pkg/transformers/config/defaultconfig/namereference.go index 2f31a36b4..0b188f867 100644 --- a/pkg/transformers/config/defaultconfig/namereference.go +++ b/pkg/transformers/config/defaultconfig/namereference.go @@ -150,6 +150,8 @@ nameReference: kind: Deployment - path: spec/template/spec/imagePullSecrets/name kind: Deployment + - path: spec/template/spec/volumes/projected/sources/secret/name + kind: Deployment - path: spec/template/spec/volumes/secret/secretName kind: ReplicaSet - path: spec/template/spec/containers/env/valueFrom/secretKeyRef/name @@ -186,6 +188,8 @@ nameReference: kind: StatefulSet - path: spec/template/spec/imagePullSecrets/name kind: StatefulSet + - path: spec/template/spec/volumes/projected/sources/secret/name + kind: StatefulSet - path: spec/template/spec/volumes/secret/secretName kind: Job - path: spec/template/spec/containers/env/valueFrom/secretKeyRef/name diff --git a/pkg/transformers/namereference_test.go b/pkg/transformers/namereference_test.go index b01bde234..6a94588ca 100644 --- a/pkg/transformers/namereference_test.go +++ b/pkg/transformers/namereference_test.go @@ -148,6 +148,9 @@ func TestNameReferenceHappyRun(t *testing.T) { "configMap": map[string]interface{}{ "name": "cm2", }, + "secret": map[string]interface{}{ + "name": "secret1", + }, }, }, "secret": map[string]interface{}{ @@ -184,6 +187,9 @@ func TestNameReferenceHappyRun(t *testing.T) { "configMap": map[string]interface{}{ "name": "cm2", }, + "secret": map[string]interface{}{ + "name": "secret1", + }, }, }, }, @@ -307,6 +313,9 @@ func TestNameReferenceHappyRun(t *testing.T) { "configMap": map[string]interface{}{ "name": "someprefix-cm2-somehash", }, + "secret": map[string]interface{}{ + "name": "someprefix-secret1-somehash", + }, }, }, "secret": map[string]interface{}{ @@ -343,6 +352,9 @@ func TestNameReferenceHappyRun(t *testing.T) { "configMap": map[string]interface{}{ "name": "someprefix-cm2-somehash", }, + "secret": map[string]interface{}{ + "name": "someprefix-secret1-somehash", + }, }, }, },