You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add support for controller-runtime PriorityQueue.
To do this:
- introduce feature flags on the provider
- create new feature flag that when set enables
the controller-runtime PriorityQueue
- document feature flags and how to enable them
- document the PriorityQueue feature flag with
upstream links
## Enabling Experimental Features for Management Clusters Started with clusterctl
9
+
10
+
Users can enable/disable features by setting OS environment variables before running `clusterctl init`, e.g.:
11
+
12
+
```yaml
13
+
export EXP_SOME_FEATURE_NAME=true
14
+
15
+
clusterctl init --infrastructure openstack
16
+
```
17
+
18
+
As an alternative to environment variables, it is also possible to set variables in the clusterctl config file located at `$XDG_CONFIG_HOME/cluster-api/clusterctl.yaml`, e.g.:
19
+
```yaml
20
+
# Values for environment variable substitution
21
+
EXP_SOME_FEATURE_NAME: "true"
22
+
```
23
+
In case a variable is defined in both the config file and as an OS environment variable, the environment variable takes precedence.
24
+
For more information on how to set variables for clusterctl, see [clusterctl Configuration File](https://cluster-api.sigs.k8s.io/clusterctl/configuration)
25
+
26
+
27
+
## Enabling Experimental Features on Existing Management Clusters
28
+
29
+
To enable/disable features on existing management clusters, users can edit the controller manager
30
+
deployments, which will then trigger a restart with the requested features. E.g:
The `PriorityQueue` feature flag enables the usage of the controller-runtime PriorityQueue.
4
+
5
+
This feature deprioritizes reconciliation of objects that were not edge-triggered (i.e. due to an create/update etc.) and makes the controller more responsive during full resyncs and controller startups.
6
+
7
+
More information on controller-runtime PriorityQueue:
fs.IntVar(&scopeCacheMaxSize, "scope-cache-max-size", 10, "The maximum credentials count the operator should keep in cache. Setting this value to 0 means no cache.")
168
171
169
172
fs.BoolVar(&showVersion, "version", false, "Show current version and exit.")
173
+
174
+
feature.MutableGates.AddFlag(fs)
170
175
}
171
176
172
177
// Add RBAC for the authorized diagnostics endpoint.
0 commit comments