kubeadm: promote DualStack feature gate to Beta

This commit is contained in:
pacoxu 2021-02-22 14:56:49 +08:00
parent 8eef1a9bf7
commit 829b0cde81
4 changed files with 16 additions and 9 deletions

View File

@ -454,7 +454,7 @@ func ValidatePodSubnetNodeMask(subnetStr string, c *kubeadm.ClusterConfiguration
func getClusterNodeMask(c *kubeadm.ClusterConfiguration, isIPv6 bool) (int, error) { func getClusterNodeMask(c *kubeadm.ClusterConfiguration, isIPv6 bool) (int, error) {
// defaultNodeMaskCIDRIPv4 is default mask size for IPv4 node cidr for use by the controller manager // defaultNodeMaskCIDRIPv4 is default mask size for IPv4 node cidr for use by the controller manager
const defaultNodeMaskCIDRIPv4 = 24 const defaultNodeMaskCIDRIPv4 = 24
// DefaultNodeMaskCIDRIPv6 is default mask size for IPv6 node cidr for use by the controller manager // defaultNodeMaskCIDRIPv6 is default mask size for IPv6 node cidr for use by the controller manager
const defaultNodeMaskCIDRIPv6 = 64 const defaultNodeMaskCIDRIPv6 = 64
var maskSize int var maskSize int
var maskArg string var maskArg string

View File

@ -1137,14 +1137,17 @@ func TestGetClusterNodeMask(t *testing.T) {
expectedError bool expectedError bool
}{ }{
{ {
name: "ipv4 default mask", name: "ipv4 default mask",
cfg: &kubeadmapi.ClusterConfiguration{}, cfg: &kubeadmapi.ClusterConfiguration{
FeatureGates: map[string]bool{features.IPv6DualStack: false},
},
isIPv6: false, isIPv6: false,
expectedMask: 24, expectedMask: 24,
}, },
{ {
name: "ipv4 custom mask", name: "ipv4 custom mask",
cfg: &kubeadmapi.ClusterConfiguration{ cfg: &kubeadmapi.ClusterConfiguration{
FeatureGates: map[string]bool{features.IPv6DualStack: false},
ControllerManager: kubeadmapi.ControlPlaneComponent{ ControllerManager: kubeadmapi.ControlPlaneComponent{
ExtraArgs: map[string]string{"node-cidr-mask-size": "23"}, ExtraArgs: map[string]string{"node-cidr-mask-size": "23"},
}, },
@ -1155,6 +1158,7 @@ func TestGetClusterNodeMask(t *testing.T) {
{ {
name: "ipv4 wrong mask", name: "ipv4 wrong mask",
cfg: &kubeadmapi.ClusterConfiguration{ cfg: &kubeadmapi.ClusterConfiguration{
FeatureGates: map[string]bool{features.IPv6DualStack: false},
ControllerManager: kubeadmapi.ControlPlaneComponent{ ControllerManager: kubeadmapi.ControlPlaneComponent{
ExtraArgs: map[string]string{"node-cidr-mask-size": "aa23"}, ExtraArgs: map[string]string{"node-cidr-mask-size": "aa23"},
}, },
@ -1163,14 +1167,17 @@ func TestGetClusterNodeMask(t *testing.T) {
expectedError: true, expectedError: true,
}, },
{ {
name: "ipv6 default mask", name: "ipv6 default mask",
cfg: &kubeadmapi.ClusterConfiguration{}, cfg: &kubeadmapi.ClusterConfiguration{
FeatureGates: map[string]bool{features.IPv6DualStack: false},
},
isIPv6: true, isIPv6: true,
expectedMask: 64, expectedMask: 64,
}, },
{ {
name: "ipv6 custom mask", name: "ipv6 custom mask",
cfg: &kubeadmapi.ClusterConfiguration{ cfg: &kubeadmapi.ClusterConfiguration{
FeatureGates: map[string]bool{features.IPv6DualStack: false},
ControllerManager: kubeadmapi.ControlPlaneComponent{ ControllerManager: kubeadmapi.ControlPlaneComponent{
ExtraArgs: map[string]string{"node-cidr-mask-size": "83"}, ExtraArgs: map[string]string{"node-cidr-mask-size": "83"},
}, },

View File

@ -28,7 +28,7 @@ import (
) )
const ( const (
// IPv6DualStack is expected to be alpha in v1.16 // IPv6DualStack is expected to be beta in v1.21
IPv6DualStack = "IPv6DualStack" IPv6DualStack = "IPv6DualStack"
// PublicKeysECDSA is expected to be alpha in v1.19 // PublicKeysECDSA is expected to be alpha in v1.19
PublicKeysECDSA = "PublicKeysECDSA" PublicKeysECDSA = "PublicKeysECDSA"
@ -36,7 +36,7 @@ const (
// InitFeatureGates are the default feature gates for the init command // InitFeatureGates are the default feature gates for the init command
var InitFeatureGates = FeatureList{ var InitFeatureGates = FeatureList{
IPv6DualStack: {FeatureSpec: featuregate.FeatureSpec{Default: false, PreRelease: featuregate.Alpha}}, IPv6DualStack: {FeatureSpec: featuregate.FeatureSpec{Default: true, PreRelease: featuregate.Beta}},
PublicKeysECDSA: {FeatureSpec: featuregate.FeatureSpec{Default: false, PreRelease: featuregate.Alpha}}, PublicKeysECDSA: {FeatureSpec: featuregate.FeatureSpec{Default: false, PreRelease: featuregate.Alpha}},
} }

View File

@ -329,8 +329,8 @@ func TestCmdInitFeatureGates(t *testing.T) {
args: "", args: "",
}, },
{ {
name: "feature gate IPv6DualStack=true", name: "feature gate IPv6DualStack=false",
args: "--feature-gates=IPv6DualStack=true", args: "--feature-gates=IPv6DualStack=false",
}, },
{ {
name: "feature gate PublicKeysECDSA=true", name: "feature gate PublicKeysECDSA=true",