tccli 3.0.1197.1__py2.py3-none-any.whl → 3.0.1199.1__py2.py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. tccli/__init__.py +1 -1
  2. tccli/services/apigateway/apigateway_client.py +57 -4
  3. tccli/services/apigateway/v20180808/api.json +24 -0
  4. tccli/services/apigateway/v20180808/examples.json +8 -0
  5. tccli/services/ccc/ccc_client.py +57 -4
  6. tccli/services/ccc/v20200210/api.json +188 -0
  7. tccli/services/ccc/v20200210/examples.json +8 -0
  8. tccli/services/clb/v20180317/api.json +19 -1
  9. tccli/services/cme/v20191029/api.json +18 -8
  10. tccli/services/cvm/v20170312/api.json +24 -24
  11. tccli/services/cynosdb/cynosdb_client.py +0 -53
  12. tccli/services/cynosdb/v20190107/api.json +0 -92
  13. tccli/services/cynosdb/v20190107/examples.json +0 -8
  14. tccli/services/emr/emr_client.py +114 -8
  15. tccli/services/emr/v20190103/api.json +300 -7
  16. tccli/services/emr/v20190103/examples.json +16 -0
  17. tccli/services/ess/v20201111/api.json +19 -1
  18. tccli/services/ess/v20201111/examples.json +1 -1
  19. tccli/services/essbasic/v20210526/api.json +18 -0
  20. tccli/services/essbasic/v20210526/examples.json +1 -1
  21. tccli/services/faceid/v20180301/api.json +18 -0
  22. tccli/services/iecp/iecp_client.py +298 -1358
  23. tccli/services/iecp/v20210914/api.json +216 -2256
  24. tccli/services/iecp/v20210914/examples.json +0 -166
  25. tccli/services/ims/v20201229/api.json +9 -9
  26. tccli/services/ims/v20201229/examples.json +2 -2
  27. tccli/services/monitor/monitor_client.py +8 -114
  28. tccli/services/monitor/v20180724/api.json +0 -85
  29. tccli/services/monitor/v20180724/examples.json +0 -16
  30. tccli/services/ocr/v20181119/api.json +3 -3
  31. tccli/services/postgres/postgres_client.py +159 -0
  32. tccli/services/postgres/v20170312/api.json +427 -9
  33. tccli/services/postgres/v20170312/examples.json +40 -4
  34. tccli/services/rce/v20201103/api.json +17 -8
  35. tccli/services/sms/v20190711/api.json +8 -8
  36. tccli/services/sms/v20210111/api.json +13 -13
  37. tccli/services/tcss/v20201101/api.json +199 -3
  38. tccli/services/tcss/v20201101/examples.json +5 -5
  39. tccli/services/teo/v20220901/api.json +56 -6
  40. tccli/services/tke/v20180525/api.json +9 -9
  41. tccli/services/tke/v20220501/api.json +5 -5
  42. tccli/services/tse/v20201207/api.json +22 -0
  43. tccli/services/tsf/tsf_client.py +4 -57
  44. tccli/services/tsf/v20180326/api.json +0 -34
  45. tccli/services/tsf/v20180326/examples.json +0 -8
  46. tccli/services/vod/v20180717/api.json +3 -3
  47. tccli/services/vpc/v20170312/examples.json +6 -0
  48. tccli/services/wedata/v20210820/api.json +11 -0
  49. {tccli-3.0.1197.1.dist-info → tccli-3.0.1199.1.dist-info}/METADATA +2 -2
  50. {tccli-3.0.1197.1.dist-info → tccli-3.0.1199.1.dist-info}/RECORD +53 -53
  51. {tccli-3.0.1197.1.dist-info → tccli-3.0.1199.1.dist-info}/WHEEL +0 -0
  52. {tccli-3.0.1197.1.dist-info → tccli-3.0.1199.1.dist-info}/entry_points.txt +0 -0
  53. {tccli-3.0.1197.1.dist-info → tccli-3.0.1199.1.dist-info}/license_files/LICENSE +0 -0
@@ -21,13 +21,6 @@
21
21
  "output": "BindingPolicyTagResponse",
22
22
  "status": "online"
23
23
  },
24
- "CheckIsPrometheusNewUser": {
25
- "document": "接口功能是检查是否为prometheus新用户,已有其他功能更加全面的接口替代\n\n判断用户是否为云原生监控新用户,即在任何地域下均未创建过监控实例的用户",
26
- "input": "CheckIsPrometheusNewUserRequest",
27
- "name": "判断用户是否为云原生监控新用户",
28
- "output": "CheckIsPrometheusNewUserResponse",
29
- "status": "deprecated"
30
- },
31
24
  "CleanGrafanaInstance": {
32
25
  "document": "强制销毁 Grafana 实例",
33
26
  "input": "CleanGrafanaInstanceRequest",
@@ -658,13 +651,6 @@
658
651
  "output": "DescribePrometheusInstancesOverviewResponse",
659
652
  "status": "online"
660
653
  },
661
- "DescribePrometheusRecordRuleYaml": {
662
- "document": "DescribePrometheusRecordRules 接口可完全代替该接口。近30天仅有3次调用,且都是报错请求\n\n拉取Prometheus聚合规则yaml列表",
663
- "input": "DescribePrometheusRecordRuleYamlRequest",
664
- "name": "拉取Prometheus聚合规则yaml列表",
665
- "output": "DescribePrometheusRecordRuleYamlResponse",
666
- "status": "deprecated"
667
- },
668
654
  "DescribePrometheusRecordRules": {
669
655
  "document": "获取聚合规则列表,包含关联集群内crd资源创建的record rule",
670
656
  "input": "DescribePrometheusRecordRulesRequest",
@@ -2838,23 +2824,6 @@
2838
2824
  ],
2839
2825
  "usage": "both"
2840
2826
  },
2841
- "CheckIsPrometheusNewUserRequest": {
2842
- "document": "CheckIsPrometheusNewUser请求参数结构体",
2843
- "members": [],
2844
- "type": "object"
2845
- },
2846
- "CheckIsPrometheusNewUserResponse": {
2847
- "document": "CheckIsPrometheusNewUser返回参数结构体",
2848
- "members": [
2849
- {
2850
- "document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
2851
- "member": "string",
2852
- "name": "RequestId",
2853
- "type": "string"
2854
- }
2855
- ],
2856
- "type": "object"
2857
- },
2858
2827
  "CleanGrafanaInstanceRequest": {
2859
2828
  "document": "CleanGrafanaInstance请求参数结构体",
2860
2829
  "members": [
@@ -12237,60 +12206,6 @@
12237
12206
  ],
12238
12207
  "type": "object"
12239
12208
  },
12240
- "DescribePrometheusRecordRuleYamlRequest": {
12241
- "document": "DescribePrometheusRecordRuleYaml请求参数结构体",
12242
- "members": [
12243
- {
12244
- "disabled": false,
12245
- "document": "实例id",
12246
- "example": "xxx",
12247
- "member": "string",
12248
- "name": "InstanceId",
12249
- "required": true,
12250
- "type": "string"
12251
- },
12252
- {
12253
- "disabled": false,
12254
- "document": "分页",
12255
- "example": "1",
12256
- "member": "uint64",
12257
- "name": "Offset",
12258
- "required": false,
12259
- "type": "int"
12260
- },
12261
- {
12262
- "disabled": false,
12263
- "document": "分页",
12264
- "example": "10",
12265
- "member": "uint64",
12266
- "name": "Limit",
12267
- "required": false,
12268
- "type": "int"
12269
- },
12270
- {
12271
- "disabled": false,
12272
- "document": "过滤,当前支持\nName = Name\nValues = 目标名称列表",
12273
- "example": "xxx",
12274
- "member": "Filter",
12275
- "name": "Filters",
12276
- "required": false,
12277
- "type": "list"
12278
- }
12279
- ],
12280
- "type": "object"
12281
- },
12282
- "DescribePrometheusRecordRuleYamlResponse": {
12283
- "document": "DescribePrometheusRecordRuleYaml返回参数结构体",
12284
- "members": [
12285
- {
12286
- "document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
12287
- "member": "string",
12288
- "name": "RequestId",
12289
- "type": "string"
12290
- }
12291
- ],
12292
- "type": "object"
12293
- },
12294
12209
  "DescribePrometheusRecordRulesRequest": {
12295
12210
  "document": "DescribePrometheusRecordRules请求参数结构体",
12296
12211
  "members": [
@@ -24,14 +24,6 @@
24
24
  "title": "策略绑定标签"
25
25
  }
26
26
  ],
27
- "CheckIsPrometheusNewUser": [
28
- {
29
- "document": "判断用户是否为新用户",
30
- "input": "POST / HTTP/1.1\nHost: monitor.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: CheckIsPrometheusNewUser\n<公共请求参数>\n\n{}",
31
- "output": "{\n \"Response\": {\n \"RequestId\": \"xx\"\n }\n}",
32
- "title": "判断用户是否为新用户"
33
- }
34
- ],
35
27
  "CleanGrafanaInstance": [
36
28
  {
37
29
  "document": "强制销毁 Grafana 实例",
@@ -914,14 +906,6 @@
914
906
  "title": "获取实例列表"
915
907
  }
916
908
  ],
917
- "DescribePrometheusRecordRuleYaml": [
918
- {
919
- "document": "拉取聚合规则列表",
920
- "input": "https://monitor.tencentcloudapi.com/?Action=DescribePrometheusRecordRuleYaml\n&InstanceId=prom-xxx\n&<公共请求参数>",
921
- "output": "{\n \"Response\": {\n \"RequestId\": \"eac6b301-a322-493a-8e36-83b295459397\"\n }\n}",
922
- "title": "拉取聚合规则列表"
923
- }
924
- ],
925
909
  "DescribePrometheusRecordRules": [
926
910
  {
927
911
  "document": "拉取聚合规则",
@@ -365,7 +365,7 @@
365
365
  "status": "online"
366
366
  },
367
367
  "RecognizeIndonesiaIDCardOCR": {
368
- "document": "印尼身份证识别\n\n默认接口请求频率限制:20次/秒。",
368
+ "document": "印尼身份证识别\n\n默认接口请求频率限制:5次/秒。",
369
369
  "input": "RecognizeIndonesiaIDCardOCRRequest",
370
370
  "name": "印尼身份证识别",
371
371
  "output": "RecognizeIndonesiaIDCardOCRResponse",
@@ -2536,7 +2536,7 @@
2536
2536
  },
2537
2537
  {
2538
2538
  "disabled": false,
2539
- "document": "可以指定要识别的票证类型,指定后不出现在此列表的票证将不返回类型。不指定时默认返回所有支持类别票证的识别信息。\n\n以下是当前支持的类型:\nIDCardFront: 身份证正面识别\nIDCardBack: 身份证背面识别\nPassport: 护照\nBusinessCard: 名片识别\nBankCard: 银行卡识别\nVehicleLicenseFront: 行驶证主页识别\nVehicleLicenseBack: 行驶证副页识别\nDriverLicenseFront: 驾驶证主页识别\nDriverLicenseBack: 驾驶证副页识别\nPermitFront: 港澳台通行证正面\nResidenceBooklet: 户口本资料页\nMainlandPermitFront: 港澳台来往内地通行证正面\nHmtResidentPermitFront: 港澳台居住证正面\nHmtResidentPermitBack: 港澳台居住证背面\nEstateCert: 不动产证\nBizLicense: 营业执照",
2539
+ "document": "可以指定要识别的票证类型,指定后不出现在此列表的票证将不返回类型。不指定时默认返回所有支持类别票证的识别信息。\n\n以下是当前支持的类型:\nIDCardFront: 身份证正面识别\nIDCardBack: 身份证背面识别\nPassport: 护照\nBusinessCard: 名片识别\nBankCard: 银行卡识别\nVehicleLicenseFront: 行驶证主页识别\nVehicleLicenseBack: 行驶证副页识别\nDriverLicenseFront: 驾驶证主页识别\nDriverLicenseBack: 驾驶证副页识别\nPermitFront: 港澳台通行证正面\nResidenceBooklet: 户口本资料页\nMainlandPermitFront: 港澳台来往内地通行证正面\nHmtResidentPermitFront: 港澳台居住证正面\nHmtResidentPermitBack: 港澳台居住证背面\nEstateCert: 不动产证\nBizLicense: 营业执照\nForeignPermanentResidentFront: 外国人永居证正面识别\nForeignPermanentResidentBack: 外国人永居证背面识别",
2540
2540
  "example": "\"\"",
2541
2541
  "member": "string",
2542
2542
  "name": "DiscernType",
@@ -2555,7 +2555,7 @@
2555
2555
  "example": "\"\"",
2556
2556
  "member": "ClassifyDetectInfo",
2557
2557
  "name": "ClassifyDetectInfos",
2558
- "required": true,
2558
+ "output_required": true,
2559
2559
  "type": "list",
2560
2560
  "value_allowed_null": false
2561
2561
  },
@@ -433,6 +433,58 @@ def doModifyDBInstanceName(args, parsed_globals):
433
433
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
434
434
 
435
435
 
436
+ def doDescribeDedicatedClusters(args, parsed_globals):
437
+ g_param = parse_global_arg(parsed_globals)
438
+
439
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
440
+ cred = credential.CVMRoleCredential()
441
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
442
+ cred = credential.STSAssumeRoleCredential(
443
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
444
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
445
+ )
446
+ 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):
447
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
448
+ else:
449
+ cred = credential.Credential(
450
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
451
+ )
452
+ http_profile = HttpProfile(
453
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
454
+ reqMethod="POST",
455
+ endpoint=g_param[OptionsDefine.Endpoint],
456
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
457
+ )
458
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
459
+ if g_param[OptionsDefine.Language]:
460
+ profile.language = g_param[OptionsDefine.Language]
461
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
462
+ client = mod.PostgresClient(cred, g_param[OptionsDefine.Region], profile)
463
+ client._sdkVersion += ("_CLI_" + __version__)
464
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
465
+ model = models.DescribeDedicatedClustersRequest()
466
+ model.from_json_string(json.dumps(args))
467
+ start_time = time.time()
468
+ while True:
469
+ rsp = client.DescribeDedicatedClusters(model)
470
+ result = rsp.to_json_string()
471
+ try:
472
+ json_obj = json.loads(result)
473
+ except TypeError as e:
474
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
475
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
476
+ break
477
+ cur_time = time.time()
478
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
479
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
480
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
481
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
482
+ else:
483
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
484
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
485
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
486
+
487
+
436
488
  def doDeleteParameterTemplate(args, parsed_globals):
437
489
  g_param = parse_global_arg(parsed_globals)
438
490
 
@@ -1733,6 +1785,58 @@ def doCreateServerlessDBInstance(args, parsed_globals):
1733
1785
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
1734
1786
 
1735
1787
 
1788
+ def doCreateDatabase(args, parsed_globals):
1789
+ g_param = parse_global_arg(parsed_globals)
1790
+
1791
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
1792
+ cred = credential.CVMRoleCredential()
1793
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
1794
+ cred = credential.STSAssumeRoleCredential(
1795
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
1796
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
1797
+ )
1798
+ 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):
1799
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
1800
+ else:
1801
+ cred = credential.Credential(
1802
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
1803
+ )
1804
+ http_profile = HttpProfile(
1805
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
1806
+ reqMethod="POST",
1807
+ endpoint=g_param[OptionsDefine.Endpoint],
1808
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
1809
+ )
1810
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
1811
+ if g_param[OptionsDefine.Language]:
1812
+ profile.language = g_param[OptionsDefine.Language]
1813
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
1814
+ client = mod.PostgresClient(cred, g_param[OptionsDefine.Region], profile)
1815
+ client._sdkVersion += ("_CLI_" + __version__)
1816
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
1817
+ model = models.CreateDatabaseRequest()
1818
+ model.from_json_string(json.dumps(args))
1819
+ start_time = time.time()
1820
+ while True:
1821
+ rsp = client.CreateDatabase(model)
1822
+ result = rsp.to_json_string()
1823
+ try:
1824
+ json_obj = json.loads(result)
1825
+ except TypeError as e:
1826
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
1827
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
1828
+ break
1829
+ cur_time = time.time()
1830
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
1831
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
1832
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
1833
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
1834
+ else:
1835
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
1836
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
1837
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
1838
+
1839
+
1736
1840
  def doCreateAccount(args, parsed_globals):
1737
1841
  g_param = parse_global_arg(parsed_globals)
1738
1842
 
@@ -4333,6 +4437,58 @@ def doOpenDBExtranetAccess(args, parsed_globals):
4333
4437
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
4334
4438
 
4335
4439
 
4440
+ def doModifyDatabaseOwner(args, parsed_globals):
4441
+ g_param = parse_global_arg(parsed_globals)
4442
+
4443
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
4444
+ cred = credential.CVMRoleCredential()
4445
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
4446
+ cred = credential.STSAssumeRoleCredential(
4447
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
4448
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
4449
+ )
4450
+ 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):
4451
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
4452
+ else:
4453
+ cred = credential.Credential(
4454
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
4455
+ )
4456
+ http_profile = HttpProfile(
4457
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
4458
+ reqMethod="POST",
4459
+ endpoint=g_param[OptionsDefine.Endpoint],
4460
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
4461
+ )
4462
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
4463
+ if g_param[OptionsDefine.Language]:
4464
+ profile.language = g_param[OptionsDefine.Language]
4465
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
4466
+ client = mod.PostgresClient(cred, g_param[OptionsDefine.Region], profile)
4467
+ client._sdkVersion += ("_CLI_" + __version__)
4468
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
4469
+ model = models.ModifyDatabaseOwnerRequest()
4470
+ model.from_json_string(json.dumps(args))
4471
+ start_time = time.time()
4472
+ while True:
4473
+ rsp = client.ModifyDatabaseOwner(model)
4474
+ result = rsp.to_json_string()
4475
+ try:
4476
+ json_obj = json.loads(result)
4477
+ except TypeError as e:
4478
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
4479
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
4480
+ break
4481
+ cur_time = time.time()
4482
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
4483
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
4484
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
4485
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
4486
+ else:
4487
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
4488
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
4489
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
4490
+
4491
+
4336
4492
  def doDeleteAccount(args, parsed_globals):
4337
4493
  g_param = parse_global_arg(parsed_globals)
4338
4494
 
@@ -5132,6 +5288,7 @@ ACTION_MAP = {
5132
5288
  "ModifyAccountRemark": doModifyAccountRemark,
5133
5289
  "SetAutoRenewFlag": doSetAutoRenewFlag,
5134
5290
  "ModifyDBInstanceName": doModifyDBInstanceName,
5291
+ "DescribeDedicatedClusters": doDescribeDedicatedClusters,
5135
5292
  "DeleteParameterTemplate": doDeleteParameterTemplate,
5136
5293
  "DescribeDBInstanceParameters": doDescribeDBInstanceParameters,
5137
5294
  "DeleteServerlessDBInstance": doDeleteServerlessDBInstance,
@@ -5157,6 +5314,7 @@ ACTION_MAP = {
5157
5314
  "CloseServerlessDBExtranetAccess": doCloseServerlessDBExtranetAccess,
5158
5315
  "ModifyDBInstanceDeployment": doModifyDBInstanceDeployment,
5159
5316
  "CreateServerlessDBInstance": doCreateServerlessDBInstance,
5317
+ "CreateDatabase": doCreateDatabase,
5160
5318
  "CreateAccount": doCreateAccount,
5161
5319
  "ModifyDBInstanceParameters": doModifyDBInstanceParameters,
5162
5320
  "DescribeBaseBackups": doDescribeBaseBackups,
@@ -5207,6 +5365,7 @@ ACTION_MAP = {
5207
5365
  "DescribeBackupPlans": doDescribeBackupPlans,
5208
5366
  "ModifySwitchTimePeriod": doModifySwitchTimePeriod,
5209
5367
  "OpenDBExtranetAccess": doOpenDBExtranetAccess,
5368
+ "ModifyDatabaseOwner": doModifyDatabaseOwner,
5210
5369
  "DeleteAccount": doDeleteAccount,
5211
5370
  "ModifyBackupPlan": doModifyBackupPlan,
5212
5371
  "InitDBInstances": doInitDBInstances,