tccli 3.0.1287.1__py2.py3-none-any.whl → 3.0.1288.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 (38) hide show
  1. tccli/__init__.py +1 -1
  2. tccli/services/billing/v20180709/api.json +254 -254
  3. tccli/services/captcha/v20190722/api.json +79 -77
  4. tccli/services/cdc/v20201214/api.json +16 -16
  5. tccli/services/cfs/v20190719/api.json +1 -1
  6. tccli/services/cvm/cvm_client.py +53 -0
  7. tccli/services/cvm/v20170312/api.json +110 -5
  8. tccli/services/cvm/v20170312/examples.json +8 -0
  9. tccli/services/cwp/v20180228/api.json +63 -15
  10. tccli/services/domain/v20180808/api.json +49 -29
  11. tccli/services/ess/v20201111/api.json +25 -1
  12. tccli/services/essbasic/v20210526/api.json +27 -3
  13. tccli/services/hunyuan/v20230901/api.json +45 -12
  14. tccli/services/lke/v20231130/api.json +4 -4
  15. tccli/services/lke/v20231130/examples.json +1 -1
  16. tccli/services/mariadb/v20170312/api.json +30 -30
  17. tccli/services/mongodb/v20190725/api.json +3 -3
  18. tccli/services/redis/v20180412/api.json +4 -4
  19. tccli/services/ses/v20201002/api.json +1 -1
  20. tccli/services/tat/v20201028/api.json +7 -7
  21. tccli/services/tcb/v20180608/api.json +232 -231
  22. tccli/services/tcb/v20180608/examples.json +1 -7
  23. tccli/services/tdmq/v20200217/api.json +231 -221
  24. tccli/services/teo/v20220901/api.json +129 -7
  25. tccli/services/trocket/trocket_client.py +53 -0
  26. tccli/services/trocket/v20230308/api.json +61 -0
  27. tccli/services/trocket/v20230308/examples.json +8 -0
  28. tccli/services/trro/trro_client.py +53 -0
  29. tccli/services/trro/v20220325/api.json +70 -0
  30. tccli/services/trro/v20220325/examples.json +8 -0
  31. tccli/services/waf/v20180125/api.json +225 -0
  32. tccli/services/waf/v20180125/examples.json +24 -0
  33. tccli/services/waf/waf_client.py +159 -0
  34. {tccli-3.0.1287.1.dist-info → tccli-3.0.1288.1.dist-info}/METADATA +2 -2
  35. {tccli-3.0.1287.1.dist-info → tccli-3.0.1288.1.dist-info}/RECORD +38 -38
  36. {tccli-3.0.1287.1.dist-info → tccli-3.0.1288.1.dist-info}/WHEEL +0 -0
  37. {tccli-3.0.1287.1.dist-info → tccli-3.0.1288.1.dist-info}/entry_points.txt +0 -0
  38. {tccli-3.0.1287.1.dist-info → tccli-3.0.1288.1.dist-info}/license_files/LICENSE +0 -0
@@ -98,6 +98,13 @@
98
98
  "output": "CreateIpAccessControlResponse",
99
99
  "status": "online"
100
100
  },
101
+ "CreatePostCLSFlow": {
102
+ "document": "创建CLS投递流任务",
103
+ "input": "CreatePostCLSFlowRequest",
104
+ "name": "创建CLS投递流任务",
105
+ "output": "CreatePostCLSFlowResponse",
106
+ "status": "online"
107
+ },
101
108
  "DeleteAccessExport": {
102
109
  "document": "本接口用于删除访问日志导出",
103
110
  "input": "DeleteAccessExportRequest",
@@ -511,6 +518,13 @@
511
518
  "output": "DescribePortsResponse",
512
519
  "status": "online"
513
520
  },
521
+ "DescribePostCLSFlows": {
522
+ "document": "获取CLS投递流任务列表",
523
+ "input": "DescribePostCLSFlowsRequest",
524
+ "name": "获取CLS投递流任务列表",
525
+ "output": "DescribePostCLSFlowsResponse",
526
+ "status": "online"
527
+ },
514
528
  "DescribeProtectionModes": {
515
529
  "document": "查询Tiga引擎大类规则及其防护模式",
516
530
  "input": "DescribeProtectionModesRequest",
@@ -644,6 +658,13 @@
644
658
  "output": "DescribeWebshellStatusResponse",
645
659
  "status": "online"
646
660
  },
661
+ "DestroyPostCLSFlow": {
662
+ "document": "销毁CLS投递流任务",
663
+ "input": "DestroyPostCLSFlowRequest",
664
+ "name": "销毁CLS投递流任务",
665
+ "output": "DestroyPostCLSFlowResponse",
666
+ "status": "online"
667
+ },
647
668
  "FreshAntiFakeUrl": {
648
669
  "document": "刷新防篡改url",
649
670
  "input": "FreshAntiFakeUrlRequest",
@@ -5398,6 +5419,51 @@
5398
5419
  ],
5399
5420
  "type": "object"
5400
5421
  },
5422
+ "CreatePostCLSFlowRequest": {
5423
+ "document": "CreatePostCLSFlow请求参数结构体",
5424
+ "members": [
5425
+ {
5426
+ "disabled": false,
5427
+ "document": "投递的CLS所在区域,默认为ap-shanghai",
5428
+ "example": "ap-guangzhou",
5429
+ "member": "string",
5430
+ "name": "CLSRegion",
5431
+ "required": false,
5432
+ "type": "string"
5433
+ },
5434
+ {
5435
+ "disabled": false,
5436
+ "document": "投递的CLS所在日志集合名称,默认为 waf_post_logset",
5437
+ "example": "waf-post-logset",
5438
+ "member": "string",
5439
+ "name": "LogsetName",
5440
+ "required": false,
5441
+ "type": "string"
5442
+ },
5443
+ {
5444
+ "disabled": false,
5445
+ "document": "1-访问日志,2-攻击日志,默认为访问日志。",
5446
+ "example": "1",
5447
+ "member": "int64",
5448
+ "name": "LogType",
5449
+ "required": false,
5450
+ "type": "int"
5451
+ }
5452
+ ],
5453
+ "type": "object"
5454
+ },
5455
+ "CreatePostCLSFlowResponse": {
5456
+ "document": "CreatePostCLSFlow返回参数结构体",
5457
+ "members": [
5458
+ {
5459
+ "document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
5460
+ "member": "string",
5461
+ "name": "RequestId",
5462
+ "type": "string"
5463
+ }
5464
+ ],
5465
+ "type": "object"
5466
+ },
5401
5467
  "CronJob": {
5402
5468
  "document": "规则周期执行的数据结构",
5403
5469
  "members": [
@@ -10346,6 +10412,43 @@
10346
10412
  ],
10347
10413
  "type": "object"
10348
10414
  },
10415
+ "DescribePostCLSFlowsRequest": {
10416
+ "document": "DescribePostCLSFlows请求参数结构体",
10417
+ "members": [
10418
+ {
10419
+ "disabled": false,
10420
+ "document": "1-访问日志,2-攻击日志,默认为访问日志。",
10421
+ "example": "1",
10422
+ "member": "int64",
10423
+ "name": "LogType",
10424
+ "required": false,
10425
+ "type": "int"
10426
+ }
10427
+ ],
10428
+ "type": "object"
10429
+ },
10430
+ "DescribePostCLSFlowsResponse": {
10431
+ "document": "DescribePostCLSFlows返回参数结构体",
10432
+ "members": [
10433
+ {
10434
+ "disabled": false,
10435
+ "document": "客户的投递流列表",
10436
+ "example": "[{ \"FlowId\": 91}]",
10437
+ "member": "PostCLSFlowInfo",
10438
+ "name": "PostCLSFlows",
10439
+ "output_required": true,
10440
+ "type": "list",
10441
+ "value_allowed_null": false
10442
+ },
10443
+ {
10444
+ "document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
10445
+ "member": "string",
10446
+ "name": "RequestId",
10447
+ "type": "string"
10448
+ }
10449
+ ],
10450
+ "type": "object"
10451
+ },
10349
10452
  "DescribeProtectionModesRequest": {
10350
10453
  "document": "DescribeProtectionModes请求参数结构体",
10351
10454
  "members": [
@@ -11639,6 +11742,42 @@
11639
11742
  ],
11640
11743
  "type": "object"
11641
11744
  },
11745
+ "DestroyPostCLSFlowRequest": {
11746
+ "document": "DestroyPostCLSFlow请求参数结构体",
11747
+ "members": [
11748
+ {
11749
+ "disabled": false,
11750
+ "document": "投递流的流ID",
11751
+ "example": "100001",
11752
+ "member": "int64",
11753
+ "name": "FlowId",
11754
+ "required": true,
11755
+ "type": "int"
11756
+ },
11757
+ {
11758
+ "disabled": false,
11759
+ "document": "1-访问日志,2-攻击日志,默认为访问日志。",
11760
+ "example": "1",
11761
+ "member": "int64",
11762
+ "name": "LogType",
11763
+ "required": false,
11764
+ "type": "int"
11765
+ }
11766
+ ],
11767
+ "type": "object"
11768
+ },
11769
+ "DestroyPostCLSFlowResponse": {
11770
+ "document": "DestroyPostCLSFlow返回参数结构体",
11771
+ "members": [
11772
+ {
11773
+ "document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
11774
+ "member": "string",
11775
+ "name": "RequestId",
11776
+ "type": "string"
11777
+ }
11778
+ ],
11779
+ "type": "object"
11780
+ },
11642
11781
  "DomainInfo": {
11643
11782
  "document": "domain列表",
11644
11783
  "members": [
@@ -19353,6 +19492,92 @@
19353
19492
  ],
19354
19493
  "type": "object"
19355
19494
  },
19495
+ "PostCLSFlowInfo": {
19496
+ "document": "CKafka投递流",
19497
+ "members": [
19498
+ {
19499
+ "disabled": false,
19500
+ "document": "投递流唯一ID",
19501
+ "example": "100001",
19502
+ "member": "int64",
19503
+ "name": "FlowId",
19504
+ "output_required": true,
19505
+ "type": "int",
19506
+ "value_allowed_null": false
19507
+ },
19508
+ {
19509
+ "disabled": false,
19510
+ "document": "1-访问日志 2-攻击日志",
19511
+ "example": "1",
19512
+ "member": "int64",
19513
+ "name": "LogType",
19514
+ "output_required": true,
19515
+ "type": "int",
19516
+ "value_allowed_null": false
19517
+ },
19518
+ {
19519
+ "disabled": false,
19520
+ "document": "状态 0-为关闭 1-为启用",
19521
+ "example": "0",
19522
+ "member": "int64",
19523
+ "name": "Status",
19524
+ "output_required": true,
19525
+ "type": "int",
19526
+ "value_allowed_null": false
19527
+ },
19528
+ {
19529
+ "disabled": false,
19530
+ "document": "CLS所在区域",
19531
+ "example": "ap-guangzhou",
19532
+ "member": "string",
19533
+ "name": "CLSRegion",
19534
+ "output_required": true,
19535
+ "type": "string",
19536
+ "value_allowed_null": false
19537
+ },
19538
+ {
19539
+ "disabled": false,
19540
+ "document": "CLS日志集合名称",
19541
+ "example": "waf-post-logset",
19542
+ "member": "string",
19543
+ "name": "LogsetName",
19544
+ "output_required": true,
19545
+ "type": "string",
19546
+ "value_allowed_null": false
19547
+ },
19548
+ {
19549
+ "disabled": false,
19550
+ "document": "CLS日志集合ID",
19551
+ "example": "59a61f1a-d606-4a17-8eaf-0881cb656887",
19552
+ "member": "string",
19553
+ "name": "LogsetID",
19554
+ "output_required": true,
19555
+ "type": "string",
19556
+ "value_allowed_null": false
19557
+ },
19558
+ {
19559
+ "disabled": false,
19560
+ "document": "CLS日志主题名称",
19561
+ "example": "waf-post-logtopic",
19562
+ "member": "string",
19563
+ "name": "LogTopicName",
19564
+ "output_required": false,
19565
+ "type": "string",
19566
+ "value_allowed_null": false
19567
+ },
19568
+ {
19569
+ "disabled": false,
19570
+ "document": "CLS日志集合ID",
19571
+ "example": "59a61f1a-d606-4a17-8eaf-0881cb656887",
19572
+ "member": "string",
19573
+ "name": "LogTopicID",
19574
+ "output_required": false,
19575
+ "type": "string",
19576
+ "value_allowed_null": false
19577
+ }
19578
+ ],
19579
+ "usage": "out"
19580
+ },
19356
19581
  "ProductInfo": {
19357
19582
  "document": "waf产品",
19358
19583
  "members": [
@@ -118,6 +118,14 @@
118
118
  "title": "新增IP黑白名单"
119
119
  }
120
120
  ],
121
+ "CreatePostCLSFlow": [
122
+ {
123
+ "document": "",
124
+ "input": "POST / HTTP/1.1\nHost: waf.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: CreatePostCLSFlow\n<公共请求参数>\n\n{\n \"LogsetName\": \"waf_post_logset\",\n \"CLSRegion\": \"ap-guangzhou\",\n \"LogType\": \"1\"\n}",
125
+ "output": "{\n \"Response\": {\n \"RequestId\": \"bdc5e296-a3f4-441a-b51e-aed0eeee3a7c\"\n }\n}",
126
+ "title": "创建CLS投递流任务"
127
+ }
128
+ ],
121
129
  "DeleteAccessExport": [
122
130
  {
123
131
  "document": "",
@@ -608,6 +616,14 @@
608
616
  "title": "获取防护端口列表"
609
617
  }
610
618
  ],
619
+ "DescribePostCLSFlows": [
620
+ {
621
+ "document": "获取CLS投递流任务列表",
622
+ "input": "POST / HTTP/1.1\nHost: waf.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribePostCLSFlows\n<公共请求参数>\n\n{}",
623
+ "output": "{\n \"Response\": {\n \"RequestId\": \"a20702ee-7206-4eeb-ba74-d13ecbc29c02\",\n \"PostCLSFlows\": [\n {\n \"FlowId\": 100001,\n \"LogType\": 1,\n \"Status\": 1,\n \"CLSRegion\": \"ap-guangzhou\",\n \"LogsetName\": \"waf-post-logset\",\n \"LogsetID\": \"59a61f1a-d606-4a17-8eaf-0881cb656887\"\n }\n ]\n }\n}",
624
+ "title": "获取CLS投递流任务列表"
625
+ }
626
+ ],
611
627
  "DescribeProtectionModes": [
612
628
  {
613
629
  "document": "查询Tiga引擎大类规则及其防护模式",
@@ -760,6 +776,14 @@
760
776
  "title": "获取域名webshell 状态"
761
777
  }
762
778
  ],
779
+ "DestroyPostCLSFlow": [
780
+ {
781
+ "document": "",
782
+ "input": "POST / HTTP/1.1\nHost: waf.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DestroyPostCLSFlow\n<公共请求参数>\n\n{\n \"FlowId\": 100001\n}",
783
+ "output": "{\n \"Response\": {\n \"RequestId\": \"a20702ee-7206-4eeb-ba74-d13ecbc29c02\"\n }\n}",
784
+ "title": "销毁CLS投递流任务"
785
+ }
786
+ ],
763
787
  "FreshAntiFakeUrl": [
764
788
  {
765
789
  "document": "",
@@ -2357,6 +2357,58 @@ def doUpsertIpAccessControl(args, parsed_globals):
2357
2357
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
2358
2358
 
2359
2359
 
2360
+ def doCreatePostCLSFlow(args, parsed_globals):
2361
+ g_param = parse_global_arg(parsed_globals)
2362
+
2363
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
2364
+ cred = credential.CVMRoleCredential()
2365
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
2366
+ cred = credential.STSAssumeRoleCredential(
2367
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
2368
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
2369
+ )
2370
+ 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):
2371
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
2372
+ else:
2373
+ cred = credential.Credential(
2374
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
2375
+ )
2376
+ http_profile = HttpProfile(
2377
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
2378
+ reqMethod="POST",
2379
+ endpoint=g_param[OptionsDefine.Endpoint],
2380
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
2381
+ )
2382
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
2383
+ if g_param[OptionsDefine.Language]:
2384
+ profile.language = g_param[OptionsDefine.Language]
2385
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
2386
+ client = mod.WafClient(cred, g_param[OptionsDefine.Region], profile)
2387
+ client._sdkVersion += ("_CLI_" + __version__)
2388
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
2389
+ model = models.CreatePostCLSFlowRequest()
2390
+ model.from_json_string(json.dumps(args))
2391
+ start_time = time.time()
2392
+ while True:
2393
+ rsp = client.CreatePostCLSFlow(model)
2394
+ result = rsp.to_json_string()
2395
+ try:
2396
+ json_obj = json.loads(result)
2397
+ except TypeError as e:
2398
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
2399
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
2400
+ break
2401
+ cur_time = time.time()
2402
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
2403
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
2404
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
2405
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
2406
+ else:
2407
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
2408
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
2409
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
2410
+
2411
+
2360
2412
  def doGetAttackHistogram(args, parsed_globals):
2361
2413
  g_param = parse_global_arg(parsed_globals)
2362
2414
 
@@ -4073,6 +4125,58 @@ def doImportIpAccessControl(args, parsed_globals):
4073
4125
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
4074
4126
 
4075
4127
 
4128
+ def doDescribePostCLSFlows(args, parsed_globals):
4129
+ g_param = parse_global_arg(parsed_globals)
4130
+
4131
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
4132
+ cred = credential.CVMRoleCredential()
4133
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
4134
+ cred = credential.STSAssumeRoleCredential(
4135
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
4136
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
4137
+ )
4138
+ 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):
4139
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
4140
+ else:
4141
+ cred = credential.Credential(
4142
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
4143
+ )
4144
+ http_profile = HttpProfile(
4145
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
4146
+ reqMethod="POST",
4147
+ endpoint=g_param[OptionsDefine.Endpoint],
4148
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
4149
+ )
4150
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
4151
+ if g_param[OptionsDefine.Language]:
4152
+ profile.language = g_param[OptionsDefine.Language]
4153
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
4154
+ client = mod.WafClient(cred, g_param[OptionsDefine.Region], profile)
4155
+ client._sdkVersion += ("_CLI_" + __version__)
4156
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
4157
+ model = models.DescribePostCLSFlowsRequest()
4158
+ model.from_json_string(json.dumps(args))
4159
+ start_time = time.time()
4160
+ while True:
4161
+ rsp = client.DescribePostCLSFlows(model)
4162
+ result = rsp.to_json_string()
4163
+ try:
4164
+ json_obj = json.loads(result)
4165
+ except TypeError as e:
4166
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
4167
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
4168
+ break
4169
+ cur_time = time.time()
4170
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
4171
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
4172
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
4173
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
4174
+ else:
4175
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
4176
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
4177
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
4178
+
4179
+
4076
4180
  def doDeleteDomainWhiteRules(args, parsed_globals):
4077
4181
  g_param = parse_global_arg(parsed_globals)
4078
4182
 
@@ -5009,6 +5113,58 @@ def doSwitchDomainRules(args, parsed_globals):
5009
5113
  FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
5010
5114
 
5011
5115
 
5116
+ def doDestroyPostCLSFlow(args, parsed_globals):
5117
+ g_param = parse_global_arg(parsed_globals)
5118
+
5119
+ if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
5120
+ cred = credential.CVMRoleCredential()
5121
+ elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
5122
+ cred = credential.STSAssumeRoleCredential(
5123
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
5124
+ g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
5125
+ )
5126
+ 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):
5127
+ cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
5128
+ else:
5129
+ cred = credential.Credential(
5130
+ g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
5131
+ )
5132
+ http_profile = HttpProfile(
5133
+ reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
5134
+ reqMethod="POST",
5135
+ endpoint=g_param[OptionsDefine.Endpoint],
5136
+ proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
5137
+ )
5138
+ profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
5139
+ if g_param[OptionsDefine.Language]:
5140
+ profile.language = g_param[OptionsDefine.Language]
5141
+ mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
5142
+ client = mod.WafClient(cred, g_param[OptionsDefine.Region], profile)
5143
+ client._sdkVersion += ("_CLI_" + __version__)
5144
+ models = MODELS_MAP[g_param[OptionsDefine.Version]]
5145
+ model = models.DestroyPostCLSFlowRequest()
5146
+ model.from_json_string(json.dumps(args))
5147
+ start_time = time.time()
5148
+ while True:
5149
+ rsp = client.DestroyPostCLSFlow(model)
5150
+ result = rsp.to_json_string()
5151
+ try:
5152
+ json_obj = json.loads(result)
5153
+ except TypeError as e:
5154
+ json_obj = json.loads(result.decode('utf-8')) # python3.3
5155
+ if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
5156
+ break
5157
+ cur_time = time.time()
5158
+ if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
5159
+ raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
5160
+ (g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
5161
+ search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
5162
+ else:
5163
+ print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
5164
+ time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
5165
+ FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
5166
+
5167
+
5012
5168
  def doAddCustomWhiteRule(args, parsed_globals):
5013
5169
  g_param = parse_global_arg(parsed_globals)
5014
5170
 
@@ -7925,6 +8081,7 @@ ACTION_MAP = {
7925
8081
  "DescribeDomainDetailsSaas": doDescribeDomainDetailsSaas,
7926
8082
  "DescribeModuleStatus": doDescribeModuleStatus,
7927
8083
  "UpsertIpAccessControl": doUpsertIpAccessControl,
8084
+ "CreatePostCLSFlow": doCreatePostCLSFlow,
7928
8085
  "GetAttackHistogram": doGetAttackHistogram,
7929
8086
  "ModifyAntiFakeUrlStatus": doModifyAntiFakeUrlStatus,
7930
8087
  "DescribeVipInfo": doDescribeVipInfo,
@@ -7958,6 +8115,7 @@ ACTION_MAP = {
7958
8115
  "ModifyIpAccessControl": doModifyIpAccessControl,
7959
8116
  "DescribeAntiFakeRules": doDescribeAntiFakeRules,
7960
8117
  "ImportIpAccessControl": doImportIpAccessControl,
8118
+ "DescribePostCLSFlows": doDescribePostCLSFlows,
7961
8119
  "DeleteDomainWhiteRules": doDeleteDomainWhiteRules,
7962
8120
  "DescribeAccessHistogram": doDescribeAccessHistogram,
7963
8121
  "DescribeTlsVersion": doDescribeTlsVersion,
@@ -7976,6 +8134,7 @@ ACTION_MAP = {
7976
8134
  "DescribeDomainCountInfo": doDescribeDomainCountInfo,
7977
8135
  "DeleteSpartaProtection": doDeleteSpartaProtection,
7978
8136
  "SwitchDomainRules": doSwitchDomainRules,
8137
+ "DestroyPostCLSFlow": doDestroyPostCLSFlow,
7979
8138
  "AddCustomWhiteRule": doAddCustomWhiteRule,
7980
8139
  "DescribeWafAutoDenyRules": doDescribeWafAutoDenyRules,
7981
8140
  "DeleteSession": doDeleteSession,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tccli
3
- Version: 3.0.1287.1
3
+ Version: 3.0.1288.1
4
4
  Summary: Universal Command Line Environment for Tencent Cloud
5
5
  Project-URL: Bug Tracker, https://github.com/TencentCloud/tencentcloud-cli/issues
6
6
  Project-URL: Homepage, https://github.com/TencentCloud/tencentcloud-cli
@@ -13,7 +13,7 @@ Classifier: Programming Language :: Python :: 2.7
13
13
  Classifier: Programming Language :: Python :: 3
14
14
  Requires-Dist: jmespath==0.10.0
15
15
  Requires-Dist: six==1.16.0
16
- Requires-Dist: tencentcloud-sdk-python>=3.0.1287
16
+ Requires-Dist: tencentcloud-sdk-python>=3.0.1288
17
17
  Description-Content-Type: text/markdown
18
18
 
19
19
  # 命令行工具简介