tccli 3.0.1269.1__py2.py3-none-any.whl → 3.0.1270.1__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. tccli/__init__.py +1 -1
  2. tccli/services/__init__.py +0 -3
  3. tccli/services/aiart/v20221229/api.json +13 -13
  4. tccli/services/aiart/v20221229/examples.json +2 -2
  5. tccli/services/antiddos/v20200309/api.json +201 -132
  6. tccli/services/antiddos/v20200309/examples.json +12 -12
  7. tccli/services/apm/v20210622/api.json +13 -3
  8. tccli/services/cam/v20190116/api.json +8 -8
  9. tccli/services/cbs/cbs_client.py +220 -8
  10. tccli/services/cbs/v20170312/api.json +409 -2
  11. tccli/services/cbs/v20170312/examples.json +32 -0
  12. tccli/services/cdwdoris/v20211228/api.json +10 -1
  13. tccli/services/cls/v20201016/api.json +11 -0
  14. tccli/services/dlc/v20210125/api.json +24 -24
  15. tccli/services/dlc/v20210125/examples.json +2 -2
  16. tccli/services/dts/v20211206/api.json +1 -1
  17. tccli/services/gme/v20180711/api.json +29 -26
  18. tccli/services/gme/v20180711/examples.json +3 -3
  19. tccli/services/ocr/v20181119/api.json +73 -1
  20. tccli/services/ses/v20201002/api.json +15 -5
  21. tccli/services/svp/v20240125/api.json +6 -6
  22. tccli/services/teo/v20220901/api.json +38 -0
  23. tccli/services/trp/v20210515/api.json +549 -513
  24. tccli/services/trp/v20210515/examples.json +5 -5
  25. tccli/services/vpc/v20170312/api.json +124 -0
  26. tccli/services/vpc/v20170312/examples.json +16 -0
  27. tccli/services/vpc/vpc_client.py +106 -0
  28. {tccli-3.0.1269.1.dist-info → tccli-3.0.1270.1.dist-info}/METADATA +2 -2
  29. {tccli-3.0.1269.1.dist-info → tccli-3.0.1270.1.dist-info}/RECORD +32 -36
  30. tccli/services/aa/__init__.py +0 -4
  31. tccli/services/aa/aa_client.py +0 -207
  32. tccli/services/aa/v20200224/api.json +0 -397
  33. tccli/services/aa/v20200224/examples.json +0 -13
  34. {tccli-3.0.1269.1.dist-info → tccli-3.0.1270.1.dist-info}/WHEEL +0 -0
  35. {tccli-3.0.1269.1.dist-info → tccli-3.0.1270.1.dist-info}/entry_points.txt +0 -0
  36. {tccli-3.0.1269.1.dist-info → tccli-3.0.1270.1.dist-info}/license_files/LICENSE +0 -0
@@ -28,7 +28,7 @@
28
28
  {
29
29
  "document": "绑定资产到高防包",
30
30
  "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: CreateBoundIP\n<公共请求参数>\n\n{\n \"BoundDevList\": [\n {\n \"BizType\": \"cvm\",\n \"Ip\": \"1.1.1.1\",\n \"InstanceId\": \"id-xxx\",\n \"DeviceType\": \"cvm\",\n \"IspCode\": 1,\n \"Domain\": \"www.abc.com\"\n }\n ],\n \"Business\": \"bgp\",\n \"Id\": \"id-xxx\",\n \"UnBoundDevList\": [\n {\n \"BizType\": \"cvm\",\n \"Ip\": \"1.1.1.1\",\n \"InstanceId\": \"id-xxx\",\n \"DeviceType\": \"cvm\",\n \"IspCode\": 1,\n \"Domain\": \"www.abc.com\"\n }\n ],\n \"CopyPolicy\": \"policy\",\n \"FilterRegion\": \"guangzhou\"\n}",
31
- "output": "{\n \"Response\": {\n \"Success\": {\n \"Message\": \"msg\",\n \"Code\": \"200\"\n },\n \"RequestId\": \"reqid\"\n }\n}",
31
+ "output": "{\n \"Response\": {\n \"Success\": {\n \"Message\": \"msg\",\n \"Code\": \"200\"\n },\n \"RequestId\": \"08afbb87-5a2c-4562-acbd-eef06a47c7db\"\n }\n}",
32
32
  "title": "绑定资产到高防包"
33
33
  }
34
34
  ],
@@ -131,7 +131,7 @@
131
131
  "CreateNewL7Rules": [
132
132
  {
133
133
  "document": "",
134
- "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: CreateNewL7Rules\n<公共请求参数>\n\n{\n \"Rules\": [\n {\n \"KeepTime\": \"300\",\n \"Domain\": \"www.abc.com\",\n \"Protocol\": \"http\",\n \"SourceType\": \"2\",\n \"CertType\": \"0\",\n \"LbType\": \"1\",\n \"SourceList\": [\n {\n \"Source\": \"1.1.1.20\",\n \"Weight\": \"100\"\n },\n {\n \"Source\": \"1.1.1.10\",\n \"Weight\": \"100\"\n }\n ],\n \"KeepEnable\": \"0\",\n \"RuleName\": \"test\"\n }\n ],\n \"VipList\": [\n \"192.168.1.1\"\n ],\n \"IdList\": [\n \"bgpip-000001\"\n ],\n \"Business\": \"bgpip\"\n}",
134
+ "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: CreateNewL7Rules\n<公共请求参数>\n\n{\n \"Rules\": [\n {\n \"KeepTime\": \"300\",\n \"Domain\": \"www.abc.com\",\n \"Protocol\": \"http\",\n \"SourceType\": \"2\",\n \"CertType\": \"0\",\n \"LbType\": \"1\",\n \"SourceList\": [\n {\n \"Source\": \"1.1.1.20\",\n \"Weight\": \"100\"\n },\n {\n \"Source\": \"1.1.1.10\",\n \"Weight\": \"100\"\n }\n ],\n \"KeepEnable\": \"0\",\n \"RuleName\": \"name\"\n }\n ],\n \"VipList\": [\n \"192.168.1.1\"\n ],\n \"IdList\": [\n \"bgpip-000001\"\n ],\n \"Business\": \"bgpip\"\n}",
135
135
  "output": "{\n \"Response\": {\n \"RequestId\": \"eac6b301-a322-493a-8e36-83b295459397\",\n \"Success\": {\n \"Code\": \"Success\",\n \"Message\": \"Success\"\n }\n }\n}",
136
136
  "title": "添加7层转发规则"
137
137
  }
@@ -299,8 +299,8 @@
299
299
  "DescribeBGPIPL7Rules": [
300
300
  {
301
301
  "document": "",
302
- "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeBGPIPL7Rules\n<公共请求参数>\n\n{\n \"StatusList\": [\n 1\n ],\n \"Domain\": \"abc\",\n \"Business\": \"abc\",\n \"Ip\": \"abc\",\n \"Limit\": 1,\n \"Offset\": 1,\n \"ProtocolList\": [\n \"abc\"\n ],\n \"Cname\": \"abc\",\n \"Export\": true\n}",
303
- "output": "{\n \"Response\": {\n \"Rules\": [\n {\n \"Region\": 1,\n \"Id\": \"abc\",\n \"Ip\": \"abc\",\n \"RuleId\": \"abc\",\n \"RuleName\": \"abc\",\n \"Protocol\": \"abc\",\n \"Domain\": \"abc\",\n \"LbType\": 1,\n \"KeepEnable\": 1,\n \"KeepTime\": 1,\n \"SourceType\": 1,\n \"CertType\": 1,\n \"SSLId\": \"abc\",\n \"Cert\": \"abc\",\n \"PrivateKey\": \"abc\",\n \"SourceList\": [\n {\n \"Source\": \"abc\",\n \"Weight\": 1,\n \"Port\": 1,\n \"Backup\": 1\n }\n ],\n \"Status\": 1,\n \"CCStatus\": 1,\n \"CCEnable\": 1,\n \"CCThreshold\": 1,\n \"CCLevel\": \"abc\",\n \"ModifyTime\": \"2020-09-22 00:00:00\",\n \"HttpsToHttpEnable\": 1,\n \"VirtualPort\": 1,\n \"RewriteHttps\": 1,\n \"ErrCode\": 1,\n \"Version\": 1\n }\n ],\n \"Healths\": [\n {\n \"Status\": 1,\n \"Enable\": 1,\n \"RuleId\": \"abc\",\n \"Url\": \"abc\",\n \"Interval\": 1,\n \"AliveNum\": 1,\n \"KickNum\": 1,\n \"Method\": \"abc\",\n \"StatusCode\": 1,\n \"ProtocolFlag\": 1,\n \"PassiveEnable\": 1,\n \"BlockInter\": 1,\n \"FailedCountInter\": 1,\n \"FailedThreshold\": 1,\n \"PassiveStatusCode\": 1,\n \"PassiveStatus\": 1\n }\n ],\n \"Total\": 1,\n \"RequestId\": \"abc\"\n }\n}",
302
+ "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeBGPIPL7Rules\n<公共请求参数>\n\n{\n \"StatusList\": [\n 1\n ],\n \"Domain\": \"www.abc.com\",\n \"Business\": \"bgp\",\n \"Ip\": \"1.1.1.1\",\n \"Limit\": 1,\n \"Offset\": 1,\n \"ProtocolList\": [\n \"http\"\n ],\n \"Cname\": \"www.ab.com\",\n \"Export\": true\n}",
303
+ "output": "{\n \"Response\": {\n \"Rules\": [\n {\n \"Region\": 1,\n \"Id\": \"id\",\n \"Ip\": \"1.1.1.1\",\n \"RuleId\": \"id\",\n \"RuleName\": \"name\",\n \"Protocol\": \"http\",\n \"Domain\": \"www.abc.com\",\n \"LbType\": 1,\n \"KeepEnable\": 1,\n \"KeepTime\": 1,\n \"SourceType\": 1,\n \"CertType\": 1,\n \"SSLId\": \"id\",\n \"Cert\": \"cert\",\n \"PrivateKey\": \"key\",\n \"SourceList\": [\n {\n \"Source\": \"1.1.1.1\",\n \"Weight\": 1,\n \"Port\": 1,\n \"Backup\": 1\n }\n ],\n \"Status\": 1,\n \"CCStatus\": 1,\n \"CCEnable\": 1,\n \"CCThreshold\": 1,\n \"CCLevel\": \"1\",\n \"ModifyTime\": \"2020-09-22 00:00:00\",\n \"HttpsToHttpEnable\": 1,\n \"VirtualPort\": 1,\n \"RewriteHttps\": 1,\n \"ErrCode\": 1,\n \"Version\": 1\n }\n ],\n \"Healths\": [\n {\n \"Status\": 1,\n \"Enable\": 1,\n \"RuleId\": \"id\",\n \"Url\": \"url\",\n \"Interval\": 1,\n \"AliveNum\": 1,\n \"KickNum\": 1,\n \"Method\": \"post\",\n \"StatusCode\": 1,\n \"ProtocolFlag\": 1,\n \"PassiveEnable\": 1,\n \"BlockInter\": 1,\n \"FailedCountInter\": 1,\n \"FailedThreshold\": 1,\n \"PassiveStatusCode\": 1,\n \"PassiveStatus\": 1\n }\n ],\n \"Total\": 1,\n \"RequestId\": \"08afbb87-5a2c-4562-acbd-eef06a47c7db\"\n }\n}",
304
304
  "title": "请求示例"
305
305
  }
306
306
  ],
@@ -465,7 +465,7 @@
465
465
  "DescribeL7RulesBySSLCertId": [
466
466
  {
467
467
  "document": "",
468
- "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeL7RulesBySSLCertId\n<公共请求参数>\n\n{\n \"Status\": \"bindable\",\n \"CertIds\": [\n \"id-xxxx\"\n ]\n}",
468
+ "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeL7RulesBySSLCertId\n<公共请求参数>\n\n{\n \"Status\": \"bindable\",\n \"CertIds\": [\n \"cMgC0TpV\"\n ]\n}",
469
469
  "output": "{\n \"Response\": {\n \"CertSet\": [\n {\n \"CertId\": \"kneSCNrZ\",\n \"L7Rules\": [\n {\n \"InsId\": \"bgpip-000001eo\",\n \"AppId\": \"251008915\",\n \"Protocol\": \"https\",\n \"Domain\": \"www.xxx.com\",\n \"VirtualPort\": \"443\",\n \"SSLId\": \"\",\n \"Status\": 8\n }\n ]\n }\n ],\n \"RequestId\": \"d87b0215-5dc6-4b99-ad82-704f0ef1bfb7\"\n }\n}",
470
470
  "title": "查询可绑定证书的域名规则"
471
471
  }
@@ -473,16 +473,16 @@
473
473
  "DescribeListBGPIPInstances": [
474
474
  {
475
475
  "document": "",
476
- "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeListBGPIPInstances\n<公共请求参数>\n\n{\n \"Limit\": \"1\",\n \"Offset\": \"0\"\n}",
477
- "output": "{\n \"Response\": {\n \"RequestId\": \"0381c271-292d-4e2a-adcc-cd7bcd6977a7\",\n \"InstanceList\": [\n {\n \"InstanceDetail\": {\n \"EipList\": [\n \"2402:4e00:31:804::17\"\n ],\n \"InstanceId\": \"bgpip-00000001\"\n },\n \"SpecificationLimit\": {\n \"ProtectBandwidth\": 30000,\n \"ProtectCCQPS\": 40000,\n \"ElasticBandwidth\": 50000,\n \"NormalBandwidth\": 1000,\n \"ForwardRulesLimit\": 60,\n \"AutoRenewFlag\": 0,\n \"Line\": 1\n },\n \"Usage\": {\n \"PortRulesUsage\": 0,\n \"DomainRulesUsage\": 0,\n \"Last7DayAttackCount\": 0\n },\n \"Region\": {\n \"Region\": \"ap-shanghai\"\n },\n \"PackInfo\": null,\n \"StaticPackRelation\": null,\n \"EipAddressPackRelation\": null,\n \"AnycastOutPackRelation\": null,\n \"Tgw\": 2,\n \"ZoneId\": 0,\n \"Name\": \"\",\n \"V6Flag\": 1,\n \"Domain\": \"\",\n \"Status\": \"idle\",\n \"ExpiredTime\": \"2023-01-08 21:22:24\",\n \"CreatedTime\": \"2022-12-08 21:22:24\",\n \"EipAddressStatus\": \"\",\n \"EipFlag\": 0,\n \"EipAddressInfo\": null,\n \"ConvoyId\": \"\",\n \"DamDDoSStatus\": 0,\n \"BGPIPChannelFlag\": 0,\n \"TagInfoList\": [],\n \"InstanceVersion\": 3\n }\n ],\n \"Total\": 12\n }\n}",
476
+ "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeListBGPIPInstances\n<公共请求参数>\n\n{\n \"Limit\": 1,\n \"Offset\": 0\n}",
477
+ "output": "{\n \"Response\": {\n \"RequestId\": \"0381c271-292d-4e2a-adcc-cd7bcd6977a7\",\n \"InstanceList\": [\n {\n \"InstanceDetail\": {\n \"EipList\": [\n \"2402:4e00:31:804::17\"\n ],\n \"InstanceId\": \"bgpip-00000001\"\n },\n \"SpecificationLimit\": {\n \"ProtectBandwidth\": 30000,\n \"ProtectCCQPS\": 40000,\n \"ElasticBandwidth\": 50000,\n \"NormalBandwidth\": 1000,\n \"ForwardRulesLimit\": 60,\n \"AutoRenewFlag\": 0,\n \"Line\": 1\n },\n \"Usage\": {\n \"PortRulesUsage\": 0,\n \"DomainRulesUsage\": 0,\n \"Last7DayAttackCount\": 0\n },\n \"Region\": {\n \"Region\": \"ap-shanghai\"\n },\n \"PackInfo\": null,\n \"StaticPackRelation\": null,\n \"EipAddressPackRelation\": null,\n \"AnycastOutPackRelation\": null,\n \"Tgw\": 2,\n \"ZoneId\": 0,\n \"Name\": \"\",\n \"EOFlag\": 0,\n \"ElasticBandwidth\": 2000,\n \"V6Flag\": 1,\n \"Domain\": \"\",\n \"Status\": \"idle\",\n \"ExpiredTime\": \"2023-01-08 21:22:24\",\n \"CreatedTime\": \"2022-12-08 21:22:24\",\n \"EipAddressStatus\": \"\",\n \"EipFlag\": 0,\n \"EipAddressInfo\": null,\n \"ConvoyId\": \"\",\n \"DamDDoSStatus\": 0,\n \"BGPIPChannelFlag\": 0,\n \"TagInfoList\": [],\n \"InstanceVersion\": 3\n }\n ],\n \"Total\": 12\n }\n}",
478
478
  "title": "获取高防IP资产实例列表"
479
479
  }
480
480
  ],
481
481
  "DescribeListBGPInstances": [
482
482
  {
483
483
  "document": "获取高防包资产实例列表",
484
- "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeListBGPInstances\n<公共请求参数>\n\n{\n \"Limit\": \"1\",\n \"Offset\": \"0\",\n \"FilterInstanceId\": \"bgp-00000001\",\n \"FilterIp\": \"1.1.1.1\"\n}",
485
- "output": "{\n \"Response\": {\n \"Total\": 1,\n \"InstanceList\": [\n {\n \"InstanceDetail\": {\n \"EipList\": [\n \"abc\"\n ],\n \"InstanceId\": \"abc\"\n },\n \"SpecificationLimit\": {\n \"ProtectBandwidth\": 1,\n \"ProtectCountLimit\": 1,\n \"ProtectIPNumberLimit\": 1,\n \"AutoRenewFlag\": 1,\n \"UnionPackFlag\": 1,\n \"ServiceBandWidth\": 1,\n \"BattleEditionFlag\": 1,\n \"ChannelEditionFlag\": 1,\n \"EnterpriseFlag\": 1,\n \"ElasticLimit\": 1,\n \"DownGradeProtect\": 1\n },\n \"Usage\": {\n \"ProtectCountUsage\": 1,\n \"ProtectIPNumberUsage\": 1,\n \"Last7DayAttackCount\": 1\n },\n \"Region\": {\n \"Region\": \"abc\"\n },\n \"Status\": \"abc\",\n \"CreatedTime\": \"2020-09-22 00:00:00\",\n \"ExpiredTime\": \"2020-09-22 00:00:00\",\n \"Name\": \"abc\",\n \"PackInfo\": {\n \"PackType\": \"abc\",\n \"PackId\": \"abc\"\n },\n \"EipProductInfos\": [\n {\n \"Ip\": \"abc\",\n \"BizType\": \"abc\",\n \"DeviceType\": \"abc\",\n \"InstanceId\": \"abc\",\n \"Domain\": \"abc\"\n }\n ],\n \"BoundStatus\": \"abc\",\n \"DDoSLevel\": \"abc\",\n \"CCEnable\": 0,\n \"TagInfoList\": [\n {\n \"TagKey\": \"abc\",\n \"TagValue\": \"abc\"\n }\n ],\n \"IpCountNewFlag\": 1,\n \"VitalityVersion\": 1,\n \"Line\": 1,\n \"FreeServiceBandwidth\": 1,\n \"ElasticServiceBandwidth\": 1,\n \"GiftServiceBandWidth\": 0,\n \"ModifyTime\": \"abc\",\n \"BasicPlusFlag\": 1\n }\n ],\n \"RequestId\": \"abc\"\n }\n}",
484
+ "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeListBGPInstances\n<公共请求参数>\n\n{\n \"Limit\": 1,\n \"Offset\": 0,\n \"FilterInstanceId\": \"bgp-00000001\",\n \"FilterIp\": \"1.1.1.1\"\n}",
485
+ "output": "{\n \"Response\": {\n \"Total\": 1,\n \"InstanceList\": [\n {\n \"InstanceDetail\": {\n \"EipList\": [\n \"1.1.1.1\"\n ],\n \"InstanceId\": \"id-xxx\"\n },\n \"SpecificationLimit\": {\n \"ProtectBandwidth\": 1,\n \"ProtectCountLimit\": 1,\n \"ProtectIPNumberLimit\": 1,\n \"AutoRenewFlag\": 1,\n \"UnionPackFlag\": 1,\n \"ServiceBandWidth\": 1,\n \"BattleEditionFlag\": 1,\n \"ChannelEditionFlag\": 1,\n \"EnterpriseFlag\": 1,\n \"ElasticLimit\": 1,\n \"DownGradeProtect\": 1\n },\n \"Usage\": {\n \"ProtectCountUsage\": 1,\n \"ProtectIPNumberUsage\": 1,\n \"Last7DayAttackCount\": 1\n },\n \"Region\": {\n \"Region\": \"guangzhou\"\n },\n \"Status\": \"1\",\n \"CreatedTime\": \"2020-09-22 00:00:00\",\n \"ExpiredTime\": \"2020-09-22 00:00:00\",\n \"Name\": \"name\",\n \"PackInfo\": {\n \"PackType\": \"type\",\n \"PackId\": \"id\"\n },\n \"EipProductInfos\": [\n {\n \"Ip\": \"1.1.1.1\",\n \"BizType\": \"eip\",\n \"DeviceType\": \"eip\",\n \"InstanceId\": \"ins-xx\",\n \"Domain\": \"www.abc.com\"\n }\n ],\n \"BoundStatus\": \"creat\",\n \"DDoSLevel\": \"1\",\n \"CCEnable\": 0,\n \"TagInfoList\": [\n {\n \"TagKey\": \"key\",\n \"TagValue\": \"value\"\n }\n ],\n \"IpCountNewFlag\": 1,\n \"VitalityVersion\": 1,\n \"Line\": 1,\n \"FreeServiceBandwidth\": 1,\n \"ElasticServiceBandwidth\": 1,\n \"GiftServiceBandWidth\": 0,\n \"ModifyTime\": \"2024.12.1\",\n \"BasicPlusFlag\": 1\n }\n ],\n \"RequestId\": \"08afbb87-5a2c-4562-acbd-eef06a47c7db\"\n }\n}",
486
486
  "title": "获取高防包资产实例列表"
487
487
  }
488
488
  ],
@@ -585,8 +585,8 @@
585
585
  "DescribeNewL7Rules": [
586
586
  {
587
587
  "document": "获取高防ip所有规则",
588
- "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeNewL7Rules\n<公共请求参数>\n\n{\n \"StatusList\": [\n 1\n ],\n \"Domain\": \"abc\",\n \"Business\": \"abc\",\n \"Ip\": \"abc\",\n \"Limit\": 1,\n \"Offset\": 1,\n \"ProtocolList\": [\n \"abc\"\n ],\n \"Cname\": \"abc\"\n}",
589
- "output": "{\n \"Response\": {\n \"Rules\": [\n {\n \"Region\": 1,\n \"Id\": \"abc\",\n \"Ip\": \"abc\",\n \"RuleId\": \"abc\",\n \"RuleName\": \"abc\",\n \"Protocol\": \"abc\",\n \"Domain\": \"abc\",\n \"LbType\": 1,\n \"KeepEnable\": 1,\n \"KeepTime\": 1,\n \"SourceType\": 1,\n \"CertType\": 1,\n \"SSLId\": \"abc\",\n \"Cert\": \"abc\",\n \"PrivateKey\": \"abc\",\n \"SourceList\": [\n {\n \"Source\": \"abc\",\n \"Weight\": 1,\n \"Port\": 1,\n \"Backup\": 1\n }\n ],\n \"Status\": 1,\n \"CCStatus\": 1,\n \"CCEnable\": 1,\n \"CCThreshold\": 1,\n \"CCLevel\": \"abc\",\n \"ModifyTime\": \"2020-09-22 00:00:00\",\n \"HttpsToHttpEnable\": 1,\n \"VirtualPort\": 1,\n \"RewriteHttps\": 1,\n \"ErrCode\": 1,\n \"Version\": 1\n }\n ],\n \"Healths\": [\n {\n \"Status\": 1,\n \"Enable\": 1,\n \"RuleId\": \"abc\",\n \"Url\": \"abc\",\n \"Interval\": 1,\n \"AliveNum\": 1,\n \"KickNum\": 1,\n \"Method\": \"abc\",\n \"StatusCode\": 1,\n \"ProtocolFlag\": 1,\n \"PassiveEnable\": 1,\n \"BlockInter\": 1,\n \"FailedCountInter\": 1,\n \"FailedThreshold\": 1,\n \"PassiveStatusCode\": 1,\n \"PassiveStatus\": 1\n }\n ],\n \"Total\": 1,\n \"RequestId\": \"abc\"\n }\n}",
588
+ "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeNewL7Rules\n<公共请求参数>\n\n{\n \"StatusList\": [\n 1\n ],\n \"Domain\": \"www.abc.com\",\n \"Business\": \"bgp\",\n \"Ip\": \"1.1.1.1\",\n \"Limit\": 1,\n \"Offset\": 1,\n \"ProtocolList\": [\n \"1.1.1.1\"\n ],\n \"Cname\": \"www.abc.com\"\n}",
589
+ "output": "{\n \"Response\": {\n \"Rules\": [\n {\n \"Region\": 1,\n \"Id\": \"bgp-121\",\n \"Ip\": \"1.1.1.1\",\n \"RuleId\": \"idxxx\",\n \"RuleName\": \"namexxx\",\n \"Protocol\": \"http\",\n \"Domain\": \"www.abc.com\",\n \"LbType\": 1,\n \"KeepEnable\": 1,\n \"KeepTime\": 1,\n \"SourceType\": 1,\n \"CertType\": 1,\n \"SSLId\": \"idxxx\",\n \"Cert\": \"cert\",\n \"PrivateKey\": \"key\",\n \"SourceList\": [\n {\n \"Source\": \"1.1.1.1\",\n \"Weight\": 1,\n \"Port\": 1,\n \"Backup\": 1\n }\n ],\n \"Status\": 1,\n \"CCStatus\": 1,\n \"CCEnable\": 1,\n \"CCThreshold\": 1,\n \"CCLevel\": \"2\",\n \"ModifyTime\": \"2020-09-22 00:00:00\",\n \"HttpsToHttpEnable\": 1,\n \"VirtualPort\": 1,\n \"RewriteHttps\": 1,\n \"ErrCode\": 1,\n \"Version\": 1\n }\n ],\n \"Healths\": [\n {\n \"Status\": 1,\n \"Enable\": 1,\n \"RuleId\": \"ruleid\",\n \"Url\": \"url\",\n \"Interval\": 1,\n \"AliveNum\": 1,\n \"KickNum\": 1,\n \"Method\": \"get\",\n \"StatusCode\": 1,\n \"ProtocolFlag\": 1,\n \"PassiveEnable\": 1,\n \"BlockInter\": 1,\n \"FailedCountInter\": 1,\n \"FailedThreshold\": 1,\n \"PassiveStatusCode\": 1,\n \"PassiveStatus\": 1\n }\n ],\n \"Total\": 1,\n \"RequestId\": \"08afbb87-5a2c-4562-acbd-eef06a47c7db\"\n }\n}",
590
590
  "title": "获取高防ip所有规则"
591
591
  }
592
592
  ],
@@ -769,7 +769,7 @@
769
769
  "SwitchWaterPrintConfig": [
770
770
  {
771
771
  "document": "",
772
- "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: SwitchWaterPrintConfig\n<公共请求参数>\n\n{\n \"InstanceId\": \"bgpip-0000011x\",\n \"OpenStatus\": \"1\"\n}",
772
+ "input": "POST / HTTP/1.1\nHost: antiddos.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: SwitchWaterPrintConfig\n<公共请求参数>\n\n{\n \"InstanceId\": \"bgpip-0000011x\",\n \"OpenStatus\": 1\n}",
773
773
  "output": "{\n \"Response\": {\n \"RequestId\": \"512b8c34-3df9-448a-ae90-c28643d351bf\"\n }\n}",
774
774
  "title": "开启或关闭DDoS防护的水印防护配置"
775
775
  }
@@ -528,7 +528,7 @@
528
528
  },
529
529
  {
530
530
  "disabled": false,
531
- "document": "业务系统状态",
531
+ "document": "业务系统状态。{\n1: 初始化中; 2: 运行中; 4: 限流}",
532
532
  "example": "1",
533
533
  "member": "int64",
534
534
  "name": "Status",
@@ -842,7 +842,7 @@
842
842
  "example": "0",
843
843
  "member": "int64",
844
844
  "name": "IsInstrumentationVulnerabilityScan",
845
- "output_required": false,
845
+ "output_required": true,
846
846
  "type": "int",
847
847
  "value_allowed_null": false
848
848
  },
@@ -852,7 +852,17 @@
852
852
  "example": "0",
853
853
  "member": "int64",
854
854
  "name": "IsSqlInjectionAnalysis",
855
- "output_required": false,
855
+ "output_required": true,
856
+ "type": "int",
857
+ "value_allowed_null": false
858
+ },
859
+ {
860
+ "disabled": false,
861
+ "document": "限流原因。{\n1: 正式版限额;\n2: 试用版限额;\n4: 试用版到期;\n8: 账号欠费\n}",
862
+ "example": "1",
863
+ "member": "int64",
864
+ "name": "StopReason",
865
+ "output_required": true,
856
866
  "type": "int",
857
867
  "value_allowed_null": false
858
868
  }
@@ -4274,40 +4274,40 @@
4274
4274
  {
4275
4275
  "disabled": false,
4276
4276
  "document": "用户组 ID。",
4277
- "example": "",
4277
+ "example": "10000121",
4278
4278
  "member": "uint64",
4279
4279
  "name": "GroupId",
4280
- "required": true,
4280
+ "output_required": true,
4281
4281
  "type": "int",
4282
4282
  "value_allowed_null": false
4283
4283
  },
4284
4284
  {
4285
4285
  "disabled": false,
4286
4286
  "document": "用户组名称。",
4287
- "example": "",
4287
+ "example": "运营部门",
4288
4288
  "member": "string",
4289
4289
  "name": "GroupName",
4290
- "required": true,
4290
+ "output_required": true,
4291
4291
  "type": "string",
4292
4292
  "value_allowed_null": false
4293
4293
  },
4294
4294
  {
4295
4295
  "disabled": false,
4296
4296
  "document": "用户组创建时间。",
4297
- "example": "",
4297
+ "example": "2024-12-12 12:12:12",
4298
4298
  "member": "string",
4299
4299
  "name": "CreateTime",
4300
- "required": true,
4300
+ "output_required": true,
4301
4301
  "type": "string",
4302
4302
  "value_allowed_null": false
4303
4303
  },
4304
4304
  {
4305
4305
  "disabled": false,
4306
4306
  "document": "用户组描述。",
4307
- "example": "",
4307
+ "example": "运营部门",
4308
4308
  "member": "string",
4309
4309
  "name": "Remark",
4310
- "required": true,
4310
+ "output_required": true,
4311
4311
  "type": "string",
4312
4312
  "value_allowed_null": false
4313
4313
  }
@@ -537,7 +537,7 @@ def doModifyDisksRenewFlag(args, parsed_globals):
537
537
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
538
538
 
539
539
 
540
- def doInquirePriceModifyDiskBackupQuota(args, parsed_globals):
540
+ def doCreateSnapshotGroup(args, parsed_globals):
541
541
  g_param = parse_global_arg(parsed_globals)
542
542
 
543
543
  if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
@@ -566,11 +566,63 @@ def doInquirePriceModifyDiskBackupQuota(args, parsed_globals):
566
566
  client = mod.CbsClient(cred, g_param[OptionsDefine.Region], profile)
567
567
  client._sdkVersion += ("_CLI_" + __version__)
568
568
  models = MODELS_MAP[g_param[OptionsDefine.Version]]
569
- model = models.InquirePriceModifyDiskBackupQuotaRequest()
569
+ model = models.CreateSnapshotGroupRequest()
570
570
  model.from_json_string(json.dumps(args))
571
571
  start_time = time.time()
572
572
  while True:
573
- rsp = client.InquirePriceModifyDiskBackupQuota(model)
573
+ rsp = client.CreateSnapshotGroup(model)
574
+ result = rsp.to_json_string()
575
+ try:
576
+ json_obj = json.loads(result)
577
+ except TypeError as e:
578
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
579
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
580
+ break
581
+ cur_time = time.time()
582
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
583
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
584
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
585
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
586
+ else:
587
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
588
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
589
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
590
+
591
+
592
+ def doDeleteSnapshotGroup(args, parsed_globals):
593
+ g_param = parse_global_arg(parsed_globals)
594
+
595
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
596
+ cred = credential.CVMRoleCredential()
597
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
598
+ cred = credential.STSAssumeRoleCredential(
599
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
600
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
601
+ )
602
+ elif os.getenv(OptionsDefine.ENV_TKE_REGION) and os.getenv(OptionsDefine.ENV_TKE_PROVIDER_ID) and os.getenv(OptionsDefine.ENV_TKE_WEB_IDENTITY_TOKEN_FILE) and os.getenv(OptionsDefine.ENV_TKE_ROLE_ARN):
603
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
604
+ else:
605
+ cred = credential.Credential(
606
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
607
+ )
608
+ http_profile = HttpProfile(
609
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
610
+ reqMethod="POST",
611
+ endpoint=g_param[OptionsDefine.Endpoint],
612
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
613
+ )
614
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
615
+ if g_param[OptionsDefine.Language]:
616
+ profile.language = g_param[OptionsDefine.Language]
617
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
618
+ client = mod.CbsClient(cred, g_param[OptionsDefine.Region], profile)
619
+ client._sdkVersion += ("_CLI_" + __version__)
620
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
621
+ model = models.DeleteSnapshotGroupRequest()
622
+ model.from_json_string(json.dumps(args))
623
+ start_time = time.time()
624
+ while True:
625
+ rsp = client.DeleteSnapshotGroup(model)
574
626
  result = rsp.to_json_string()
575
627
  try:
576
628
  json_obj = json.loads(result)
@@ -797,6 +849,110 @@ def doDescribeDiskBackups(args, parsed_globals):
797
849
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
798
850
 
799
851
 
852
+ def doDescribeDiskConfigQuota(args, parsed_globals):
853
+ g_param = parse_global_arg(parsed_globals)
854
+
855
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
856
+ cred = credential.CVMRoleCredential()
857
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
858
+ cred = credential.STSAssumeRoleCredential(
859
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
860
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
861
+ )
862
+ elif os.getenv(OptionsDefine.ENV_TKE_REGION) and os.getenv(OptionsDefine.ENV_TKE_PROVIDER_ID) and os.getenv(OptionsDefine.ENV_TKE_WEB_IDENTITY_TOKEN_FILE) and os.getenv(OptionsDefine.ENV_TKE_ROLE_ARN):
863
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
864
+ else:
865
+ cred = credential.Credential(
866
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
867
+ )
868
+ http_profile = HttpProfile(
869
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
870
+ reqMethod="POST",
871
+ endpoint=g_param[OptionsDefine.Endpoint],
872
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
873
+ )
874
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
875
+ if g_param[OptionsDefine.Language]:
876
+ profile.language = g_param[OptionsDefine.Language]
877
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
878
+ client = mod.CbsClient(cred, g_param[OptionsDefine.Region], profile)
879
+ client._sdkVersion += ("_CLI_" + __version__)
880
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
881
+ model = models.DescribeDiskConfigQuotaRequest()
882
+ model.from_json_string(json.dumps(args))
883
+ start_time = time.time()
884
+ while True:
885
+ rsp = client.DescribeDiskConfigQuota(model)
886
+ result = rsp.to_json_string()
887
+ try:
888
+ json_obj = json.loads(result)
889
+ except TypeError as e:
890
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
891
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
892
+ break
893
+ cur_time = time.time()
894
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
895
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
896
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
897
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
898
+ else:
899
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
900
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
901
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
902
+
903
+
904
+ def doApplySnapshotGroup(args, parsed_globals):
905
+ g_param = parse_global_arg(parsed_globals)
906
+
907
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
908
+ cred = credential.CVMRoleCredential()
909
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
910
+ cred = credential.STSAssumeRoleCredential(
911
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
912
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
913
+ )
914
+ elif os.getenv(OptionsDefine.ENV_TKE_REGION) and os.getenv(OptionsDefine.ENV_TKE_PROVIDER_ID) and os.getenv(OptionsDefine.ENV_TKE_WEB_IDENTITY_TOKEN_FILE) and os.getenv(OptionsDefine.ENV_TKE_ROLE_ARN):
915
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
916
+ else:
917
+ cred = credential.Credential(
918
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
919
+ )
920
+ http_profile = HttpProfile(
921
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
922
+ reqMethod="POST",
923
+ endpoint=g_param[OptionsDefine.Endpoint],
924
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
925
+ )
926
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
927
+ if g_param[OptionsDefine.Language]:
928
+ profile.language = g_param[OptionsDefine.Language]
929
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
930
+ client = mod.CbsClient(cred, g_param[OptionsDefine.Region], profile)
931
+ client._sdkVersion += ("_CLI_" + __version__)
932
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
933
+ model = models.ApplySnapshotGroupRequest()
934
+ model.from_json_string(json.dumps(args))
935
+ start_time = time.time()
936
+ while True:
937
+ rsp = client.ApplySnapshotGroup(model)
938
+ result = rsp.to_json_string()
939
+ try:
940
+ json_obj = json.loads(result)
941
+ except TypeError as e:
942
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
943
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
944
+ break
945
+ cur_time = time.time()
946
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
947
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
948
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
949
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
950
+ else:
951
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
952
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
953
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
954
+
955
+
800
956
  def doDeleteAutoSnapshotPolicies(args, parsed_globals):
801
957
  g_param = parse_global_arg(parsed_globals)
802
958
 
@@ -1577,7 +1733,7 @@ def doTerminateDisks(args, parsed_globals):
1577
1733
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
1578
1734
 
1579
1735
 
1580
- def doDescribeDiskConfigQuota(args, parsed_globals):
1736
+ def doDescribeSnapshotGroups(args, parsed_globals):
1581
1737
  g_param = parse_global_arg(parsed_globals)
1582
1738
 
1583
1739
  if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
@@ -1606,11 +1762,11 @@ def doDescribeDiskConfigQuota(args, parsed_globals):
1606
1762
  client = mod.CbsClient(cred, g_param[OptionsDefine.Region], profile)
1607
1763
  client._sdkVersion += ("_CLI_" + __version__)
1608
1764
  models = MODELS_MAP[g_param[OptionsDefine.Version]]
1609
- model = models.DescribeDiskConfigQuotaRequest()
1765
+ model = models.DescribeSnapshotGroupsRequest()
1610
1766
  model.from_json_string(json.dumps(args))
1611
1767
  start_time = time.time()
1612
1768
  while True:
1613
- rsp = client.DescribeDiskConfigQuota(model)
1769
+ rsp = client.DescribeSnapshotGroups(model)
1614
1770
  result = rsp.to_json_string()
1615
1771
  try:
1616
1772
  json_obj = json.loads(result)
@@ -1837,6 +1993,58 @@ def doInquirePriceModifyDiskExtraPerformance(args, parsed_globals):
1837
1993
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
1838
1994
 
1839
1995
 
1996
+ def doInquirePriceModifyDiskBackupQuota(args, parsed_globals):
1997
+ g_param = parse_global_arg(parsed_globals)
1998
+
1999
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
2000
+ cred = credential.CVMRoleCredential()
2001
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
2002
+ cred = credential.STSAssumeRoleCredential(
2003
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
2004
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
2005
+ )
2006
+ elif os.getenv(OptionsDefine.ENV_TKE_REGION) and os.getenv(OptionsDefine.ENV_TKE_PROVIDER_ID) and os.getenv(OptionsDefine.ENV_TKE_WEB_IDENTITY_TOKEN_FILE) and os.getenv(OptionsDefine.ENV_TKE_ROLE_ARN):
2007
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
2008
+ else:
2009
+ cred = credential.Credential(
2010
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
2011
+ )
2012
+ http_profile = HttpProfile(
2013
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
2014
+ reqMethod="POST",
2015
+ endpoint=g_param[OptionsDefine.Endpoint],
2016
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
2017
+ )
2018
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
2019
+ if g_param[OptionsDefine.Language]:
2020
+ profile.language = g_param[OptionsDefine.Language]
2021
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
2022
+ client = mod.CbsClient(cred, g_param[OptionsDefine.Region], profile)
2023
+ client._sdkVersion += ("_CLI_" + __version__)
2024
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
2025
+ model = models.InquirePriceModifyDiskBackupQuotaRequest()
2026
+ model.from_json_string(json.dumps(args))
2027
+ start_time = time.time()
2028
+ while True:
2029
+ rsp = client.InquirePriceModifyDiskBackupQuota(model)
2030
+ result = rsp.to_json_string()
2031
+ try:
2032
+ json_obj = json.loads(result)
2033
+ except TypeError as e:
2034
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
2035
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
2036
+ break
2037
+ cur_time = time.time()
2038
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
2039
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
2040
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
2041
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
2042
+ else:
2043
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
2044
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
2045
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
2046
+
2047
+
1840
2048
  def doModifySnapshotsSharePermission(args, parsed_globals):
1841
2049
  g_param = parse_global_arg(parsed_globals)
1842
2050
 
@@ -2222,11 +2430,14 @@ ACTION_MAP = {
2222
2430
  "DescribeAutoSnapshotPolicies": doDescribeAutoSnapshotPolicies,
2223
2431
  "AttachDisks": doAttachDisks,
2224
2432
  "ModifyDisksRenewFlag": doModifyDisksRenewFlag,
2225
- "InquirePriceModifyDiskBackupQuota": doInquirePriceModifyDiskBackupQuota,
2433
+ "CreateSnapshotGroup": doCreateSnapshotGroup,
2434
+ "DeleteSnapshotGroup": doDeleteSnapshotGroup,
2226
2435
  "DeleteDiskBackups": doDeleteDiskBackups,
2227
2436
  "ModifyAutoSnapshotPolicyAttribute": doModifyAutoSnapshotPolicyAttribute,
2228
2437
  "InquiryPriceCreateDisks": doInquiryPriceCreateDisks,
2229
2438
  "DescribeDiskBackups": doDescribeDiskBackups,
2439
+ "DescribeDiskConfigQuota": doDescribeDiskConfigQuota,
2440
+ "ApplySnapshotGroup": doApplySnapshotGroup,
2230
2441
  "DeleteAutoSnapshotPolicies": doDeleteAutoSnapshotPolicies,
2231
2442
  "CreateAutoSnapshotPolicy": doCreateAutoSnapshotPolicy,
2232
2443
  "DescribeDisks": doDescribeDisks,
@@ -2242,11 +2453,12 @@ ACTION_MAP = {
2242
2453
  "InitializeDisks": doInitializeDisks,
2243
2454
  "ModifyDisksChargeType": doModifyDisksChargeType,
2244
2455
  "TerminateDisks": doTerminateDisks,
2245
- "DescribeDiskConfigQuota": doDescribeDiskConfigQuota,
2456
+ "DescribeSnapshotGroups": doDescribeSnapshotGroups,
2246
2457
  "UnbindAutoSnapshotPolicy": doUnbindAutoSnapshotPolicy,
2247
2458
  "CreateDiskBackup": doCreateDiskBackup,
2248
2459
  "DescribeDiskStoragePool": doDescribeDiskStoragePool,
2249
2460
  "InquirePriceModifyDiskExtraPerformance": doInquirePriceModifyDiskExtraPerformance,
2461
+ "InquirePriceModifyDiskBackupQuota": doInquirePriceModifyDiskBackupQuota,
2250
2462
  "ModifySnapshotsSharePermission": doModifySnapshotsSharePermission,
2251
2463
  "DescribeSnapshotOverview": doDescribeSnapshotOverview,
2252
2464
  "CreateSnapshot": doCreateSnapshot,