Skip to content

Commit e7fa8f5

Browse files
committed
[fix]getClusterPool: performing a type conversion on a nil.
fix curveadm is performing a type conversion on a nil. Solution: Add poolset and diskType to the option choices. Signed-off-by: sjf <[email protected]>
1 parent 956c953 commit e7fa8f5

File tree

2 files changed

+16
-2
lines changed

2 files changed

+16
-2
lines changed

cli/command/deploy.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -243,6 +243,8 @@ func genDeployPlaybook(curveadm *cli.CurveAdm,
243243
options[comm.POOLSET_DISK_TYPE] = diskType
244244
} else if step == CREATE_LOGICAL_POOL {
245245
options[comm.KEY_CREATE_POOL_TYPE] = comm.POOL_TYPE_LOGICAL
246+
options[comm.POOLSET] = poolset
247+
options[comm.POOLSET_DISK_TYPE] = diskType
246248
}
247249

248250
pb.AddStep(&playbook.PlaybookStep{

cli/command/migrate.go

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,8 @@ var (
104104

105105
type migrateOptions struct {
106106
filename string
107+
poolset string
108+
poolsetDiskType string
107109
}
108110

109111
func NewMigrateCommand(curveadm *cli.CurveAdm) *cobra.Command {
@@ -120,6 +122,10 @@ func NewMigrateCommand(curveadm *cli.CurveAdm) *cobra.Command {
120122
DisableFlagsInUseLine: true,
121123
}
122124

125+
flags := cmd.Flags()
126+
flags.StringVar(&options.poolset, "poolset", "default", "Specify the poolset")
127+
flags.StringVar(&options.poolsetDiskType, "poolset-disktype", "ssd", "Specify the disk type of physical pool")
128+
123129
return cmd
124130
}
125131

@@ -178,13 +184,15 @@ func getMigrates(curveadm *cli.CurveAdm, data string) []*configure.MigrateServer
178184
}
179185

180186
func genMigratePlaybook(curveadm *cli.CurveAdm,
181-
dcs []*topology.DeployConfig, data string) (*playbook.Playbook, error) {
187+
dcs []*topology.DeployConfig, options migrateOptions,data string) (*playbook.Playbook, error) {
182188
diffs, _ := diffTopology(curveadm, data)
183189
dcs2add := diffs[topology.DIFF_ADD]
184190
dcs2del := diffs[topology.DIFF_DELETE]
185191
migrates := getMigrates(curveadm, data)
186192
role := migrates[0].From.GetRole()
187193
steps := MIGRATE_ROLE_STEPS[role]
194+
poolset := options.poolset
195+
poolsetDiskType := options.poolsetDiskType
188196

189197
pb := playbook.NewPlaybook(curveadm)
190198
for _, step := range steps {
@@ -210,10 +218,14 @@ func genMigratePlaybook(curveadm *cli.CurveAdm,
210218
case playbook.CREATE_PHYSICAL_POOL:
211219
options[comm.KEY_CREATE_POOL_TYPE] = comm.POOL_TYPE_PHYSICAL
212220
options[comm.KEY_MIGRATE_SERVERS] = migrates
221+
options[comm.POOLSET] = poolset
222+
options[comm.POOLSET_DISK_TYPE] = poolsetDiskType
213223
case playbook.CREATE_LOGICAL_POOL:
214224
options[comm.KEY_CREATE_POOL_TYPE] = comm.POOL_TYPE_LOGICAL
215225
options[comm.KEY_MIGRATE_SERVERS] = migrates
216226
options[comm.KEY_NEW_TOPOLOGY_DATA] = data
227+
options[comm.POOLSET] = poolset
228+
options[comm.POOLSET_DISK_TYPE] = poolsetDiskType
217229
case playbook.UPDATE_TOPOLOGY:
218230
options[comm.KEY_NEW_TOPOLOGY_DATA] = data
219231
}
@@ -270,7 +282,7 @@ func runMigrate(curveadm *cli.CurveAdm, options migrateOptions) error {
270282
}
271283

272284
// 6) generate migrate playbook
273-
pb, err := genMigratePlaybook(curveadm, dcs, data)
285+
pb, err := genMigratePlaybook(curveadm, dcs, options, data)
274286
if err != nil {
275287
return err
276288
}

0 commit comments

Comments
 (0)