tccli 3.0.1183.1__py2.py3-none-any.whl → 3.0.1184.1__py2.py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- tccli/__init__.py +1 -1
- tccli/services/cdwdoris/v20211228/api.json +137 -0
- tccli/services/cdwdoris/v20211228/examples.json +1 -1
- tccli/services/ess/v20201111/examples.json +3 -3
- tccli/services/essbasic/v20210526/examples.json +9 -9
- tccli/services/lke/v20231130/api.json +1 -1
- tccli/services/oceanus/v20190422/api.json +9 -0
- tccli/services/oceanus/v20190422/examples.json +1 -1
- tccli/services/ssl/ssl_client.py +65 -12
- tccli/services/ssl/v20191205/api.json +130 -0
- tccli/services/ssl/v20191205/examples.json +8 -0
- tccli/services/thpc/thpc_client.py +53 -0
- tccli/services/thpc/v20230321/api.json +561 -0
- tccli/services/thpc/v20230321/examples.json +8 -0
- tccli/services/trtc/v20190722/api.json +2 -2
- {tccli-3.0.1183.1.dist-info → tccli-3.0.1184.1.dist-info}/METADATA +2 -2
- {tccli-3.0.1183.1.dist-info → tccli-3.0.1184.1.dist-info}/RECORD +20 -20
- {tccli-3.0.1183.1.dist-info → tccli-3.0.1184.1.dist-info}/WHEEL +0 -0
- {tccli-3.0.1183.1.dist-info → tccli-3.0.1184.1.dist-info}/entry_points.txt +0 -0
- {tccli-3.0.1183.1.dist-info → tccli-3.0.1184.1.dist-info}/license_files/LICENSE +0 -0
tccli/services/ssl/ssl_client.py
CHANGED
@@ -173,6 +173,58 @@ def doDescribeHostCdnInstanceList(args, parsed_globals):
|
|
173
173
|
FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
|
174
174
|
|
175
175
|
|
176
|
+
def doCancelAuditCertificate(args, parsed_globals):
|
177
|
+
g_param = parse_global_arg(parsed_globals)
|
178
|
+
|
179
|
+
if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
|
180
|
+
cred = credential.CVMRoleCredential()
|
181
|
+
elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
|
182
|
+
cred = credential.STSAssumeRoleCredential(
|
183
|
+
g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
|
184
|
+
g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
|
185
|
+
)
|
186
|
+
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):
|
187
|
+
cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
|
188
|
+
else:
|
189
|
+
cred = credential.Credential(
|
190
|
+
g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
|
191
|
+
)
|
192
|
+
http_profile = HttpProfile(
|
193
|
+
reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
|
194
|
+
reqMethod="POST",
|
195
|
+
endpoint=g_param[OptionsDefine.Endpoint],
|
196
|
+
proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
|
197
|
+
)
|
198
|
+
profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
|
199
|
+
if g_param[OptionsDefine.Language]:
|
200
|
+
profile.language = g_param[OptionsDefine.Language]
|
201
|
+
mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
|
202
|
+
client = mod.SslClient(cred, g_param[OptionsDefine.Region], profile)
|
203
|
+
client._sdkVersion += ("_CLI_" + __version__)
|
204
|
+
models = MODELS_MAP[g_param[OptionsDefine.Version]]
|
205
|
+
model = models.CancelAuditCertificateRequest()
|
206
|
+
model.from_json_string(json.dumps(args))
|
207
|
+
start_time = time.time()
|
208
|
+
while True:
|
209
|
+
rsp = client.CancelAuditCertificate(model)
|
210
|
+
result = rsp.to_json_string()
|
211
|
+
try:
|
212
|
+
json_obj = json.loads(result)
|
213
|
+
except TypeError as e:
|
214
|
+
json_obj = json.loads(result.decode('utf-8')) # python3.3
|
215
|
+
if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
|
216
|
+
break
|
217
|
+
cur_time = time.time()
|
218
|
+
if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
|
219
|
+
raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
|
220
|
+
(g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
|
221
|
+
search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
|
222
|
+
else:
|
223
|
+
print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
|
224
|
+
time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
|
225
|
+
FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
|
226
|
+
|
227
|
+
|
176
228
|
def doDescribeHostTkeInstanceList(args, parsed_globals):
|
177
229
|
g_param = parse_global_arg(parsed_globals)
|
178
230
|
|
@@ -745,7 +797,7 @@ def doDescribeHostDdosInstanceList(args, parsed_globals):
|
|
745
797
|
FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
|
746
798
|
|
747
799
|
|
748
|
-
def
|
800
|
+
def doCompleteCertificate(args, parsed_globals):
|
749
801
|
g_param = parse_global_arg(parsed_globals)
|
750
802
|
|
751
803
|
if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
|
@@ -774,11 +826,11 @@ def doVerifyManager(args, parsed_globals):
|
|
774
826
|
client = mod.SslClient(cred, g_param[OptionsDefine.Region], profile)
|
775
827
|
client._sdkVersion += ("_CLI_" + __version__)
|
776
828
|
models = MODELS_MAP[g_param[OptionsDefine.Version]]
|
777
|
-
model = models.
|
829
|
+
model = models.CompleteCertificateRequest()
|
778
830
|
model.from_json_string(json.dumps(args))
|
779
831
|
start_time = time.time()
|
780
832
|
while True:
|
781
|
-
rsp = client.
|
833
|
+
rsp = client.CompleteCertificate(model)
|
782
834
|
result = rsp.to_json_string()
|
783
835
|
try:
|
784
836
|
json_obj = json.loads(result)
|
@@ -1057,7 +1109,7 @@ def doDeleteCertificate(args, parsed_globals):
|
|
1057
1109
|
FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
|
1058
1110
|
|
1059
1111
|
|
1060
|
-
def
|
1112
|
+
def doVerifyManager(args, parsed_globals):
|
1061
1113
|
g_param = parse_global_arg(parsed_globals)
|
1062
1114
|
|
1063
1115
|
if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
|
@@ -1086,11 +1138,11 @@ def doCompleteCertificate(args, parsed_globals):
|
|
1086
1138
|
client = mod.SslClient(cred, g_param[OptionsDefine.Region], profile)
|
1087
1139
|
client._sdkVersion += ("_CLI_" + __version__)
|
1088
1140
|
models = MODELS_MAP[g_param[OptionsDefine.Version]]
|
1089
|
-
model = models.
|
1141
|
+
model = models.VerifyManagerRequest()
|
1090
1142
|
model.from_json_string(json.dumps(args))
|
1091
1143
|
start_time = time.time()
|
1092
1144
|
while True:
|
1093
|
-
rsp = client.
|
1145
|
+
rsp = client.VerifyManager(model)
|
1094
1146
|
result = rsp.to_json_string()
|
1095
1147
|
try:
|
1096
1148
|
json_obj = json.loads(result)
|
@@ -1837,7 +1889,7 @@ def doDescribeCertificateBindResourceTaskResult(args, parsed_globals):
|
|
1837
1889
|
FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
|
1838
1890
|
|
1839
1891
|
|
1840
|
-
def
|
1892
|
+
def doCheckCertificateDomainVerification(args, parsed_globals):
|
1841
1893
|
g_param = parse_global_arg(parsed_globals)
|
1842
1894
|
|
1843
1895
|
if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
|
@@ -1866,11 +1918,11 @@ def doCancelAuditCertificate(args, parsed_globals):
|
|
1866
1918
|
client = mod.SslClient(cred, g_param[OptionsDefine.Region], profile)
|
1867
1919
|
client._sdkVersion += ("_CLI_" + __version__)
|
1868
1920
|
models = MODELS_MAP[g_param[OptionsDefine.Version]]
|
1869
|
-
model = models.
|
1921
|
+
model = models.CheckCertificateDomainVerificationRequest()
|
1870
1922
|
model.from_json_string(json.dumps(args))
|
1871
1923
|
start_time = time.time()
|
1872
1924
|
while True:
|
1873
|
-
rsp = client.
|
1925
|
+
rsp = client.CheckCertificateDomainVerification(model)
|
1874
1926
|
result = rsp.to_json_string()
|
1875
1927
|
try:
|
1876
1928
|
json_obj = json.loads(result)
|
@@ -3099,6 +3151,7 @@ ACTION_MAP = {
|
|
3099
3151
|
"DescribeHostCosInstanceList": doDescribeHostCosInstanceList,
|
3100
3152
|
"DescribeCertificates": doDescribeCertificates,
|
3101
3153
|
"DescribeHostCdnInstanceList": doDescribeHostCdnInstanceList,
|
3154
|
+
"CancelAuditCertificate": doCancelAuditCertificate,
|
3102
3155
|
"DescribeHostTkeInstanceList": doDescribeHostTkeInstanceList,
|
3103
3156
|
"UploadRevokeLetter": doUploadRevokeLetter,
|
3104
3157
|
"DeleteManager": doDeleteManager,
|
@@ -3110,13 +3163,13 @@ ACTION_MAP = {
|
|
3110
3163
|
"SubmitCertificateInformation": doSubmitCertificateInformation,
|
3111
3164
|
"DeleteCertificates": doDeleteCertificates,
|
3112
3165
|
"DescribeHostDdosInstanceList": doDescribeHostDdosInstanceList,
|
3113
|
-
"
|
3166
|
+
"CompleteCertificate": doCompleteCertificate,
|
3114
3167
|
"DescribeHostClbInstanceList": doDescribeHostClbInstanceList,
|
3115
3168
|
"DescribeHostTeoInstanceList": doDescribeHostTeoInstanceList,
|
3116
3169
|
"CancelCertificateOrder": doCancelCertificateOrder,
|
3117
3170
|
"DownloadCertificate": doDownloadCertificate,
|
3118
3171
|
"DeleteCertificate": doDeleteCertificate,
|
3119
|
-
"
|
3172
|
+
"VerifyManager": doVerifyManager,
|
3120
3173
|
"UpdateCertificateInstance": doUpdateCertificateInstance,
|
3121
3174
|
"UploadCertificate": doUploadCertificate,
|
3122
3175
|
"CheckCertificateChain": doCheckCertificateChain,
|
@@ -3131,7 +3184,7 @@ ACTION_MAP = {
|
|
3131
3184
|
"DeployCertificateRecordRollback": doDeployCertificateRecordRollback,
|
3132
3185
|
"DeployCertificateRecordRetry": doDeployCertificateRecordRetry,
|
3133
3186
|
"DescribeCertificateBindResourceTaskResult": doDescribeCertificateBindResourceTaskResult,
|
3134
|
-
"
|
3187
|
+
"CheckCertificateDomainVerification": doCheckCertificateDomainVerification,
|
3135
3188
|
"DescribeHostDeployRecord": doDescribeHostDeployRecord,
|
3136
3189
|
"UpdateCertificateRecordRetry": doUpdateCertificateRecordRetry,
|
3137
3190
|
"DescribeDeleteCertificatesTaskResult": doDescribeDeleteCertificatesTaskResult,
|
@@ -28,6 +28,13 @@
|
|
28
28
|
"output": "CheckCertificateChainResponse",
|
29
29
|
"status": "online"
|
30
30
|
},
|
31
|
+
"CheckCertificateDomainVerification": {
|
32
|
+
"document": "检查证书域名验证",
|
33
|
+
"input": "CheckCertificateDomainVerificationRequest",
|
34
|
+
"name": "检查证书域名验证",
|
35
|
+
"output": "CheckCertificateDomainVerificationResponse",
|
36
|
+
"status": "online"
|
37
|
+
},
|
31
38
|
"CommitCertificateInformation": {
|
32
39
|
"document": "提交证书订单。",
|
33
40
|
"input": "CommitCertificateInformationRequest",
|
@@ -1728,6 +1735,43 @@
|
|
1728
1735
|
],
|
1729
1736
|
"type": "object"
|
1730
1737
|
},
|
1738
|
+
"CheckCertificateDomainVerificationRequest": {
|
1739
|
+
"document": "CheckCertificateDomainVerification请求参数结构体",
|
1740
|
+
"members": [
|
1741
|
+
{
|
1742
|
+
"disabled": false,
|
1743
|
+
"document": "证书ID。",
|
1744
|
+
"example": "无",
|
1745
|
+
"member": "string",
|
1746
|
+
"name": "CertificateId",
|
1747
|
+
"required": true,
|
1748
|
+
"type": "string"
|
1749
|
+
}
|
1750
|
+
],
|
1751
|
+
"type": "object"
|
1752
|
+
},
|
1753
|
+
"CheckCertificateDomainVerificationResponse": {
|
1754
|
+
"document": "CheckCertificateDomainVerification返回参数结构体",
|
1755
|
+
"members": [
|
1756
|
+
{
|
1757
|
+
"disabled": false,
|
1758
|
+
"document": "域名验证结果\n注意:此字段可能返回 null,表示取不到有效值。",
|
1759
|
+
"example": "无",
|
1760
|
+
"member": "DomainValidationResult",
|
1761
|
+
"name": "VerificationResults",
|
1762
|
+
"required": true,
|
1763
|
+
"type": "list",
|
1764
|
+
"value_allowed_null": true
|
1765
|
+
},
|
1766
|
+
{
|
1767
|
+
"document": "唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。",
|
1768
|
+
"member": "string",
|
1769
|
+
"name": "RequestId",
|
1770
|
+
"type": "string"
|
1771
|
+
}
|
1772
|
+
],
|
1773
|
+
"type": "object"
|
1774
|
+
},
|
1731
1775
|
"ClbInstanceDetail": {
|
1732
1776
|
"document": "clb实例详情",
|
1733
1777
|
"members": [
|
@@ -6724,6 +6768,92 @@
|
|
6724
6768
|
],
|
6725
6769
|
"type": "object"
|
6726
6770
|
},
|
6771
|
+
"DomainValidationResult": {
|
6772
|
+
"document": "域名验证结果",
|
6773
|
+
"members": [
|
6774
|
+
{
|
6775
|
+
"disabled": false,
|
6776
|
+
"document": "域名。",
|
6777
|
+
"example": "qq.com",
|
6778
|
+
"member": "string",
|
6779
|
+
"name": "Domain",
|
6780
|
+
"required": true,
|
6781
|
+
"type": "string",
|
6782
|
+
"value_allowed_null": false
|
6783
|
+
},
|
6784
|
+
{
|
6785
|
+
"disabled": false,
|
6786
|
+
"document": "验证类型。\n注意:此字段可能返回 null,表示取不到有效值。",
|
6787
|
+
"example": "DNS",
|
6788
|
+
"member": "string",
|
6789
|
+
"name": "VerifyType",
|
6790
|
+
"required": true,
|
6791
|
+
"type": "string",
|
6792
|
+
"value_allowed_null": true
|
6793
|
+
},
|
6794
|
+
{
|
6795
|
+
"disabled": false,
|
6796
|
+
"document": "本地检查结果。",
|
6797
|
+
"example": "1",
|
6798
|
+
"member": "int64",
|
6799
|
+
"name": "LocalCheck",
|
6800
|
+
"required": true,
|
6801
|
+
"type": "int",
|
6802
|
+
"value_allowed_null": false
|
6803
|
+
},
|
6804
|
+
{
|
6805
|
+
"disabled": false,
|
6806
|
+
"document": "CA检查结果。",
|
6807
|
+
"example": "1",
|
6808
|
+
"member": "int64",
|
6809
|
+
"name": "CaCheck",
|
6810
|
+
"required": true,
|
6811
|
+
"type": "int",
|
6812
|
+
"value_allowed_null": false
|
6813
|
+
},
|
6814
|
+
{
|
6815
|
+
"disabled": false,
|
6816
|
+
"document": "检查失败原因。\n注意:此字段可能返回 null,表示取不到有效值。",
|
6817
|
+
"example": "无",
|
6818
|
+
"member": "string",
|
6819
|
+
"name": "LocalCheckFailReason",
|
6820
|
+
"required": true,
|
6821
|
+
"type": "string",
|
6822
|
+
"value_allowed_null": true
|
6823
|
+
},
|
6824
|
+
{
|
6825
|
+
"disabled": false,
|
6826
|
+
"document": "检查到的值。\n注意:此字段可能返回 null,表示取不到有效值。",
|
6827
|
+
"example": "无",
|
6828
|
+
"member": "string",
|
6829
|
+
"name": "CheckValue",
|
6830
|
+
"required": true,
|
6831
|
+
"type": "list",
|
6832
|
+
"value_allowed_null": true
|
6833
|
+
},
|
6834
|
+
{
|
6835
|
+
"disabled": false,
|
6836
|
+
"document": "是否频繁请求。",
|
6837
|
+
"example": "false",
|
6838
|
+
"member": "bool",
|
6839
|
+
"name": "Frequently",
|
6840
|
+
"required": true,
|
6841
|
+
"type": "bool",
|
6842
|
+
"value_allowed_null": false
|
6843
|
+
},
|
6844
|
+
{
|
6845
|
+
"disabled": false,
|
6846
|
+
"document": "是否已经签发。",
|
6847
|
+
"example": "false",
|
6848
|
+
"member": "bool",
|
6849
|
+
"name": "Issued",
|
6850
|
+
"required": true,
|
6851
|
+
"type": "bool",
|
6852
|
+
"value_allowed_null": false
|
6853
|
+
}
|
6854
|
+
],
|
6855
|
+
"usage": "out"
|
6856
|
+
},
|
6727
6857
|
"DownloadCertificateRequest": {
|
6728
6858
|
"document": "DownloadCertificate请求参数结构体",
|
6729
6859
|
"members": [
|
@@ -32,6 +32,14 @@
|
|
32
32
|
"title": "对证书链进行检查"
|
33
33
|
}
|
34
34
|
],
|
35
|
+
"CheckCertificateDomainVerification": [
|
36
|
+
{
|
37
|
+
"document": "",
|
38
|
+
"input": "POST / HTTP/1.1\nHost: ssl.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: CheckCertificateDomainVerification\n<公共请求参数>\n\n{\n \"CertificateId\": \"xx\"\n}",
|
39
|
+
"output": "{\n \"Response\": {\n \"VerificationResults\": [\n {\n \"Domain\": \"xx\",\n \"CheckValue\": [\n \"xx\"\n ],\n \"LocalCheckFailReason\": \"xx\",\n \"LocalCheck\": 0,\n \"CaCheck\": 0,\n \"Frequently\": true,\n \"VerifyType\": \"xx\",\n \"Issued\": true\n }\n ],\n \"RequestId\": \"xx\"\n }\n}",
|
40
|
+
"title": "检查证书域名验证"
|
41
|
+
}
|
42
|
+
],
|
35
43
|
"CommitCertificateInformation": [
|
36
44
|
{
|
37
45
|
"document": "提交证书订单",
|
@@ -489,6 +489,58 @@ def doDescribeNodes(args, parsed_globals):
|
|
489
489
|
FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
|
490
490
|
|
491
491
|
|
492
|
+
def doCreateWorkspaces(args, parsed_globals):
|
493
|
+
g_param = parse_global_arg(parsed_globals)
|
494
|
+
|
495
|
+
if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
|
496
|
+
cred = credential.CVMRoleCredential()
|
497
|
+
elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
|
498
|
+
cred = credential.STSAssumeRoleCredential(
|
499
|
+
g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
|
500
|
+
g_param[OptionsDefine.RoleSessionName.replace('-', '_')], endpoint=g_param["sts_cred_endpoint"]
|
501
|
+
)
|
502
|
+
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):
|
503
|
+
cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
|
504
|
+
else:
|
505
|
+
cred = credential.Credential(
|
506
|
+
g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
|
507
|
+
)
|
508
|
+
http_profile = HttpProfile(
|
509
|
+
reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
|
510
|
+
reqMethod="POST",
|
511
|
+
endpoint=g_param[OptionsDefine.Endpoint],
|
512
|
+
proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
|
513
|
+
)
|
514
|
+
profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
|
515
|
+
if g_param[OptionsDefine.Language]:
|
516
|
+
profile.language = g_param[OptionsDefine.Language]
|
517
|
+
mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
|
518
|
+
client = mod.ThpcClient(cred, g_param[OptionsDefine.Region], profile)
|
519
|
+
client._sdkVersion += ("_CLI_" + __version__)
|
520
|
+
models = MODELS_MAP[g_param[OptionsDefine.Version]]
|
521
|
+
model = models.CreateWorkspacesRequest()
|
522
|
+
model.from_json_string(json.dumps(args))
|
523
|
+
start_time = time.time()
|
524
|
+
while True:
|
525
|
+
rsp = client.CreateWorkspaces(model)
|
526
|
+
result = rsp.to_json_string()
|
527
|
+
try:
|
528
|
+
json_obj = json.loads(result)
|
529
|
+
except TypeError as e:
|
530
|
+
json_obj = json.loads(result.decode('utf-8')) # python3.3
|
531
|
+
if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
|
532
|
+
break
|
533
|
+
cur_time = time.time()
|
534
|
+
if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
|
535
|
+
raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
|
536
|
+
(g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
|
537
|
+
search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
|
538
|
+
else:
|
539
|
+
print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
|
540
|
+
time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
|
541
|
+
FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
|
542
|
+
|
543
|
+
|
492
544
|
def doDescribeInitNodeScripts(args, parsed_globals):
|
493
545
|
g_param = parse_global_arg(parsed_globals)
|
494
546
|
|
@@ -1085,6 +1137,7 @@ ACTION_MAP = {
|
|
1085
1137
|
"SetAutoScalingConfiguration": doSetAutoScalingConfiguration,
|
1086
1138
|
"AddQueue": doAddQueue,
|
1087
1139
|
"DescribeNodes": doDescribeNodes,
|
1140
|
+
"CreateWorkspaces": doCreateWorkspaces,
|
1088
1141
|
"DescribeInitNodeScripts": doDescribeInitNodeScripts,
|
1089
1142
|
"AttachNodes": doAttachNodes,
|
1090
1143
|
"DescribeQueues": doDescribeQueues,
|