m/n/kubernetes: introduce feature gate infra

This introduces centralized infrastructure to control feature gates in K8s.

It includes a test to make sure that we do not keep outdated flags in there.

Change-Id: Ife251cbd5210bc8b3757bb3829e91bcdb2e6fdfb
Reviewed-on: https://review.monogon.dev/c/monogon/+/3664
Reviewed-by: Tim Windelschmidt <tim@monogon.tech>
Tested-by: Jenkins CI
diff --git a/metropolis/node/kubernetes/controller-manager.go b/metropolis/node/kubernetes/controller-manager.go
index 0a49ce1..b1fdfc6 100644
--- a/metropolis/node/kubernetes/controller-manager.go
+++ b/metropolis/node/kubernetes/controller-manager.go
@@ -91,6 +91,7 @@
 			// This is intentionally empty, but if unset it tries to mkdir it
 			// in the usual place, generating an error.
 			"--flex-volume-plugin-dir=/kubernetes/conf/flexvolume-plugins",
+			extraFeatureGates.AsFlag(),
 		)
 
 		if args.Error() != nil {