Skip to content

Commit

Permalink
[feat]tools-v2: optimize bs delete volume xxx and define result code …
Browse files Browse the repository at this point in the history
…as constant

Signed-off-by: baytan0720 <baytan2@hotmail.com>
  • Loading branch information
baytan0720 authored and Cyber-SiKu committed Oct 8, 2023
1 parent a746f17 commit 10a5747
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 10 deletions.
3 changes: 3 additions & 0 deletions tools-v2/internal/utils/snapshot.go
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,9 @@ const (
ActionGetCloneTaskList = "GetCloneTaskList"
ActionGetFileSnapshotList = "GetFileSnapshotList"
ActionGetFileSnapshotInfo = "GetFileSnapshotInfo"

ResultCode = "Code"
ResultSuccess = "0"
)

func NewSnapshotQuerySubUri(params map[string]any) string {
Expand Down
18 changes: 13 additions & 5 deletions tools-v2/pkg/cli/command/curvebs/delete/volume/clone/clone.go
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ func (rCmd *CloneCmd) RunCommand(cmd *cobra.Command, args []string) error {
if err := json.Unmarshal([]byte(result), &resp); err != nil {
return err
}
if resp.Code != "0" {
if resp.Code != cobrautil.ResultSuccess {
return fmt.Errorf("get clone list fail, error code: %s", resp.Code)
}
if len(resp.TaskInfos) == 0 {
Expand All @@ -120,21 +120,29 @@ func (rCmd *CloneCmd) RunCommand(cmd *cobra.Command, args []string) error {
for _, item := range records {
wg.Add(1)
go func(item map[string]string) {
defer wg.Done()
params := map[string]any{
cobrautil.QueryAction: cobrautil.ActionCleanCloneTask,
cobrautil.QueryUser: item["User"],
cobrautil.QueryUUID: item["UUID"],
}
subUri := cobrautil.NewSnapshotQuerySubUri(params)
metric := basecmd.NewMetric(rCmd.snapshotAddrs, subUri, rCmd.timeout)
_, err := basecmd.QueryMetric(metric)
result, err := basecmd.QueryMetric(metric)
if err.TypeCode() != cmderror.CODE_SUCCESS {
item["Result"] = "fail"
item[cobrautil.ROW_RESULT] = cobrautil.ROW_VALUE_FAILED
} else {
item["Result"] = "success"
payload := map[string]any{}
if err := json.Unmarshal([]byte(result), &payload); err != nil {
item[cobrautil.ROW_RESULT] = cobrautil.ROW_VALUE_FAILED
} else {
if payload[cobrautil.ResultCode] != cobrautil.ResultSuccess {
item[cobrautil.ROW_RESULT] = cobrautil.ROW_VALUE_FAILED
}
}
}
item[cobrautil.ROW_RESULT] = cobrautil.ROW_VALUE_SUCCESS
rCmd.TableNew.Append([]string{item["User"], item["Src"], item["UUID"], item["File"], item["Result"]})
wg.Done()
}(item)
}
wg.Wait()
Expand Down
18 changes: 13 additions & 5 deletions tools-v2/pkg/cli/command/curvebs/delete/volume/recover/recover.go
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ func (rCmd *RecoverCmd) RunCommand(cmd *cobra.Command, args []string) error {
if err := json.Unmarshal([]byte(result), &resp); err != nil {
return err
}
if resp.Code != "0" {
if resp.Code != cobrautil.ResultSuccess {
return fmt.Errorf("get clone list fail, error code: %s", resp.Code)
}
if len(resp.TaskInfos) == 0 {
Expand All @@ -119,21 +119,29 @@ func (rCmd *RecoverCmd) RunCommand(cmd *cobra.Command, args []string) error {
for _, item := range records {
wg.Add(1)
go func(item map[string]string) {
defer wg.Done()
params := map[string]any{
cobrautil.QueryAction: cobrautil.ActionCleanCloneTask,
cobrautil.QueryUser: item["User"],
cobrautil.QueryUUID: item["UUID"],
}
subUri := cobrautil.NewSnapshotQuerySubUri(params)
metric := basecmd.NewMetric(rCmd.snapshotAddrs, subUri, rCmd.timeout)
_, err := basecmd.QueryMetric(metric)
result, err := basecmd.QueryMetric(metric)
if err.TypeCode() != cmderror.CODE_SUCCESS {
item["Result"] = "fail"
item["Result"] = cobrautil.ROW_VALUE_FAILED
} else {
item["Result"] = "success"
payload := map[string]any{}
if err := json.Unmarshal([]byte(result), &payload); err != nil {
item["Result"] = cobrautil.ROW_VALUE_FAILED
} else {
if payload[cobrautil.ResultCode] != cobrautil.ResultSuccess {
item["Result"] = cobrautil.ROW_VALUE_FAILED
}
}
}
item["Result"] = cobrautil.ROW_VALUE_SUCCESS
rCmd.TableNew.Append([]string{item["User"], item["Src"], item["UUID"], item["File"], item["Result"]})
wg.Done()
}(item)
}
wg.Wait()
Expand Down

0 comments on commit 10a5747

Please sign in to comment.