Skip to content
This repository was archived by the owner on Sep 30, 2020. It is now read-only.

Commit f94860c

Browse files
authored
Merge pull request #757 from mumoshu/remove-deprecated-keys
Remove deprecated keys in cluster.yaml
2 parents 53bd54a + cc50267 commit f94860c

File tree

11 files changed

+101
-631
lines changed

11 files changed

+101
-631
lines changed

core/controlplane/config/config.go

Lines changed: 2 additions & 196 deletions
Original file line numberDiff line numberDiff line change
@@ -228,8 +228,6 @@ func (c *Cluster) Load() error {
228228

229229
c.HostedZoneID = withHostedZoneIDPrefix(c.HostedZoneID)
230230

231-
c.ConsumeDeprecatedKeys()
232-
233231
if err := c.valid(); err != nil {
234232
return fmt.Errorf("invalid cluster: %v", err)
235233
}
@@ -261,90 +259,6 @@ func (c *Cluster) Load() error {
261259
return nil
262260
}
263261

264-
func (c *Cluster) ConsumeDeprecatedKeys() {
265-
// TODO Remove deprecated keys in v0.9.7
266-
if c.DeprecatedControllerCount != nil {
267-
fmt.Println("WARN: controllerCount is deprecated and will be removed in v0.9.7. Please use controller.count instead")
268-
c.Controller.Count = *c.DeprecatedControllerCount
269-
}
270-
if c.DeprecatedControllerTenancy != nil {
271-
fmt.Println("WARN: controllerTenancy is deprecated and will be removed in v0.9.7. Please use controller.tenancy instead")
272-
c.Controller.Tenancy = *c.DeprecatedControllerTenancy
273-
}
274-
if c.DeprecatedControllerInstanceType != nil {
275-
fmt.Println("WARN: controllerInstanceType is deprecated and will be removed in v0.9.7. Please use controller.instanceType instead")
276-
c.Controller.InstanceType = *c.DeprecatedControllerInstanceType
277-
}
278-
if c.Controller.DeprecatedControllerManagedIamRoleName != "" {
279-
fmt.Println("WARN: controller.managedIamRoleName is deprecated and will be removed in v0.9.7. Please use controller.iam.managedIamRoleName instead")
280-
c.Controller.IAMConfig.Role.Name = c.Controller.DeprecatedControllerManagedIamRoleName
281-
}
282-
if c.DeprecatedControllerCreateTimeout != nil {
283-
fmt.Println("WARN: controllerCreateTimeout is deprecated and will be removed in v0.9.7. Please use controller.createTimeout instead")
284-
c.Controller.CreateTimeout = *c.DeprecatedControllerCreateTimeout
285-
}
286-
if c.DeprecatedControllerRootVolumeIOPS != nil {
287-
fmt.Println("WARN: controllerRootVolumeIOPS is deprecated and will be removed in v0.9.7. Please use controller.rootVolume.iops instead")
288-
c.Controller.RootVolume.IOPS = *c.DeprecatedControllerRootVolumeIOPS
289-
}
290-
if c.DeprecatedControllerRootVolumeSize != nil {
291-
fmt.Println("WARN: controllerRootVolumeSize is deprecated and will be removed in v0.9.7. Please use controller.rootVolume.size instead")
292-
c.Controller.RootVolume.Size = *c.DeprecatedControllerRootVolumeSize
293-
}
294-
if c.DeprecatedControllerRootVolumeType != nil {
295-
fmt.Println("WARN: controllerRootVolumeType is deprecated and will be removed in v0.9.7. Please use controller.rootVolume.type instead")
296-
c.Controller.RootVolume.Type = *c.DeprecatedControllerRootVolumeType
297-
}
298-
299-
if c.DeprecatedEtcdCount != nil {
300-
fmt.Println("WARN: etcdCount is deprecated and will be removed in v0.9.7. Please use etcd.count instead")
301-
c.Etcd.Count = *c.DeprecatedEtcdCount
302-
}
303-
if c.DeprecatedEtcdTenancy != nil {
304-
fmt.Println("WARN: etcdTenancy is deprecated and will be removed in v0.9.7. Please use etcd.tenancy instead")
305-
c.Etcd.Tenancy = *c.DeprecatedEtcdTenancy
306-
}
307-
if c.DeprecatedEtcdInstanceType != nil {
308-
fmt.Println("WARN: etcdInstanceType is deprecated and will be removed in v0.9.7. Please use etcd.instanceType instead")
309-
c.Etcd.InstanceType = *c.DeprecatedEtcdInstanceType
310-
}
311-
//if c.DeprecatedEtcdCreateTimeout != nil {
312-
// c.Etcd.CreateTimeout = *c.DeprecatedEtcdCreateTimeout
313-
//}
314-
if c.DeprecatedEtcdRootVolumeIOPS != nil {
315-
fmt.Println("WARN: etcdRootVolumeIOPS is deprecated and will be removed in v0.9.7. Please use etcd.rootVolume.iops instead")
316-
c.Etcd.RootVolume.IOPS = *c.DeprecatedEtcdRootVolumeIOPS
317-
}
318-
if c.DeprecatedEtcdRootVolumeSize != nil {
319-
fmt.Println("WARN: etcdRootVolumeSize is deprecated and will be removed in v0.9.7. Please use etcd.rootVolume.size instead")
320-
c.Etcd.RootVolume.Size = *c.DeprecatedEtcdRootVolumeSize
321-
}
322-
if c.DeprecatedEtcdRootVolumeType != nil {
323-
fmt.Println("WARN: etcdRootVolumeType is deprecated and will be removed in v0.9.7. Please use etcd.rootVolume.type instead")
324-
c.Etcd.RootVolume.Type = *c.DeprecatedEtcdRootVolumeType
325-
}
326-
if c.DeprecatedEtcdDataVolumeIOPS != nil {
327-
fmt.Println("WARN: etcdDataVolumeIOPS is deprecated and will be removed in v0.9.7. Please use etcd.dataVolume.iops instead")
328-
c.Etcd.DataVolume.IOPS = *c.DeprecatedEtcdDataVolumeIOPS
329-
}
330-
if c.DeprecatedEtcdDataVolumeSize != nil {
331-
fmt.Println("WARN: etcdDataVolumeSize is deprecated and will be removed in v0.9.7. Please use etcd.dataVolume.size instead")
332-
c.Etcd.DataVolume.Size = *c.DeprecatedEtcdDataVolumeSize
333-
}
334-
if c.DeprecatedEtcdDataVolumeType != nil {
335-
fmt.Println("WARN: etcdDataVolumeType is deprecated and will be removed in v0.9.7. Please use etcd.dataVolume.type instead")
336-
c.Etcd.DataVolume.Type = *c.DeprecatedEtcdDataVolumeType
337-
}
338-
if c.DeprecatedEtcdDataVolumeEphemeral != nil {
339-
fmt.Println("WARN: etcdDataVolumeEphemeral is deprecated and will be removed in v0.9.7. Please use etcd.dataVolume.ephemeral instead")
340-
c.Etcd.DataVolume.Ephemeral = *c.DeprecatedEtcdDataVolumeEphemeral
341-
}
342-
if c.DeprecatedEtcdDataVolumeEncrypted != nil {
343-
fmt.Println("WARN: etcdDataVolumeEncrypted is deprecated and will be removed in v0.9.7. Please use etcd.dataVolume.encrypted instead")
344-
c.Etcd.DataVolume.Encrypted = *c.DeprecatedEtcdDataVolumeEncrypted
345-
}
346-
}
347-
348262
func (c *Cluster) SetDefaults() {
349263
// For backward-compatibility
350264
if len(c.Subnets) == 0 {
@@ -533,120 +447,12 @@ type DefaultWorkerSettings struct {
533447

534448
// Part of configuration which is specific to controller nodes
535449
type ControllerSettings struct {
536-
model.Controller `yaml:"controller,omitempty"`
537-
DeprecatedControllerCount *int `yaml:"controllerCount,omitempty"`
538-
DeprecatedControllerCreateTimeout *string `yaml:"controllerCreateTimeout,omitempty"`
539-
DeprecatedControllerInstanceType *string `yaml:"controllerInstanceType,omitempty"`
540-
DeprecatedControllerRootVolumeType *string `yaml:"controllerRootVolumeType,omitempty"`
541-
DeprecatedControllerRootVolumeIOPS *int `yaml:"controllerRootVolumeIOPS,omitempty"`
542-
DeprecatedControllerRootVolumeSize *int `yaml:"controllerRootVolumeSize,omitempty"`
543-
DeprecatedControllerTenancy *string `yaml:"controllerTenancy,omitempty"`
544-
}
545-
546-
func (c ControllerSettings) ControllerCount() int {
547-
fmt.Println("WARN: ControllerCount is deprecated and will be removed in v0.9.7. Please use Controller.Count instead")
548-
return c.Controller.Count
549-
}
550-
551-
func (c ControllerSettings) ControllerCreateTimeout() string {
552-
fmt.Println("WARN: ControllerCreateTimeout is deprecated and will be removed in v0.9.7. Please use Controller.CreateTimeout instead")
553-
return c.Controller.CreateTimeout
554-
}
555-
556-
func (c ControllerSettings) ControllerInstanceType() string {
557-
fmt.Println("WARN: ControllerInstanceType is deprecated and will be removed in v0.9.7. Please use Controller.InstanceType instead")
558-
return c.Controller.InstanceType
559-
}
560-
561-
func (c ControllerSettings) ControllerRootVolumeType() string {
562-
fmt.Println("WARN: ControllerRootVolumeType is deprecated and will be removed in v0.9.7. Please use Controller.RootVolume.Type instead")
563-
return c.Controller.RootVolume.Type
564-
}
565-
566-
func (c ControllerSettings) ControllerRootVolumeIOPS() int {
567-
fmt.Println("WARN: ControllerRootVolumeIOPS is deprecated and will be removed in v0.9.7. Please use Controller.RootVolume.IOPS instead")
568-
return c.Controller.RootVolume.IOPS
569-
}
570-
571-
func (c ControllerSettings) ControllerRootVolumeSize() int {
572-
fmt.Println("WARN: ControllerRootVolumeSize is deprecated and will be removed in v0.9.7. Please use Controller.RootVolume.Size instead")
573-
return c.Controller.RootVolume.Size
574-
}
575-
576-
func (c ControllerSettings) ControllerTenancy() string {
577-
fmt.Println("WARN: ControllerTenancy is deprecated and will be removed in v0.9.7. Please use Controller.Tenancy instead")
578-
return c.Controller.Tenancy
450+
model.Controller `yaml:"controller,omitempty"`
579451
}
580452

581453
// Part of configuration which is specific to etcd nodes
582454
type EtcdSettings struct {
583-
model.Etcd `yaml:"etcd,omitempty"`
584-
DeprecatedEtcdCount *int `yaml:"etcdCount"`
585-
DeprecatedEtcdInstanceType *string `yaml:"etcdInstanceType,omitempty"`
586-
DeprecatedEtcdRootVolumeSize *int `yaml:"etcdRootVolumeSize,omitempty"`
587-
DeprecatedEtcdRootVolumeType *string `yaml:"etcdRootVolumeType,omitempty"`
588-
DeprecatedEtcdRootVolumeIOPS *int `yaml:"etcdRootVolumeIOPS,omitempty"`
589-
DeprecatedEtcdDataVolumeSize *int `yaml:"etcdDataVolumeSize,omitempty"`
590-
DeprecatedEtcdDataVolumeType *string `yaml:"etcdDataVolumeType,omitempty"`
591-
DeprecatedEtcdDataVolumeIOPS *int `yaml:"etcdDataVolumeIOPS,omitempty"`
592-
DeprecatedEtcdDataVolumeEphemeral *bool `yaml:"etcdDataVolumeEphemeral,omitempty"`
593-
DeprecatedEtcdDataVolumeEncrypted *bool `yaml:"etcdDataVolumeEncrypted,omitempty"`
594-
DeprecatedEtcdTenancy *string `yaml:"etcdTenancy,omitempty"`
595-
}
596-
597-
func (e EtcdSettings) EtcdCount() int {
598-
fmt.Println("WARN: EtcdCount is deprecated and will be removed in v0.9.7. Please use Etcd.Count instead")
599-
return e.Etcd.Count
600-
}
601-
602-
func (e EtcdSettings) EtcdInstanceType() string {
603-
fmt.Println("WARN: EtcdInstanceType is deprecated and will be removed in v0.9.7. Please use Etcd.InstanceType instead")
604-
return e.Etcd.InstanceType
605-
}
606-
607-
func (e EtcdSettings) EtcdRootVolumeSize() int {
608-
fmt.Println("WARN: EtcdRootVolumeSize is deprecated and will be removed in v0.9.7. Please use Etcd.RootVolume.Size instead")
609-
return e.Etcd.RootVolume.Size
610-
}
611-
612-
func (e EtcdSettings) EtcdRootVolumeType() string {
613-
fmt.Println("WARN: EtcdRootVolumeType is deprecated and will be removed in v0.9.7. Please use Etcd.RootVolume.Type instead")
614-
return e.Etcd.RootVolume.Type
615-
}
616-
617-
func (e EtcdSettings) EtcdRootVolumeIOPS() int {
618-
fmt.Println("WARN: EtcdRootVolumeIOPS is deprecated and will be removed in v0.9.7. Please use Etcd.RootVolume.IOPS instead")
619-
return e.Etcd.RootVolume.IOPS
620-
}
621-
622-
func (e EtcdSettings) EtcdDataVolumeSize() int {
623-
fmt.Println("WARN: EtcdDataVolumeSize is deprecated and will be removed in v0.9.7. Please use Etcd.DataVolume.Size instead")
624-
return e.Etcd.DataVolume.Size
625-
}
626-
627-
func (e EtcdSettings) EtcdDataVolumeType() string {
628-
fmt.Println("WARN: EtcdDataVolumeType is deprecated and will be removed in v0.9.7. Please use Etcd.DataVolume.Type instead")
629-
return e.Etcd.DataVolume.Type
630-
}
631-
632-
func (e EtcdSettings) EtcdDataVolumeIOPS() int {
633-
fmt.Println("WARN: EtcdDataVolumeIOPS is deprecated and will be removed in v0.9.7. Please use Etcd.DataVolume.IOPS instead")
634-
return e.Etcd.DataVolume.IOPS
635-
}
636-
637-
func (e EtcdSettings) EtcdDataVolumeEphemeral() bool {
638-
fmt.Println("WARN: EtcdDataVolumeEphemeral is deprecated and will be removed in v0.9.7. Please use Etcd.DataVolume.Ephemeral instead")
639-
return e.Etcd.DataVolume.Ephemeral
640-
}
641-
642-
func (e EtcdSettings) EtcdDataVolumeEncrypted() bool {
643-
fmt.Println("WARN: EtcdDataVolumeEncrypted is deprecated and will be removed in v0.9.7. Please use Etcd.DataVolume.Encrypted instead")
644-
return e.Etcd.DataVolume.Encrypted
645-
}
646-
647-
func (e EtcdSettings) EtcdTenancy() string {
648-
fmt.Println("WARN: EtcdTenancy is deprecated and will be removed in v0.9.7. Please use Etcd.Tenancy instead")
649-
return e.Etcd.Tenancy
455+
model.Etcd `yaml:"etcd,omitempty"`
650456
}
651457

652458
// Part of configuration which is specific to flanneld

core/controlplane/config/config_cluster_size_test.go

Lines changed: 11 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -90,38 +90,23 @@ subnets:
9090

9191
func checkControllerASGs(configuredCount *int, configuredMin *int, configuredMax *int, configuredMinInstances *int,
9292
expectedMin int, expectedMax int, expectedMinInstances int, expectedError string, t *testing.T) {
93-
// Use deprecated keys
9493
checkControllerASG(configuredCount, configuredMin, configuredMax, configuredMinInstances,
95-
expectedMin, expectedMax, expectedMinInstances, expectedError, true, t)
96-
// Don't use deprecated keys
97-
checkControllerASG(configuredCount, configuredMin, configuredMax, configuredMinInstances,
98-
expectedMin, expectedMax, expectedMinInstances, expectedError, false, t)
94+
expectedMin, expectedMax, expectedMinInstances, expectedError, t)
9995
}
10096

10197
func checkControllerASG(configuredCount *int, configuredMin *int, configuredMax *int, configuredMinInstances *int,
102-
expectedMin int, expectedMax int, expectedMinInstances int, expectedError string, useDeprecatedKey bool, t *testing.T) {
98+
expectedMin int, expectedMax int, expectedMinInstances int, expectedError string, t *testing.T) {
10399
config := testConfig
104100

105-
if useDeprecatedKey {
106-
if configuredCount != nil {
107-
config += fmt.Sprintf("controllerCount: %d\n", *configuredCount)
108-
}
109-
asgConfig := buildASGConfig(configuredMin, configuredMax, configuredMinInstances)
110-
if asgConfig != "" {
111-
// empty `controller` traps go-yaml to override the whole Controller with a zero-value, which is not what we expect
112-
config += "controller:\n" + asgConfig
113-
}
114-
} else {
115-
countConfig := ""
116-
if configuredCount != nil {
117-
countConfig = fmt.Sprintf(" count: %d\n", *configuredCount)
118-
}
119-
asgConfig := buildASGConfig(configuredMin, configuredMax, configuredMinInstances)
120-
concatConfig := countConfig + asgConfig
121-
if concatConfig != "" {
122-
// empty `controller` traps go-yaml to override the whole Controller with a zero-value, which is not what we expect
123-
config += "controller:\n" + concatConfig
124-
}
101+
countConfig := ""
102+
if configuredCount != nil {
103+
countConfig = fmt.Sprintf(" count: %d\n", *configuredCount)
104+
}
105+
asgConfig := buildASGConfig(configuredMin, configuredMax, configuredMinInstances)
106+
concatConfig := countConfig + asgConfig
107+
if concatConfig != "" {
108+
// empty `controller` traps go-yaml to override the whole Controller with a zero-value, which is not what we expect
109+
config += "controller:\n" + concatConfig
125110
}
126111

127112
cluster, err := ClusterFromBytes([]byte(config))

core/controlplane/config/config_test.go

Lines changed: 19 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -521,37 +521,6 @@ controller:
521521
rootVolume:
522522
type: io1
523523
iops: 2000
524-
`,
525-
volumeType: "io1",
526-
iops: 2000,
527-
},
528-
// TODO Remove test cases for deprecated keys in v0.9.7
529-
{
530-
conf: `
531-
controllerRootVolumeType: gp2
532-
`,
533-
volumeType: "gp2",
534-
iops: 0,
535-
},
536-
{
537-
conf: `
538-
controllerRootVolumeType: standard
539-
`,
540-
volumeType: "standard",
541-
iops: 0,
542-
},
543-
{
544-
conf: `
545-
controllerRootVolumeType: io1
546-
controllerRootVolumeIOPS: 100
547-
`,
548-
volumeType: "io1",
549-
iops: 100,
550-
},
551-
{
552-
conf: `
553-
controllerRootVolumeType: io1
554-
controllerRootVolumeIOPS: 2000
555524
`,
556525
volumeType: "io1",
557526
iops: 2000,
@@ -561,27 +530,37 @@ controllerRootVolumeIOPS: 2000
561530
invalidConfigs := []string{
562531
`
563532
# There's no volume type 'default'
564-
controllerRootVolumeType: default
533+
controller:
534+
rootVolume:
535+
type: default
565536
`,
566537
`
567538
# IOPS must be zero for volume types != 'io1'
568-
controllerRootVolumeType: standard
569-
controllerRootVolumeIOPS: 100
539+
controller:
540+
rootVolume:
541+
type: standard
542+
iops: 100
570543
`,
571544
`
572545
# IOPS must be zero for volume types != 'io1'
573-
controllerRootVolumeType: gp2
574-
controllerRootVolumeIOPS: 2000
546+
controller:
547+
rootVolume:
548+
type: gp2
549+
iops: 2000
575550
`,
576551
`
577552
# IOPS smaller than the minimum (100)
578-
controllerRootVolumeType: io1
579-
controllerRootVolumeIOPS: 99
553+
controller:
554+
rootVolume:
555+
type: io1
556+
iops: 99
580557
`,
581558
`
582559
# IOPS greater than the maximum (2000)
583-
controllerRootVolumeType: io1
584-
controllerRootVolumeIOPS: 2001
560+
controller:
561+
rootVolume:
562+
type: io1
563+
iops: 2001
585564
`,
586565
}
587566

0 commit comments

Comments
 (0)