From cac7b8547aa6ff735f161f6d2fdfd7fb4f397bc5 Mon Sep 17 00:00:00 2001 From: ioito Date: Tue, 28 Dec 2021 10:41:26 +0800 Subject: [PATCH] fix(region): json to string fix --- pkg/compute/tasks/guest_save_instance_image_task.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/pkg/compute/tasks/guest_save_instance_image_task.go b/pkg/compute/tasks/guest_save_instance_image_task.go index 3941e42101..2cac522dbf 100644 --- a/pkg/compute/tasks/guest_save_instance_image_task.go +++ b/pkg/compute/tasks/guest_save_instance_image_task.go @@ -41,21 +41,22 @@ func (self *GuestSaveGuestImageTask) OnInit(ctx context.Context, obj db.IStandal self.SetStage("OnSaveRootImageComplete", nil) disks := guest.CategorizeDisks() - imageIds, _ := self.Params.GetArray("image_ids") + imageIds := []string{} + self.Params.Unmarshal(&imageIds, "image_ids") self.Params.Remove("image_ids") // data disk for index, dataDisk := range disks.Data { params := jsonutils.DeepCopy(self.Params).(*jsonutils.JSONDict) - params.Add(imageIds[index], "image_id") - opts := api.DiskSaveInput{ImageId: imageIds[index].String()} + params.Add(jsonutils.NewString(imageIds[index]), "image_id") + opts := api.DiskSaveInput{ImageId: imageIds[index]} if err := dataDisk.StartDiskSaveTask(ctx, self.UserCred, opts, self.GetTaskId()); err != nil { self.taskFailed(ctx, guest, jsonutils.NewString(err.Error())) } } - self.Params.Add(imageIds[len(imageIds)-1], "image_id") - opts := api.DiskSaveInput{ImageId: imageIds[len(imageIds)-1].String()} + self.Params.Add(jsonutils.NewString(imageIds[len(imageIds)-1]), "image_id") + opts := api.DiskSaveInput{ImageId: imageIds[len(imageIds)-1]} if err := disks.Root.StartDiskSaveTask(ctx, self.UserCred, opts, self.GetTaskId()); err != nil { self.taskFailed(ctx, guest, jsonutils.NewString(err.Error())) }