@@ -11,6 +11,7 @@ import (
1111 "github.com/ucloud/ucloud-sdk-go/services/uaccount"
1212 sdk "github.com/ucloud/ucloud-sdk-go/ucloud"
1313 "github.com/ucloud/ucloud-sdk-go/ucloud/auth"
14+ "github.com/ucloud/ucloud-sdk-go/ucloud/log"
1415)
1516
1617//ConfigFile filename
@@ -29,7 +30,7 @@ const DefaultBaseURL = "https://api.ucloud.cn/"
2930const DefaultProfile = "default"
3031
3132//Version 版本号
32- const Version = "0.1.9 "
33+ const Version = "0.1.10 "
3334
3435//ConfigIns 配置实例, 程序加载时生成
3536var ConfigIns = & AggConfig {}
@@ -40,6 +41,19 @@ var ClientConfig *sdk.Config
4041//AuthCredential 创建sdk client参数
4142var AuthCredential * auth.Credential
4243
44+ //Global 全局flag
45+ var Global GlobalFlag
46+
47+ //GlobalFlag 几乎所有接口都需要的参数,例如 region zone projectID
48+ type GlobalFlag struct {
49+ Debug bool
50+ JSON bool
51+ Version bool
52+ Completion bool
53+ Config bool
54+ Signup bool
55+ }
56+
4357//CLIConfig cli_config element
4458type CLIConfig struct {
4559 ProjectID string `json:"project_id"`
@@ -75,26 +89,26 @@ type AggConfig struct {
7589func (p * AggConfig ) ConfigPublicKey () error {
7690 Cxt .Print ("Your public-key:" )
7791 _ , err := fmt .Scanf ("%s\n " , & p .PublicKey )
78- p .PublicKey = strings .TrimSpace (p .PublicKey )
79- AuthCredential .PublicKey = p .PublicKey
80- p .Save ()
8192 if err != nil {
8293 Cxt .Println (err )
94+ return err
8395 }
84- return err
96+ p .PublicKey = strings .TrimSpace (p .PublicKey )
97+ AuthCredential .PublicKey = p .PublicKey
98+ return nil
8599}
86100
87101//ConfigPrivateKey 输入私钥
88102func (p * AggConfig ) ConfigPrivateKey () error {
89103 Cxt .Print ("Your private-key:" )
90104 _ , err := fmt .Scanf ("%s\n " , & p .PrivateKey )
91- p .PrivateKey = strings .TrimSpace (p .PrivateKey )
92- AuthCredential .PrivateKey = p .PrivateKey
93- p .Save ()
94105 if err != nil {
95106 Cxt .Println (err )
107+ return err
96108 }
97- return err
109+ p .PrivateKey = strings .TrimSpace (p .PrivateKey )
110+ AuthCredential .PrivateKey = p .PrivateKey
111+ return nil
98112}
99113
100114//GetClientConfig 用来生成sdkClient
@@ -491,8 +505,8 @@ func init() {
491505 ClientConfig = & sdk.Config {
492506 BaseUrl : ConfigIns .BaseURL ,
493507 Timeout : timeout ,
494- UserAgent : fmt .Sprintf ("UCloud CLI v %s" , Version ),
495- LogLevel : 1 ,
508+ UserAgent : fmt .Sprintf ("UCloud- CLI/ %s" , Version ),
509+ LogLevel : log . FatalLevel ,
496510 }
497511
498512 AuthCredential = & auth.Credential {
0 commit comments