k3s/cmd
Kubernetes Submit Queue 42a73ee3ac Merge pull request #48943 from jamiehannaford/kubeadm-feature-gates
Automatic merge from submit-queue

Add --feature-gate flags to kubeadm

**What this PR does / why we need it**:

Adds `--feature-gates` in similar manner to other `cmd` binaries

**Which issue this PR fixes** 

https://github.com/kubernetes/kubeadm/issues/323

**Special notes for your reviewer**:

This results in a lot of probably unnecessary feature flags. I'm guessing a lot of kubeadm users will be confused when they see:

```
Flags:
      --feature-gates mapStringBool   A set of key=value pairs that describe feature gates for alpha/experimental features. Options are:
APIResponseCompression=true|false (ALPHA - default=false)
Accelerators=true|false (ALPHA - default=false)
AdvancedAuditing=true|false (ALPHA - default=false)
AllAlpha=true|false (ALPHA - default=false)
AllowExtTrafficLocalEndpoints=true|false (default=true)
AppArmor=true|false (BETA - default=true)
DebugContainers=true|false (ALPHA - default=false)
DynamicKubeletConfig=true|false (ALPHA - default=false)
DynamicVolumeProvisioning=true|false (ALPHA - default=true)
ExperimentalCriticalPodAnnotation=true|false (ALPHA - default=false)
ExperimentalHostUserNamespaceDefaulting=true|false (BETA - default=false)
LocalStorageCapacityIsolation=true|false (ALPHA - default=false)
PersistentLocalVolumes=true|false (ALPHA - default=false)
PodPriority=true|false (ALPHA - default=false)
RotateKubeletClientCertificate=true|false (ALPHA - default=false)
RotateKubeletServerCertificate=true|false (ALPHA - default=false)
StreamingProxyRedirects=true|false (BETA - default=true)
TaintBasedEvictions=true|false (ALPHA - default=false)
  -h, --help                          help for kubeadm
```

However the feature flags used in the core pkg is global, so I don't think it can be overriden. So we have a few options:

1. Allow these flags for kubeadm
2. Refactor feature pkg to allow granular features
3. Roll our own feature gating for kubeadm

/cc @luxas
2017-08-03 04:54:10 -07:00
..
clicheck More cli sanity verifications 2017-05-18 15:44:49 -03:00
cloud-controller-manager use the core client with version 2017-07-26 19:16:02 +08:00
gendocs autogenerated 2017-04-14 10:40:57 -07:00
genkubedocs enable docs and man page autogeneration for cloud-controller-manager 2017-06-22 17:04:26 -07:00
genman enable docs and man page autogeneration for cloud-controller-manager 2017-06-22 17:04:26 -07:00
genslateyaml autogenerated 2017-04-14 10:40:57 -07:00
genswaggertypedocs autogenerated 2017-04-14 10:40:57 -07:00
genutils Add fatal message 2017-06-04 09:42:08 +08:00
genyaml autogenerated 2017-04-14 10:40:57 -07:00
gke-certificates-controller use the core client with version 2017-07-26 19:16:02 +08:00
hyperkube Refactor: pkg/util into sub-pkgs 2017-07-18 14:34:08 +08:00
kube-apiserver Merge pull request #49412 from bjhaid/etcd_healthz_endpoint 2017-08-02 17:06:02 -07:00
kube-controller-manager Merge pull request #47665 from ironcladlou/gc-poll-types 2017-07-29 05:28:53 -07:00
kube-proxy Merge pull request #49267 from MrHohn/kube-proxy-abort-when-healthz-fails 2017-08-02 05:16:01 -07:00
kubeadm Merge pull request #48943 from jamiehannaford/kubeadm-feature-gates 2017-08-03 04:54:10 -07:00
kubectl Convert go_binary linkstamp to x_defs 2017-06-08 14:59:55 -07:00
kubelet generated: 2017-08-01 16:33:52 -07:00
kubemark remove duplicated import and wrong alias name of api package 2017-07-25 10:04:25 +08:00
linkcheck autogenerated 2017-04-14 10:40:57 -07:00
mungedocs Fix link tests in mungedocs 2017-06-05 22:37:20 -07:00
BUILD Fixup go2idl references 2017-07-20 07:41:37 +02:00
OWNERS Updated top level owners file to match new format 2017-01-19 11:29:16 -08:00