@@ -18,6 +18,7 @@ package controllers
1818
1919import (
2020 "context"
21+ "encoding/base64"
2122 "fmt"
2223 "io/ioutil"
2324 "os"
@@ -95,10 +96,19 @@ var _ = Describe("KustomizationReconciler", func() {
9596 Expect (err ).ToNot (HaveOccurred ())
9697 ageKey , err := ioutil .ReadFile ("testdata/sops/age.txt" )
9798 Expect (err ).ToNot (HaveOccurred ())
99+ dayKey , err := ioutil .ReadFile ("testdata/sops/day.txt.encrypted" )
100+ Expect (err ).ToNot (HaveOccurred ())
101+
98102 sopsSecretKey := types.NamespacedName {
99103 Name : "sops-" + randStringRunes (5 ),
100104 Namespace : namespace .Name ,
101105 }
106+
107+ sopsEncodedSecretKey := types.NamespacedName {
108+ Name : "sops-encoded-" + randStringRunes (5 ),
109+ Namespace : namespace .Name ,
110+ }
111+
102112 sopsSecret := & corev1.Secret {
103113 ObjectMeta : metav1.ObjectMeta {
104114 Name : sopsSecretKey .Name ,
@@ -109,7 +119,20 @@ var _ = Describe("KustomizationReconciler", func() {
109119 "age.agekey" : string (ageKey ),
110120 },
111121 }
122+
123+ sopsEncodedSecret := & corev1.Secret {
124+ ObjectMeta : metav1.ObjectMeta {
125+ Name : sopsEncodedSecretKey .Name ,
126+ Namespace : sopsEncodedSecretKey .Namespace ,
127+ },
128+ StringData : map [string ]string {
129+ // base64.StdEncoding.EncodeToString replicates kustomize.secretGenerator
130+ "day.dayKey" : base64 .StdEncoding .EncodeToString (dayKey ),
131+ },
132+ }
133+
112134 Expect (k8sClient .Create (context .Background (), sopsSecret )).To (Succeed ())
135+ Expect (k8sClient .Create (context .Background (), sopsEncodedSecret )).To (Succeed ())
113136
114137 kustomizationKey := types.NamespacedName {
115138 Name : "sops-" + randStringRunes (5 ),
@@ -158,6 +181,10 @@ var _ = Describe("KustomizationReconciler", func() {
158181 var ageSecret corev1.Secret
159182 Expect (k8sClient .Get (context .TODO (), types.NamespacedName {Name : "sops-age" , Namespace : namespace .Name }, & ageSecret )).To (Succeed ())
160183 Expect (ageSecret .Data ["secret" ]).To (Equal ([]byte (`my-sops-age-secret` )))
184+
185+ var daySecret corev1.Secret
186+ Expect (k8sClient .Get (context .TODO (), types.NamespacedName {Name : "sops-day" , Namespace : namespace .Name }, & daySecret )).To (Succeed ())
187+ Expect (string (daySecret .Data ["secret" ])).To (Equal ("day=Tuesday\n " ))
161188 })
162189 })
163190})
0 commit comments