Merge pull request #3679 from swordqiu/feature/qj-cloud-account-share-mode-support

feature: cloud account share_mode support
This commit is contained in:
yunion-ci-robot
2019-11-18 00:34:23 +08:00
committed by GitHub
18 changed files with 346 additions and 147 deletions
+16
View File
@@ -19,6 +19,7 @@ import (
"yunion.io/x/jsonutils"
api "yunion.io/x/onecloud/pkg/apis/compute"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules"
"yunion.io/x/onecloud/pkg/mcclient/options"
@@ -653,4 +654,19 @@ func init() {
printObject(result)
return nil
})
type CloudaccountShareModeOptions struct {
ID string `help:"ID or name of cloud account"`
MODE string `help:"cloud account share mode" choices:"account_domain|system|provider_domain"`
}
R(&CloudaccountShareModeOptions{}, "cloud-account-share-mode", "Set share_mode of a cloud account", func(s *mcclient.ClientSession, args *CloudaccountShareModeOptions) error {
input := api.CloudaccountShareModeInput{}
input.ShareMode = args.MODE
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "share-mode", jsonutils.Marshal(input))
if err != nil {
return err
}
printObject(result)
return nil
})
}