@@ -27,11 +27,13 @@ import (
27
27
"github.com/go-logr/logr"
28
28
flag "github.com/spf13/pflag"
29
29
"helm.sh/helm/v3/pkg/getter"
30
+ corev1 "k8s.io/api/core/v1"
30
31
"k8s.io/apimachinery/pkg/runtime"
31
32
utilruntime "k8s.io/apimachinery/pkg/util/runtime"
32
33
clientgoscheme "k8s.io/client-go/kubernetes/scheme"
33
34
_ "k8s.io/client-go/plugin/pkg/client/auth/gcp"
34
35
ctrl "sigs.k8s.io/controller-runtime"
36
+ ctrlclient "sigs.k8s.io/controller-runtime/pkg/client"
35
37
36
38
"github.com/fluxcd/pkg/git"
37
39
"github.com/fluxcd/pkg/runtime/client"
@@ -167,6 +169,16 @@ func main() {
167
169
watchNamespace = os .Getenv ("RUNTIME_NAMESPACE" )
168
170
}
169
171
172
+ disableCacheFor := []ctrlclient.Object {}
173
+ shouldCache , err := features .Enabled (features .CacheSecretsAndConfigMaps )
174
+ if err != nil {
175
+ setupLog .Error (err , "unable to check feature gate " + features .CacheSecretsAndConfigMaps )
176
+ os .Exit (1 )
177
+ }
178
+ if ! shouldCache {
179
+ disableCacheFor = append (disableCacheFor , & corev1.Secret {}, & corev1.ConfigMap {})
180
+ }
181
+
170
182
restConfig := client .GetConfigOrDie (clientOptions )
171
183
mgr , err := ctrl .NewManager (restConfig , ctrl.Options {
172
184
Scheme : scheme ,
@@ -181,6 +193,7 @@ func main() {
181
193
LeaderElectionID : fmt .Sprintf ("%s-leader-election" , controllerName ),
182
194
Namespace : watchNamespace ,
183
195
Logger : ctrl .Log ,
196
+ ClientDisableCacheFor : disableCacheFor ,
184
197
})
185
198
if err != nil {
186
199
setupLog .Error (err , "unable to start manager" )
0 commit comments