Skip to content

Commit 1b6e989

Browse files
committed
feat: Multiple errcodes returned.
1 parent a58b619 commit 1b6e989

File tree

3 files changed

+39
-9
lines changed

3 files changed

+39
-9
lines changed

internal/cacctmgr/cacctmgr.go

Lines changed: 26 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -476,7 +476,10 @@ func DeleteAccount(value string) util.CraneCmdError {
476476
fmt.Printf("Delete account %s succeeded.\n", value)
477477
return util.ErrorSuccess
478478
} else {
479-
fmt.Printf("Delete account %s failed: %s.\n", value, util.ErrMsg(reply.GetReason()))
479+
fmt.Printf("Delete account failed: \n")
480+
for _, errRecode := range reply.ErrRecodeList {
481+
fmt.Printf("%s: %s \n", errRecode.ErrValue, util.ErrMsg(errRecode.ErrCode))
482+
}
480483
return util.ErrorBackend
481484
}
482485
}
@@ -508,7 +511,10 @@ func DeleteUser(value string, account string) util.CraneCmdError {
508511
fmt.Printf("Remove user %s succeeded.\n", value)
509512
return util.ErrorSuccess
510513
} else {
511-
fmt.Printf("Remove user %s failed: %s.\n", value, util.ErrMsg(reply.GetReason()))
514+
fmt.Printf("Remove user failed: \n")
515+
for _, errRecode := range reply.ErrRecodeList {
516+
fmt.Printf("%s: %s \n", errRecode.ErrValue, util.ErrMsg(errRecode.ErrCode))
517+
}
512518
return util.ErrorBackend
513519
}
514520
}
@@ -540,7 +546,10 @@ func DeleteQos(value string) util.CraneCmdError {
540546
fmt.Printf("Delete QoS %s succeeded.\n", value)
541547
return util.ErrorSuccess
542548
} else {
543-
fmt.Printf("Delete QoS %s failed: %s.\n", value, util.ErrMsg(reply.GetReason()))
549+
fmt.Printf("Delete QoS failed: \n")
550+
for _, errRecode := range reply.ErrRecodeList {
551+
fmt.Printf("%s: %s \n", errRecode.ErrValue, util.ErrMsg(errRecode.ErrCode))
552+
}
544553
return util.ErrorBackend
545554
}
546555
}
@@ -605,7 +614,10 @@ func ModifyAccount(modifyField protos.ModifyField, newValue string, name string,
605614
fmt.Println("Modify information succeeded.")
606615
return util.ErrorSuccess
607616
} else {
608-
fmt.Printf("Modify information failed: %s.\n", util.ErrMsg(reply.GetReason()))
617+
fmt.Printf("Modify information failed:\n")
618+
for _, errRecode := range reply.ErrRecodeList {
619+
fmt.Printf("%s: %s \n", errRecode.ErrValue, util.ErrMsg(errRecode.ErrCode))
620+
}
609621
return util.ErrorBackend
610622
}
611623
}
@@ -663,7 +675,10 @@ func ModifyUser(modifyField protos.ModifyField, newValue string, name string, ac
663675
fmt.Println("Modify information succeeded.")
664676
return util.ErrorSuccess
665677
} else {
666-
fmt.Printf("Modify information failed: %s.\n", util.ErrMsg(reply.GetReason()))
678+
fmt.Printf("Modify information failed: \n")
679+
for _, errRecode := range reply.ErrRecodeList {
680+
fmt.Printf("%s: %s \n", errRecode.ErrValue, util.ErrMsg(errRecode.ErrCode))
681+
}
667682
return util.ErrorBackend
668683
}
669684
}
@@ -864,7 +879,9 @@ func BlockAccountOrUser(value string, entityType protos.EntityType, account stri
864879
fmt.Printf("Block %s succeeded.\n", value)
865880
return util.ErrorSuccess
866881
} else {
867-
fmt.Println(util.ErrMsg(reply.Reason))
882+
for _, errRecode := range reply.ErrRecodeList {
883+
fmt.Printf("%s: %s \n", errRecode.ErrValue, util.ErrMsg(errRecode.ErrCode))
884+
}
868885
return util.ErrorBackend
869886
}
870887
}
@@ -900,7 +917,9 @@ func UnblockAccountOrUser(value string, entityType protos.EntityType, account st
900917
fmt.Printf("Unblock %s succeeded.\n", value)
901918
return util.ErrorSuccess
902919
} else {
903-
fmt.Println(util.ErrMsg(reply.Reason))
920+
for _, errRecode := range reply.ErrRecodeList {
921+
fmt.Printf("%s: %s \n", errRecode.ErrValue, util.ErrMsg(errRecode.ErrCode))
922+
}
904923
return util.ErrorBackend
905924
}
906925
}

protos/Crane.proto

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,7 @@ message DeleteAccountRequest {
274274
message DeleteAccountReply {
275275
bool ok = 1;
276276
ErrCode reason = 2;
277+
repeated ErrorRecord err_recode_list = 3;
277278
}
278279

279280
message DeleteUserRequest {
@@ -285,6 +286,7 @@ message DeleteUserRequest {
285286
message DeleteUserReply {
286287
bool ok = 1;
287288
ErrCode reason = 2;
289+
repeated ErrorRecord err_recode_list = 3;
288290
}
289291

290292
message DeleteQosRequest {
@@ -295,6 +297,7 @@ message DeleteQosRequest {
295297
message DeleteQosReply {
296298
bool ok = 1;
297299
ErrCode reason = 2;
300+
repeated ErrorRecord err_recode_list = 3;
298301
}
299302

300303
message ModifyAccountRequest {
@@ -309,6 +312,7 @@ message ModifyAccountRequest {
309312
message ModifyAccountReply {
310313
bool ok = 1;
311314
ErrCode reason = 2;
315+
repeated ErrorRecord err_recode_list = 3;
312316
}
313317

314318
message ModifyUserRequest {
@@ -325,6 +329,7 @@ message ModifyUserRequest {
325329
message ModifyUserReply {
326330
bool ok = 1;
327331
ErrCode reason = 2;
332+
repeated ErrorRecord err_recode_list = 3;
328333
}
329334

330335
message ModifyQosRequest {
@@ -384,6 +389,7 @@ message BlockAccountOrUserRequest {
384389
message BlockAccountOrUserReply {
385390
bool ok = 1;
386391
ErrCode reason = 2;
392+
repeated ErrorRecord err_recode_list = 3;
387393
}
388394

389395
message MigrateSshProcToCgroupRequest {
@@ -831,4 +837,4 @@ service CraneForeD {
831837
rpc CrunStream(stream StreamCrunRequest) returns(stream StreamCforedCrunReply);
832838
rpc TaskIOStream(stream StreamCforedTaskIORequest) returns(stream StreamCforedTaskIOReply);
833839
rpc QueryTaskIdFromPort(QueryTaskIdFromPortRequest) returns (QueryTaskIdFromPortReply);
834-
}
840+
}

protos/PublicDefs.proto

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -319,6 +319,11 @@ message TrimmedPartitionInfo {
319319
repeated TrimmedCranedInfo craned_lists = 3;
320320
}
321321

322+
message ErrorRecord {
323+
string err_value = 1;
324+
ErrCode err_code = 2;
325+
}
326+
322327
enum ErrCode {
323328
SUCCESS = 0; // Success
324329

@@ -481,4 +486,4 @@ message CranedRemoteMeta {
481486
string craned_version = 3;
482487
google.protobuf.Timestamp craned_start_time = 4;
483488
google.protobuf.Timestamp system_boot_time = 5;
484-
}
489+
}

0 commit comments

Comments
 (0)