mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-27 05:27:21 +00:00
kubefed: make --dns-provider mandatory
This commit is contained in:
parent
7f626cf836
commit
d1b6192f10
@ -35,6 +35,7 @@ source "${KUBE_ROOT}/cluster/common.sh"
|
|||||||
source "${KUBE_ROOT}/federation/cluster/common.sh"
|
source "${KUBE_ROOT}/federation/cluster/common.sh"
|
||||||
|
|
||||||
DNS_ZONE_NAME="${FEDERATION_DNS_ZONE_NAME:-}"
|
DNS_ZONE_NAME="${FEDERATION_DNS_ZONE_NAME:-}"
|
||||||
|
DNS_PROVIDER="${FEDERATION_DNS_PROVIDER:-google-clouddns}"
|
||||||
FEDERATIONS_DOMAIN_MAP="${FEDERATIONS_DOMAIN_MAP:-}"
|
FEDERATIONS_DOMAIN_MAP="${FEDERATIONS_DOMAIN_MAP:-}"
|
||||||
|
|
||||||
# get_version returns the version in KUBERNETES_RELEASE or defaults to the
|
# get_version returns the version in KUBERNETES_RELEASE or defaults to the
|
||||||
@ -82,6 +83,7 @@ function init() {
|
|||||||
"${FEDERATION_NAME}" \
|
"${FEDERATION_NAME}" \
|
||||||
--host-cluster-context="${HOST_CLUSTER_CONTEXT}" \
|
--host-cluster-context="${HOST_CLUSTER_CONTEXT}" \
|
||||||
--dns-zone-name="${DNS_ZONE_NAME}" \
|
--dns-zone-name="${DNS_ZONE_NAME}" \
|
||||||
|
--dns-provider="${DNS_PROVIDER}" \
|
||||||
--image="${kube_registry}/hyperkube-amd64:${kube_version}"
|
--image="${kube_registry}/hyperkube-amd64:${kube_version}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -156,7 +156,7 @@ func (o *initFederationOptions) Bind(flags *pflag.FlagSet) {
|
|||||||
|
|
||||||
flags.StringVar(&o.dnsZoneName, "dns-zone-name", "", "DNS suffix for this federation. Federated Service DNS names are published with this suffix.")
|
flags.StringVar(&o.dnsZoneName, "dns-zone-name", "", "DNS suffix for this federation. Federated Service DNS names are published with this suffix.")
|
||||||
flags.StringVar(&o.image, "image", defaultImage, "Image to use for federation API server and controller manager binaries.")
|
flags.StringVar(&o.image, "image", defaultImage, "Image to use for federation API server and controller manager binaries.")
|
||||||
flags.StringVar(&o.dnsProvider, "dns-provider", "google-clouddns", "Dns provider to be used for this deployment.")
|
flags.StringVar(&o.dnsProvider, "dns-provider", "", "Dns provider to be used for this deployment.")
|
||||||
flags.StringVar(&o.dnsProviderConfig, "dns-provider-config", "", "Config file path on local file system for configuring DNS provider.")
|
flags.StringVar(&o.dnsProviderConfig, "dns-provider-config", "", "Config file path on local file system for configuring DNS provider.")
|
||||||
flags.StringVar(&o.etcdPVCapacity, "etcd-pv-capacity", "10Gi", "Size of persistent volume claim to be used for etcd.")
|
flags.StringVar(&o.etcdPVCapacity, "etcd-pv-capacity", "10Gi", "Size of persistent volume claim to be used for etcd.")
|
||||||
flags.BoolVar(&o.etcdPersistentStorage, "etcd-persistent-storage", true, "Use persistent volume for etcd. Defaults to 'true'.")
|
flags.BoolVar(&o.etcdPersistentStorage, "etcd-persistent-storage", true, "Use persistent volume for etcd. Defaults to 'true'.")
|
||||||
@ -200,6 +200,10 @@ type entityKeyPairs struct {
|
|||||||
|
|
||||||
// Complete ensures that options are valid and marshals them if necessary.
|
// Complete ensures that options are valid and marshals them if necessary.
|
||||||
func (i *initFederation) Complete(cmd *cobra.Command, args []string) error {
|
func (i *initFederation) Complete(cmd *cobra.Command, args []string) error {
|
||||||
|
if len(i.options.dnsProvider) == 0 {
|
||||||
|
return fmt.Errorf("--dns-provider is mandatory")
|
||||||
|
}
|
||||||
|
|
||||||
err := i.commonOptions.SetName(cmd, args)
|
err := i.commonOptions.SetName(cmd, args)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
@ -67,7 +67,7 @@ const (
|
|||||||
|
|
||||||
func TestInitFederation(t *testing.T) {
|
func TestInitFederation(t *testing.T) {
|
||||||
cmdErrMsg := ""
|
cmdErrMsg := ""
|
||||||
dnsProvider := ""
|
dnsProvider := "google-clouddns"
|
||||||
cmdutil.BehaviorOnFatal(func(str string, code int) {
|
cmdutil.BehaviorOnFatal(func(str string, code int) {
|
||||||
cmdErrMsg = str
|
cmdErrMsg = str
|
||||||
})
|
})
|
||||||
@ -90,7 +90,6 @@ func TestInitFederation(t *testing.T) {
|
|||||||
etcdPVCapacity string
|
etcdPVCapacity string
|
||||||
etcdPersistence string
|
etcdPersistence string
|
||||||
expectedErr string
|
expectedErr string
|
||||||
dnsProvider string
|
|
||||||
dnsProviderConfig string
|
dnsProviderConfig string
|
||||||
storageBackend string
|
storageBackend string
|
||||||
dryRun string
|
dryRun string
|
||||||
@ -108,7 +107,6 @@ func TestInitFederation(t *testing.T) {
|
|||||||
etcdPVCapacity: "5Gi",
|
etcdPVCapacity: "5Gi",
|
||||||
etcdPersistence: "true",
|
etcdPersistence: "true",
|
||||||
expectedErr: "",
|
expectedErr: "",
|
||||||
dnsProvider: "test-dns-provider",
|
|
||||||
dnsProviderConfig: "dns-provider.conf",
|
dnsProviderConfig: "dns-provider.conf",
|
||||||
storageBackend: "etcd2",
|
storageBackend: "etcd2",
|
||||||
dryRun: "",
|
dryRun: "",
|
||||||
@ -126,7 +124,6 @@ func TestInitFederation(t *testing.T) {
|
|||||||
etcdPVCapacity: "", //test for default value of pvc-size
|
etcdPVCapacity: "", //test for default value of pvc-size
|
||||||
etcdPersistence: "true",
|
etcdPersistence: "true",
|
||||||
expectedErr: "",
|
expectedErr: "",
|
||||||
dnsProvider: "", //test for default value of dns provider
|
|
||||||
storageBackend: "etcd2",
|
storageBackend: "etcd2",
|
||||||
dryRun: "",
|
dryRun: "",
|
||||||
},
|
},
|
||||||
@ -141,7 +138,6 @@ func TestInitFederation(t *testing.T) {
|
|||||||
etcdPVCapacity: "",
|
etcdPVCapacity: "",
|
||||||
etcdPersistence: "true",
|
etcdPersistence: "true",
|
||||||
expectedErr: "",
|
expectedErr: "",
|
||||||
dnsProvider: "test-dns-provider",
|
|
||||||
storageBackend: "etcd2",
|
storageBackend: "etcd2",
|
||||||
dryRun: "valid-run",
|
dryRun: "valid-run",
|
||||||
},
|
},
|
||||||
@ -156,7 +152,6 @@ func TestInitFederation(t *testing.T) {
|
|||||||
etcdPVCapacity: "5Gi",
|
etcdPVCapacity: "5Gi",
|
||||||
etcdPersistence: "false",
|
etcdPersistence: "false",
|
||||||
expectedErr: "",
|
expectedErr: "",
|
||||||
dnsProvider: "test-dns-provider",
|
|
||||||
storageBackend: "etcd3",
|
storageBackend: "etcd3",
|
||||||
dryRun: "",
|
dryRun: "",
|
||||||
},
|
},
|
||||||
@ -170,7 +165,6 @@ func TestInitFederation(t *testing.T) {
|
|||||||
etcdPVCapacity: "5Gi",
|
etcdPVCapacity: "5Gi",
|
||||||
etcdPersistence: "true",
|
etcdPersistence: "true",
|
||||||
expectedErr: "",
|
expectedErr: "",
|
||||||
dnsProvider: "test-dns-provider",
|
|
||||||
storageBackend: "etcd3",
|
storageBackend: "etcd3",
|
||||||
dryRun: "",
|
dryRun: "",
|
||||||
},
|
},
|
||||||
@ -185,7 +179,6 @@ func TestInitFederation(t *testing.T) {
|
|||||||
etcdPVCapacity: "5Gi",
|
etcdPVCapacity: "5Gi",
|
||||||
etcdPersistence: "true",
|
etcdPersistence: "true",
|
||||||
expectedErr: "",
|
expectedErr: "",
|
||||||
dnsProvider: "test-dns-provider",
|
|
||||||
storageBackend: "etcd3",
|
storageBackend: "etcd3",
|
||||||
dryRun: "",
|
dryRun: "",
|
||||||
},
|
},
|
||||||
@ -195,14 +188,8 @@ func TestInitFederation(t *testing.T) {
|
|||||||
|
|
||||||
for i, tc := range testCases {
|
for i, tc := range testCases {
|
||||||
cmdErrMsg = ""
|
cmdErrMsg = ""
|
||||||
dnsProvider = ""
|
|
||||||
buf := bytes.NewBuffer([]byte{})
|
buf := bytes.NewBuffer([]byte{})
|
||||||
|
|
||||||
if "" != tc.dnsProvider {
|
|
||||||
dnsProvider = tc.dnsProvider
|
|
||||||
} else {
|
|
||||||
dnsProvider = "google-clouddns" //default value of dns-provider
|
|
||||||
}
|
|
||||||
if tc.dnsProviderConfig != "" {
|
if tc.dnsProviderConfig != "" {
|
||||||
tmpfile, err := ioutil.TempFile("", tc.dnsProviderConfig)
|
tmpfile, err := ioutil.TempFile("", tc.dnsProviderConfig)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -227,15 +214,13 @@ func TestInitFederation(t *testing.T) {
|
|||||||
cmd.Flags().Set("host-cluster-context", "substrate")
|
cmd.Flags().Set("host-cluster-context", "substrate")
|
||||||
cmd.Flags().Set("dns-zone-name", tc.dnsZoneName)
|
cmd.Flags().Set("dns-zone-name", tc.dnsZoneName)
|
||||||
cmd.Flags().Set("image", tc.image)
|
cmd.Flags().Set("image", tc.image)
|
||||||
|
cmd.Flags().Set("dns-provider", dnsProvider)
|
||||||
cmd.Flags().Set("apiserver-arg-overrides", tc.apiserverArgOverrides)
|
cmd.Flags().Set("apiserver-arg-overrides", tc.apiserverArgOverrides)
|
||||||
cmd.Flags().Set("controllermanager-arg-overrides", tc.cmArgOverrides)
|
cmd.Flags().Set("controllermanager-arg-overrides", tc.cmArgOverrides)
|
||||||
|
|
||||||
if tc.storageBackend != "" {
|
if tc.storageBackend != "" {
|
||||||
cmd.Flags().Set("storage-backend", tc.storageBackend)
|
cmd.Flags().Set("storage-backend", tc.storageBackend)
|
||||||
}
|
}
|
||||||
if tc.dnsProvider != "" {
|
|
||||||
cmd.Flags().Set("dns-provider", tc.dnsProvider)
|
|
||||||
}
|
|
||||||
if tc.dnsProviderConfig != "" {
|
if tc.dnsProviderConfig != "" {
|
||||||
cmd.Flags().Set("dns-provider-config", tc.dnsProviderConfig)
|
cmd.Flags().Set("dns-provider-config", tc.dnsProviderConfig)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user