@@ -37,28 +37,24 @@ func (exporter *Exporter) parseAllKubeSecrets() ([]*certificateRef, []error) {
37
37
}
38
38
39
39
for _ , namespace := range namespaces {
40
- secrets , err := exporter .getWatchedSecrets (namespace )
41
- if err != nil {
42
- outputErrors = append (outputErrors , fmt .Errorf ("failed to fetch secrets from namespace \" %s\" : %s" , namespace , err .Error ()))
43
- continue
44
- }
40
+ for _ , secretType := range exporter .KubeSecretTypes {
41
+ typeAndKey := strings .Split (secretType , ":" )
42
+ secrets , err := exporter .getWatchedSecrets (namespace , typeAndKey [0 ])
43
+ if err != nil {
44
+ outputErrors = append (outputErrors , fmt .Errorf ("failed to fetch secrets from namespace \" %s\" : %s" , namespace , err .Error ()))
45
+ continue
46
+ }
45
47
46
- for _ , secret := range secrets {
47
- for _ , secretType := range exporter .KubeSecretTypes {
48
- typeAndKey := strings .Split (secretType , ":" )
49
-
50
- if secret .Type == v1 .SecretType (typeAndKey [0 ]) && len (secret .Data [typeAndKey [1 ]]) > 0 {
51
- output = append (output , & certificateRef {
52
- path : fmt .Sprintf ("k8s/%s/%s" , namespace , secret .GetName ()),
53
- format : certificateFormatKubeSecret ,
54
- kubeSecret : secret ,
55
- kubeSecretKey : typeAndKey [1 ],
56
- })
57
- }
48
+ for _ , secret := range secrets {
49
+ output = append (output , & certificateRef {
50
+ path : fmt .Sprintf ("k8s/%s/%s" , namespace , secret .GetName ()),
51
+ format : certificateFormatKubeSecret ,
52
+ kubeSecret : secret ,
53
+ kubeSecretKey : typeAndKey [1 ],
54
+ })
58
55
}
59
56
}
60
57
}
61
-
62
58
return output , outputErrors
63
59
}
64
60
@@ -95,7 +91,7 @@ func (exporter *Exporter) listNamespacesToWatch() ([]string, error) {
95
91
return namespaces , nil
96
92
}
97
93
98
- func (exporter * Exporter ) getWatchedSecrets (namespace string ) ([]v1.Secret , error ) {
94
+ func (exporter * Exporter ) getWatchedSecrets (namespace string , secretType string ) ([]v1.Secret , error ) {
99
95
cachedSecrets , cached := exporter .secretsCache .Get (namespace )
100
96
if cached {
101
97
return cachedSecrets .([]v1.Secret ), nil
@@ -124,7 +120,7 @@ func (exporter *Exporter) getWatchedSecrets(namespace string) ([]v1.Secret, erro
124
120
}
125
121
126
122
labelSelector := metav1.LabelSelector {MatchLabels : includedLabelsWithValue }
127
- fieldSelector := fields .SelectorFromSet (fields.Set {"type" : "kubernetes.io/tls" })
123
+ fieldSelector := fields .SelectorFromSet (fields.Set {"type" : secretType })
128
124
secrets , err := exporter .kubeClient .CoreV1 ().Secrets (namespace ).List (context .Background (), metav1.ListOptions {
129
125
LabelSelector : labels .Set (labelSelector .MatchLabels ).String (),
130
126
FieldSelector : fieldSelector .String (),
0 commit comments