alibabacloud-ehpcinstant20230701 2.0.6__tar.gz → 2.0.8__tar.gz
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.
Potentially problematic release.
This version of alibabacloud-ehpcinstant20230701 might be problematic. Click here for more details.
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/ChangeLog.md +12 -0
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/PKG-INFO +1 -1
- alibabacloud_ehpcinstant20230701-2.0.8/alibabacloud_ehpcinstant20230701/__init__.py +1 -0
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/alibabacloud_ehpcinstant20230701/client.py +8 -0
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/alibabacloud_ehpcinstant20230701/models.py +353 -0
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/alibabacloud_ehpcinstant20230701.egg-info/PKG-INFO +1 -1
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/setup.py +1 -1
- alibabacloud_ehpcinstant20230701-2.0.6/alibabacloud_ehpcinstant20230701/__init__.py +0 -1
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/LICENSE +0 -0
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/MANIFEST.in +0 -0
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/README-CN.md +0 -0
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/README.md +0 -0
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/alibabacloud_ehpcinstant20230701.egg-info/SOURCES.txt +0 -0
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/alibabacloud_ehpcinstant20230701.egg-info/dependency_links.txt +0 -0
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/alibabacloud_ehpcinstant20230701.egg-info/requires.txt +0 -0
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/alibabacloud_ehpcinstant20230701.egg-info/top_level.txt +0 -0
- {alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/setup.cfg +0 -0
{alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/ChangeLog.md
RENAMED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
2025-07-15 Version: 2.0.7
|
|
2
|
+
- Update API ListExecutors: add response parameters Body.Executors.$.BlockDuration.
|
|
3
|
+
- Update API ListExecutors: add response parameters Body.Executors.$.Preemptible.
|
|
4
|
+
- Update API ListJobExecutors: add response parameters Body.Executors.$.BlockDuration.
|
|
5
|
+
- Update API ListJobExecutors: add response parameters Body.Executors.$.Preemptible.
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
2025-07-11 Version: 2.0.6
|
|
9
|
+
- Update API ListExecutors: add request parameters Filter.Image.
|
|
10
|
+
- Update API ListExecutors: add request parameters Filter.VswitchId.
|
|
11
|
+
|
|
12
|
+
|
|
1
13
|
2025-07-04 Version: 2.0.5
|
|
2
14
|
- Update API DeleteJobs: add request parameters JobScheduler.
|
|
3
15
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = '2.0.8'
|
|
@@ -184,6 +184,8 @@ class Client(OpenApiClient):
|
|
|
184
184
|
UtilClient.validate_model(tmp_req)
|
|
185
185
|
request = ehpc_instant_20230701_models.CreateJobShrinkRequest()
|
|
186
186
|
OpenApiUtilClient.convert(tmp_req, request)
|
|
187
|
+
if not UtilClient.is_unset(tmp_req.dependency_policy):
|
|
188
|
+
request.dependency_policy_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.dependency_policy, 'DependencyPolicy', 'json')
|
|
187
189
|
if not UtilClient.is_unset(tmp_req.deployment_policy):
|
|
188
190
|
request.deployment_policy_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.deployment_policy, 'DeploymentPolicy', 'json')
|
|
189
191
|
if not UtilClient.is_unset(tmp_req.security_policy):
|
|
@@ -191,6 +193,8 @@ class Client(OpenApiClient):
|
|
|
191
193
|
if not UtilClient.is_unset(tmp_req.tasks):
|
|
192
194
|
request.tasks_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.tasks, 'Tasks', 'json')
|
|
193
195
|
query = {}
|
|
196
|
+
if not UtilClient.is_unset(request.dependency_policy_shrink):
|
|
197
|
+
query['DependencyPolicy'] = request.dependency_policy_shrink
|
|
194
198
|
if not UtilClient.is_unset(request.deployment_policy_shrink):
|
|
195
199
|
query['DeploymentPolicy'] = request.deployment_policy_shrink
|
|
196
200
|
if not UtilClient.is_unset(request.job_description):
|
|
@@ -237,6 +241,8 @@ class Client(OpenApiClient):
|
|
|
237
241
|
UtilClient.validate_model(tmp_req)
|
|
238
242
|
request = ehpc_instant_20230701_models.CreateJobShrinkRequest()
|
|
239
243
|
OpenApiUtilClient.convert(tmp_req, request)
|
|
244
|
+
if not UtilClient.is_unset(tmp_req.dependency_policy):
|
|
245
|
+
request.dependency_policy_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.dependency_policy, 'DependencyPolicy', 'json')
|
|
240
246
|
if not UtilClient.is_unset(tmp_req.deployment_policy):
|
|
241
247
|
request.deployment_policy_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.deployment_policy, 'DeploymentPolicy', 'json')
|
|
242
248
|
if not UtilClient.is_unset(tmp_req.security_policy):
|
|
@@ -244,6 +250,8 @@ class Client(OpenApiClient):
|
|
|
244
250
|
if not UtilClient.is_unset(tmp_req.tasks):
|
|
245
251
|
request.tasks_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.tasks, 'Tasks', 'json')
|
|
246
252
|
query = {}
|
|
253
|
+
if not UtilClient.is_unset(request.dependency_policy_shrink):
|
|
254
|
+
query['DependencyPolicy'] = request.dependency_policy_shrink
|
|
247
255
|
if not UtilClient.is_unset(request.deployment_policy_shrink):
|
|
248
256
|
query['DeploymentPolicy'] = request.deployment_policy_shrink
|
|
249
257
|
if not UtilClient.is_unset(request.job_description):
|
|
@@ -324,6 +324,75 @@ class AddImageResponse(TeaModel):
|
|
|
324
324
|
return self
|
|
325
325
|
|
|
326
326
|
|
|
327
|
+
class CreateJobRequestDependencyPolicyJobDependency(TeaModel):
|
|
328
|
+
def __init__(
|
|
329
|
+
self,
|
|
330
|
+
job_id: str = None,
|
|
331
|
+
type: str = None,
|
|
332
|
+
):
|
|
333
|
+
# This parameter is required.
|
|
334
|
+
self.job_id = job_id
|
|
335
|
+
self.type = type
|
|
336
|
+
|
|
337
|
+
def validate(self):
|
|
338
|
+
pass
|
|
339
|
+
|
|
340
|
+
def to_map(self):
|
|
341
|
+
_map = super().to_map()
|
|
342
|
+
if _map is not None:
|
|
343
|
+
return _map
|
|
344
|
+
|
|
345
|
+
result = dict()
|
|
346
|
+
if self.job_id is not None:
|
|
347
|
+
result['JobId'] = self.job_id
|
|
348
|
+
if self.type is not None:
|
|
349
|
+
result['Type'] = self.type
|
|
350
|
+
return result
|
|
351
|
+
|
|
352
|
+
def from_map(self, m: dict = None):
|
|
353
|
+
m = m or dict()
|
|
354
|
+
if m.get('JobId') is not None:
|
|
355
|
+
self.job_id = m.get('JobId')
|
|
356
|
+
if m.get('Type') is not None:
|
|
357
|
+
self.type = m.get('Type')
|
|
358
|
+
return self
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
class CreateJobRequestDependencyPolicy(TeaModel):
|
|
362
|
+
def __init__(
|
|
363
|
+
self,
|
|
364
|
+
job_dependency: List[CreateJobRequestDependencyPolicyJobDependency] = None,
|
|
365
|
+
):
|
|
366
|
+
self.job_dependency = job_dependency
|
|
367
|
+
|
|
368
|
+
def validate(self):
|
|
369
|
+
if self.job_dependency:
|
|
370
|
+
for k in self.job_dependency:
|
|
371
|
+
if k:
|
|
372
|
+
k.validate()
|
|
373
|
+
|
|
374
|
+
def to_map(self):
|
|
375
|
+
_map = super().to_map()
|
|
376
|
+
if _map is not None:
|
|
377
|
+
return _map
|
|
378
|
+
|
|
379
|
+
result = dict()
|
|
380
|
+
result['JobDependency'] = []
|
|
381
|
+
if self.job_dependency is not None:
|
|
382
|
+
for k in self.job_dependency:
|
|
383
|
+
result['JobDependency'].append(k.to_map() if k else None)
|
|
384
|
+
return result
|
|
385
|
+
|
|
386
|
+
def from_map(self, m: dict = None):
|
|
387
|
+
m = m or dict()
|
|
388
|
+
self.job_dependency = []
|
|
389
|
+
if m.get('JobDependency') is not None:
|
|
390
|
+
for k in m.get('JobDependency'):
|
|
391
|
+
temp_model = CreateJobRequestDependencyPolicyJobDependency()
|
|
392
|
+
self.job_dependency.append(temp_model.from_map(k))
|
|
393
|
+
return self
|
|
394
|
+
|
|
395
|
+
|
|
327
396
|
class CreateJobRequestDeploymentPolicyNetwork(TeaModel):
|
|
328
397
|
def __init__(
|
|
329
398
|
self,
|
|
@@ -675,6 +744,82 @@ class CreateJobRequestTasksTaskSpecResource(TeaModel):
|
|
|
675
744
|
return self
|
|
676
745
|
|
|
677
746
|
|
|
747
|
+
class CreateJobRequestTasksTaskSpecRetryPolicyExitCodeActions(TeaModel):
|
|
748
|
+
def __init__(
|
|
749
|
+
self,
|
|
750
|
+
action: str = None,
|
|
751
|
+
exit_code: int = None,
|
|
752
|
+
):
|
|
753
|
+
# This parameter is required.
|
|
754
|
+
self.action = action
|
|
755
|
+
# This parameter is required.
|
|
756
|
+
self.exit_code = exit_code
|
|
757
|
+
|
|
758
|
+
def validate(self):
|
|
759
|
+
pass
|
|
760
|
+
|
|
761
|
+
def to_map(self):
|
|
762
|
+
_map = super().to_map()
|
|
763
|
+
if _map is not None:
|
|
764
|
+
return _map
|
|
765
|
+
|
|
766
|
+
result = dict()
|
|
767
|
+
if self.action is not None:
|
|
768
|
+
result['Action'] = self.action
|
|
769
|
+
if self.exit_code is not None:
|
|
770
|
+
result['ExitCode'] = self.exit_code
|
|
771
|
+
return result
|
|
772
|
+
|
|
773
|
+
def from_map(self, m: dict = None):
|
|
774
|
+
m = m or dict()
|
|
775
|
+
if m.get('Action') is not None:
|
|
776
|
+
self.action = m.get('Action')
|
|
777
|
+
if m.get('ExitCode') is not None:
|
|
778
|
+
self.exit_code = m.get('ExitCode')
|
|
779
|
+
return self
|
|
780
|
+
|
|
781
|
+
|
|
782
|
+
class CreateJobRequestTasksTaskSpecRetryPolicy(TeaModel):
|
|
783
|
+
def __init__(
|
|
784
|
+
self,
|
|
785
|
+
exit_code_actions: List[CreateJobRequestTasksTaskSpecRetryPolicyExitCodeActions] = None,
|
|
786
|
+
retry_count: int = None,
|
|
787
|
+
):
|
|
788
|
+
self.exit_code_actions = exit_code_actions
|
|
789
|
+
self.retry_count = retry_count
|
|
790
|
+
|
|
791
|
+
def validate(self):
|
|
792
|
+
if self.exit_code_actions:
|
|
793
|
+
for k in self.exit_code_actions:
|
|
794
|
+
if k:
|
|
795
|
+
k.validate()
|
|
796
|
+
|
|
797
|
+
def to_map(self):
|
|
798
|
+
_map = super().to_map()
|
|
799
|
+
if _map is not None:
|
|
800
|
+
return _map
|
|
801
|
+
|
|
802
|
+
result = dict()
|
|
803
|
+
result['ExitCodeActions'] = []
|
|
804
|
+
if self.exit_code_actions is not None:
|
|
805
|
+
for k in self.exit_code_actions:
|
|
806
|
+
result['ExitCodeActions'].append(k.to_map() if k else None)
|
|
807
|
+
if self.retry_count is not None:
|
|
808
|
+
result['RetryCount'] = self.retry_count
|
|
809
|
+
return result
|
|
810
|
+
|
|
811
|
+
def from_map(self, m: dict = None):
|
|
812
|
+
m = m or dict()
|
|
813
|
+
self.exit_code_actions = []
|
|
814
|
+
if m.get('ExitCodeActions') is not None:
|
|
815
|
+
for k in m.get('ExitCodeActions'):
|
|
816
|
+
temp_model = CreateJobRequestTasksTaskSpecRetryPolicyExitCodeActions()
|
|
817
|
+
self.exit_code_actions.append(temp_model.from_map(k))
|
|
818
|
+
if m.get('RetryCount') is not None:
|
|
819
|
+
self.retry_count = m.get('RetryCount')
|
|
820
|
+
return self
|
|
821
|
+
|
|
822
|
+
|
|
678
823
|
class CreateJobRequestTasksTaskSpecTaskExecutorContainerEnvironmentVars(TeaModel):
|
|
679
824
|
def __init__(
|
|
680
825
|
self,
|
|
@@ -913,10 +1058,12 @@ class CreateJobRequestTasksTaskSpec(TeaModel):
|
|
|
913
1058
|
def __init__(
|
|
914
1059
|
self,
|
|
915
1060
|
resource: CreateJobRequestTasksTaskSpecResource = None,
|
|
1061
|
+
retry_policy: CreateJobRequestTasksTaskSpecRetryPolicy = None,
|
|
916
1062
|
task_executor: List[CreateJobRequestTasksTaskSpecTaskExecutor] = None,
|
|
917
1063
|
volume_mount: List[CreateJobRequestTasksTaskSpecVolumeMount] = None,
|
|
918
1064
|
):
|
|
919
1065
|
self.resource = resource
|
|
1066
|
+
self.retry_policy = retry_policy
|
|
920
1067
|
# This parameter is required.
|
|
921
1068
|
self.task_executor = task_executor
|
|
922
1069
|
self.volume_mount = volume_mount
|
|
@@ -924,6 +1071,8 @@ class CreateJobRequestTasksTaskSpec(TeaModel):
|
|
|
924
1071
|
def validate(self):
|
|
925
1072
|
if self.resource:
|
|
926
1073
|
self.resource.validate()
|
|
1074
|
+
if self.retry_policy:
|
|
1075
|
+
self.retry_policy.validate()
|
|
927
1076
|
if self.task_executor:
|
|
928
1077
|
for k in self.task_executor:
|
|
929
1078
|
if k:
|
|
@@ -941,6 +1090,8 @@ class CreateJobRequestTasksTaskSpec(TeaModel):
|
|
|
941
1090
|
result = dict()
|
|
942
1091
|
if self.resource is not None:
|
|
943
1092
|
result['Resource'] = self.resource.to_map()
|
|
1093
|
+
if self.retry_policy is not None:
|
|
1094
|
+
result['RetryPolicy'] = self.retry_policy.to_map()
|
|
944
1095
|
result['TaskExecutor'] = []
|
|
945
1096
|
if self.task_executor is not None:
|
|
946
1097
|
for k in self.task_executor:
|
|
@@ -956,6 +1107,9 @@ class CreateJobRequestTasksTaskSpec(TeaModel):
|
|
|
956
1107
|
if m.get('Resource') is not None:
|
|
957
1108
|
temp_model = CreateJobRequestTasksTaskSpecResource()
|
|
958
1109
|
self.resource = temp_model.from_map(m['Resource'])
|
|
1110
|
+
if m.get('RetryPolicy') is not None:
|
|
1111
|
+
temp_model = CreateJobRequestTasksTaskSpecRetryPolicy()
|
|
1112
|
+
self.retry_policy = temp_model.from_map(m['RetryPolicy'])
|
|
959
1113
|
self.task_executor = []
|
|
960
1114
|
if m.get('TaskExecutor') is not None:
|
|
961
1115
|
for k in m.get('TaskExecutor'):
|
|
@@ -1022,6 +1176,7 @@ class CreateJobRequestTasks(TeaModel):
|
|
|
1022
1176
|
class CreateJobRequest(TeaModel):
|
|
1023
1177
|
def __init__(
|
|
1024
1178
|
self,
|
|
1179
|
+
dependency_policy: CreateJobRequestDependencyPolicy = None,
|
|
1025
1180
|
deployment_policy: CreateJobRequestDeploymentPolicy = None,
|
|
1026
1181
|
job_description: str = None,
|
|
1027
1182
|
job_name: str = None,
|
|
@@ -1029,6 +1184,7 @@ class CreateJobRequest(TeaModel):
|
|
|
1029
1184
|
security_policy: CreateJobRequestSecurityPolicy = None,
|
|
1030
1185
|
tasks: List[CreateJobRequestTasks] = None,
|
|
1031
1186
|
):
|
|
1187
|
+
self.dependency_policy = dependency_policy
|
|
1032
1188
|
self.deployment_policy = deployment_policy
|
|
1033
1189
|
self.job_description = job_description
|
|
1034
1190
|
# This parameter is required.
|
|
@@ -1039,6 +1195,8 @@ class CreateJobRequest(TeaModel):
|
|
|
1039
1195
|
self.tasks = tasks
|
|
1040
1196
|
|
|
1041
1197
|
def validate(self):
|
|
1198
|
+
if self.dependency_policy:
|
|
1199
|
+
self.dependency_policy.validate()
|
|
1042
1200
|
if self.deployment_policy:
|
|
1043
1201
|
self.deployment_policy.validate()
|
|
1044
1202
|
if self.security_policy:
|
|
@@ -1054,6 +1212,8 @@ class CreateJobRequest(TeaModel):
|
|
|
1054
1212
|
return _map
|
|
1055
1213
|
|
|
1056
1214
|
result = dict()
|
|
1215
|
+
if self.dependency_policy is not None:
|
|
1216
|
+
result['DependencyPolicy'] = self.dependency_policy.to_map()
|
|
1057
1217
|
if self.deployment_policy is not None:
|
|
1058
1218
|
result['DeploymentPolicy'] = self.deployment_policy.to_map()
|
|
1059
1219
|
if self.job_description is not None:
|
|
@@ -1072,6 +1232,9 @@ class CreateJobRequest(TeaModel):
|
|
|
1072
1232
|
|
|
1073
1233
|
def from_map(self, m: dict = None):
|
|
1074
1234
|
m = m or dict()
|
|
1235
|
+
if m.get('DependencyPolicy') is not None:
|
|
1236
|
+
temp_model = CreateJobRequestDependencyPolicy()
|
|
1237
|
+
self.dependency_policy = temp_model.from_map(m['DependencyPolicy'])
|
|
1075
1238
|
if m.get('DeploymentPolicy') is not None:
|
|
1076
1239
|
temp_model = CreateJobRequestDeploymentPolicy()
|
|
1077
1240
|
self.deployment_policy = temp_model.from_map(m['DeploymentPolicy'])
|
|
@@ -1095,6 +1258,7 @@ class CreateJobRequest(TeaModel):
|
|
|
1095
1258
|
class CreateJobShrinkRequest(TeaModel):
|
|
1096
1259
|
def __init__(
|
|
1097
1260
|
self,
|
|
1261
|
+
dependency_policy_shrink: str = None,
|
|
1098
1262
|
deployment_policy_shrink: str = None,
|
|
1099
1263
|
job_description: str = None,
|
|
1100
1264
|
job_name: str = None,
|
|
@@ -1102,6 +1266,7 @@ class CreateJobShrinkRequest(TeaModel):
|
|
|
1102
1266
|
security_policy_shrink: str = None,
|
|
1103
1267
|
tasks_shrink: str = None,
|
|
1104
1268
|
):
|
|
1269
|
+
self.dependency_policy_shrink = dependency_policy_shrink
|
|
1105
1270
|
self.deployment_policy_shrink = deployment_policy_shrink
|
|
1106
1271
|
self.job_description = job_description
|
|
1107
1272
|
# This parameter is required.
|
|
@@ -1120,6 +1285,8 @@ class CreateJobShrinkRequest(TeaModel):
|
|
|
1120
1285
|
return _map
|
|
1121
1286
|
|
|
1122
1287
|
result = dict()
|
|
1288
|
+
if self.dependency_policy_shrink is not None:
|
|
1289
|
+
result['DependencyPolicy'] = self.dependency_policy_shrink
|
|
1123
1290
|
if self.deployment_policy_shrink is not None:
|
|
1124
1291
|
result['DeploymentPolicy'] = self.deployment_policy_shrink
|
|
1125
1292
|
if self.job_description is not None:
|
|
@@ -1136,6 +1303,8 @@ class CreateJobShrinkRequest(TeaModel):
|
|
|
1136
1303
|
|
|
1137
1304
|
def from_map(self, m: dict = None):
|
|
1138
1305
|
m = m or dict()
|
|
1306
|
+
if m.get('DependencyPolicy') is not None:
|
|
1307
|
+
self.dependency_policy_shrink = m.get('DependencyPolicy')
|
|
1139
1308
|
if m.get('DeploymentPolicy') is not None:
|
|
1140
1309
|
self.deployment_policy_shrink = m.get('DeploymentPolicy')
|
|
1141
1310
|
if m.get('JobDescription') is not None:
|
|
@@ -2885,6 +3054,74 @@ class GetJobRequest(TeaModel):
|
|
|
2885
3054
|
return self
|
|
2886
3055
|
|
|
2887
3056
|
|
|
3057
|
+
class GetJobResponseBodyJobInfoDependencyPolicyJobDependency(TeaModel):
|
|
3058
|
+
def __init__(
|
|
3059
|
+
self,
|
|
3060
|
+
job_id: str = None,
|
|
3061
|
+
type: str = None,
|
|
3062
|
+
):
|
|
3063
|
+
self.job_id = job_id
|
|
3064
|
+
self.type = type
|
|
3065
|
+
|
|
3066
|
+
def validate(self):
|
|
3067
|
+
pass
|
|
3068
|
+
|
|
3069
|
+
def to_map(self):
|
|
3070
|
+
_map = super().to_map()
|
|
3071
|
+
if _map is not None:
|
|
3072
|
+
return _map
|
|
3073
|
+
|
|
3074
|
+
result = dict()
|
|
3075
|
+
if self.job_id is not None:
|
|
3076
|
+
result['JobId'] = self.job_id
|
|
3077
|
+
if self.type is not None:
|
|
3078
|
+
result['Type'] = self.type
|
|
3079
|
+
return result
|
|
3080
|
+
|
|
3081
|
+
def from_map(self, m: dict = None):
|
|
3082
|
+
m = m or dict()
|
|
3083
|
+
if m.get('JobId') is not None:
|
|
3084
|
+
self.job_id = m.get('JobId')
|
|
3085
|
+
if m.get('Type') is not None:
|
|
3086
|
+
self.type = m.get('Type')
|
|
3087
|
+
return self
|
|
3088
|
+
|
|
3089
|
+
|
|
3090
|
+
class GetJobResponseBodyJobInfoDependencyPolicy(TeaModel):
|
|
3091
|
+
def __init__(
|
|
3092
|
+
self,
|
|
3093
|
+
job_dependency: List[GetJobResponseBodyJobInfoDependencyPolicyJobDependency] = None,
|
|
3094
|
+
):
|
|
3095
|
+
self.job_dependency = job_dependency
|
|
3096
|
+
|
|
3097
|
+
def validate(self):
|
|
3098
|
+
if self.job_dependency:
|
|
3099
|
+
for k in self.job_dependency:
|
|
3100
|
+
if k:
|
|
3101
|
+
k.validate()
|
|
3102
|
+
|
|
3103
|
+
def to_map(self):
|
|
3104
|
+
_map = super().to_map()
|
|
3105
|
+
if _map is not None:
|
|
3106
|
+
return _map
|
|
3107
|
+
|
|
3108
|
+
result = dict()
|
|
3109
|
+
result['JobDependency'] = []
|
|
3110
|
+
if self.job_dependency is not None:
|
|
3111
|
+
for k in self.job_dependency:
|
|
3112
|
+
result['JobDependency'].append(k.to_map() if k else None)
|
|
3113
|
+
return result
|
|
3114
|
+
|
|
3115
|
+
def from_map(self, m: dict = None):
|
|
3116
|
+
m = m or dict()
|
|
3117
|
+
self.job_dependency = []
|
|
3118
|
+
if m.get('JobDependency') is not None:
|
|
3119
|
+
for k in m.get('JobDependency'):
|
|
3120
|
+
temp_model = GetJobResponseBodyJobInfoDependencyPolicyJobDependency()
|
|
3121
|
+
self.job_dependency.append(temp_model.from_map(k))
|
|
3122
|
+
return self
|
|
3123
|
+
|
|
3124
|
+
|
|
2888
3125
|
class GetJobResponseBodyJobInfoDeploymentPolicyNetwork(TeaModel):
|
|
2889
3126
|
def __init__(
|
|
2890
3127
|
self,
|
|
@@ -3230,6 +3467,80 @@ class GetJobResponseBodyJobInfoTasksTaskSpecResource(TeaModel):
|
|
|
3230
3467
|
return self
|
|
3231
3468
|
|
|
3232
3469
|
|
|
3470
|
+
class GetJobResponseBodyJobInfoTasksTaskSpecRetryPolicyExitCodeActions(TeaModel):
|
|
3471
|
+
def __init__(
|
|
3472
|
+
self,
|
|
3473
|
+
action: str = None,
|
|
3474
|
+
exit_code: int = None,
|
|
3475
|
+
):
|
|
3476
|
+
self.action = action
|
|
3477
|
+
self.exit_code = exit_code
|
|
3478
|
+
|
|
3479
|
+
def validate(self):
|
|
3480
|
+
pass
|
|
3481
|
+
|
|
3482
|
+
def to_map(self):
|
|
3483
|
+
_map = super().to_map()
|
|
3484
|
+
if _map is not None:
|
|
3485
|
+
return _map
|
|
3486
|
+
|
|
3487
|
+
result = dict()
|
|
3488
|
+
if self.action is not None:
|
|
3489
|
+
result['Action'] = self.action
|
|
3490
|
+
if self.exit_code is not None:
|
|
3491
|
+
result['ExitCode'] = self.exit_code
|
|
3492
|
+
return result
|
|
3493
|
+
|
|
3494
|
+
def from_map(self, m: dict = None):
|
|
3495
|
+
m = m or dict()
|
|
3496
|
+
if m.get('Action') is not None:
|
|
3497
|
+
self.action = m.get('Action')
|
|
3498
|
+
if m.get('ExitCode') is not None:
|
|
3499
|
+
self.exit_code = m.get('ExitCode')
|
|
3500
|
+
return self
|
|
3501
|
+
|
|
3502
|
+
|
|
3503
|
+
class GetJobResponseBodyJobInfoTasksTaskSpecRetryPolicy(TeaModel):
|
|
3504
|
+
def __init__(
|
|
3505
|
+
self,
|
|
3506
|
+
exit_code_actions: List[GetJobResponseBodyJobInfoTasksTaskSpecRetryPolicyExitCodeActions] = None,
|
|
3507
|
+
retry_count: int = None,
|
|
3508
|
+
):
|
|
3509
|
+
self.exit_code_actions = exit_code_actions
|
|
3510
|
+
self.retry_count = retry_count
|
|
3511
|
+
|
|
3512
|
+
def validate(self):
|
|
3513
|
+
if self.exit_code_actions:
|
|
3514
|
+
for k in self.exit_code_actions:
|
|
3515
|
+
if k:
|
|
3516
|
+
k.validate()
|
|
3517
|
+
|
|
3518
|
+
def to_map(self):
|
|
3519
|
+
_map = super().to_map()
|
|
3520
|
+
if _map is not None:
|
|
3521
|
+
return _map
|
|
3522
|
+
|
|
3523
|
+
result = dict()
|
|
3524
|
+
result['ExitCodeActions'] = []
|
|
3525
|
+
if self.exit_code_actions is not None:
|
|
3526
|
+
for k in self.exit_code_actions:
|
|
3527
|
+
result['ExitCodeActions'].append(k.to_map() if k else None)
|
|
3528
|
+
if self.retry_count is not None:
|
|
3529
|
+
result['RetryCount'] = self.retry_count
|
|
3530
|
+
return result
|
|
3531
|
+
|
|
3532
|
+
def from_map(self, m: dict = None):
|
|
3533
|
+
m = m or dict()
|
|
3534
|
+
self.exit_code_actions = []
|
|
3535
|
+
if m.get('ExitCodeActions') is not None:
|
|
3536
|
+
for k in m.get('ExitCodeActions'):
|
|
3537
|
+
temp_model = GetJobResponseBodyJobInfoTasksTaskSpecRetryPolicyExitCodeActions()
|
|
3538
|
+
self.exit_code_actions.append(temp_model.from_map(k))
|
|
3539
|
+
if m.get('RetryCount') is not None:
|
|
3540
|
+
self.retry_count = m.get('RetryCount')
|
|
3541
|
+
return self
|
|
3542
|
+
|
|
3543
|
+
|
|
3233
3544
|
class GetJobResponseBodyJobInfoTasksTaskSpecTaskExecutorVM(TeaModel):
|
|
3234
3545
|
def __init__(
|
|
3235
3546
|
self,
|
|
@@ -3308,14 +3619,18 @@ class GetJobResponseBodyJobInfoTasksTaskSpec(TeaModel):
|
|
|
3308
3619
|
def __init__(
|
|
3309
3620
|
self,
|
|
3310
3621
|
resource: GetJobResponseBodyJobInfoTasksTaskSpecResource = None,
|
|
3622
|
+
retry_policy: GetJobResponseBodyJobInfoTasksTaskSpecRetryPolicy = None,
|
|
3311
3623
|
task_executor: List[GetJobResponseBodyJobInfoTasksTaskSpecTaskExecutor] = None,
|
|
3312
3624
|
):
|
|
3313
3625
|
self.resource = resource
|
|
3626
|
+
self.retry_policy = retry_policy
|
|
3314
3627
|
self.task_executor = task_executor
|
|
3315
3628
|
|
|
3316
3629
|
def validate(self):
|
|
3317
3630
|
if self.resource:
|
|
3318
3631
|
self.resource.validate()
|
|
3632
|
+
if self.retry_policy:
|
|
3633
|
+
self.retry_policy.validate()
|
|
3319
3634
|
if self.task_executor:
|
|
3320
3635
|
for k in self.task_executor:
|
|
3321
3636
|
if k:
|
|
@@ -3329,6 +3644,8 @@ class GetJobResponseBodyJobInfoTasksTaskSpec(TeaModel):
|
|
|
3329
3644
|
result = dict()
|
|
3330
3645
|
if self.resource is not None:
|
|
3331
3646
|
result['Resource'] = self.resource.to_map()
|
|
3647
|
+
if self.retry_policy is not None:
|
|
3648
|
+
result['RetryPolicy'] = self.retry_policy.to_map()
|
|
3332
3649
|
result['TaskExecutor'] = []
|
|
3333
3650
|
if self.task_executor is not None:
|
|
3334
3651
|
for k in self.task_executor:
|
|
@@ -3340,6 +3657,9 @@ class GetJobResponseBodyJobInfoTasksTaskSpec(TeaModel):
|
|
|
3340
3657
|
if m.get('Resource') is not None:
|
|
3341
3658
|
temp_model = GetJobResponseBodyJobInfoTasksTaskSpecResource()
|
|
3342
3659
|
self.resource = temp_model.from_map(m['Resource'])
|
|
3660
|
+
if m.get('RetryPolicy') is not None:
|
|
3661
|
+
temp_model = GetJobResponseBodyJobInfoTasksTaskSpecRetryPolicy()
|
|
3662
|
+
self.retry_policy = temp_model.from_map(m['RetryPolicy'])
|
|
3343
3663
|
self.task_executor = []
|
|
3344
3664
|
if m.get('TaskExecutor') is not None:
|
|
3345
3665
|
for k in m.get('TaskExecutor'):
|
|
@@ -3418,6 +3738,7 @@ class GetJobResponseBodyJobInfo(TeaModel):
|
|
|
3418
3738
|
self,
|
|
3419
3739
|
app_extra_info: str = None,
|
|
3420
3740
|
create_time: str = None,
|
|
3741
|
+
dependency_policy: GetJobResponseBodyJobInfoDependencyPolicy = None,
|
|
3421
3742
|
deployment_policy: GetJobResponseBodyJobInfoDeploymentPolicy = None,
|
|
3422
3743
|
end_time: str = None,
|
|
3423
3744
|
job_description: str = None,
|
|
@@ -3430,6 +3751,7 @@ class GetJobResponseBodyJobInfo(TeaModel):
|
|
|
3430
3751
|
):
|
|
3431
3752
|
self.app_extra_info = app_extra_info
|
|
3432
3753
|
self.create_time = create_time
|
|
3754
|
+
self.dependency_policy = dependency_policy
|
|
3433
3755
|
self.deployment_policy = deployment_policy
|
|
3434
3756
|
self.end_time = end_time
|
|
3435
3757
|
self.job_description = job_description
|
|
@@ -3441,6 +3763,8 @@ class GetJobResponseBodyJobInfo(TeaModel):
|
|
|
3441
3763
|
self.tasks = tasks
|
|
3442
3764
|
|
|
3443
3765
|
def validate(self):
|
|
3766
|
+
if self.dependency_policy:
|
|
3767
|
+
self.dependency_policy.validate()
|
|
3444
3768
|
if self.deployment_policy:
|
|
3445
3769
|
self.deployment_policy.validate()
|
|
3446
3770
|
if self.tasks:
|
|
@@ -3458,6 +3782,8 @@ class GetJobResponseBodyJobInfo(TeaModel):
|
|
|
3458
3782
|
result['AppExtraInfo'] = self.app_extra_info
|
|
3459
3783
|
if self.create_time is not None:
|
|
3460
3784
|
result['CreateTime'] = self.create_time
|
|
3785
|
+
if self.dependency_policy is not None:
|
|
3786
|
+
result['DependencyPolicy'] = self.dependency_policy.to_map()
|
|
3461
3787
|
if self.deployment_policy is not None:
|
|
3462
3788
|
result['DeploymentPolicy'] = self.deployment_policy.to_map()
|
|
3463
3789
|
if self.end_time is not None:
|
|
@@ -3486,6 +3812,9 @@ class GetJobResponseBodyJobInfo(TeaModel):
|
|
|
3486
3812
|
self.app_extra_info = m.get('AppExtraInfo')
|
|
3487
3813
|
if m.get('CreateTime') is not None:
|
|
3488
3814
|
self.create_time = m.get('CreateTime')
|
|
3815
|
+
if m.get('DependencyPolicy') is not None:
|
|
3816
|
+
temp_model = GetJobResponseBodyJobInfoDependencyPolicy()
|
|
3817
|
+
self.dependency_policy = temp_model.from_map(m['DependencyPolicy'])
|
|
3489
3818
|
if m.get('DeploymentPolicy') is not None:
|
|
3490
3819
|
temp_model = GetJobResponseBodyJobInfoDeploymentPolicy()
|
|
3491
3820
|
self.deployment_policy = temp_model.from_map(m['DeploymentPolicy'])
|
|
@@ -4034,6 +4363,7 @@ class ListExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4034
4363
|
self,
|
|
4035
4364
|
app_name: str = None,
|
|
4036
4365
|
array_index: int = None,
|
|
4366
|
+
block_duration: int = None,
|
|
4037
4367
|
create_time: str = None,
|
|
4038
4368
|
end_time: str = None,
|
|
4039
4369
|
executor_id: str = None,
|
|
@@ -4044,6 +4374,7 @@ class ListExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4044
4374
|
ip_address: List[str] = None,
|
|
4045
4375
|
job_id: str = None,
|
|
4046
4376
|
job_name: str = None,
|
|
4377
|
+
preemptible: bool = None,
|
|
4047
4378
|
resource: ListExecutorsResponseBodyExecutorsResource = None,
|
|
4048
4379
|
resource_type: str = None,
|
|
4049
4380
|
start_time: str = None,
|
|
@@ -4056,6 +4387,7 @@ class ListExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4056
4387
|
):
|
|
4057
4388
|
self.app_name = app_name
|
|
4058
4389
|
self.array_index = array_index
|
|
4390
|
+
self.block_duration = block_duration
|
|
4059
4391
|
self.create_time = create_time
|
|
4060
4392
|
self.end_time = end_time
|
|
4061
4393
|
self.executor_id = executor_id
|
|
@@ -4066,6 +4398,7 @@ class ListExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4066
4398
|
self.ip_address = ip_address
|
|
4067
4399
|
self.job_id = job_id
|
|
4068
4400
|
self.job_name = job_name
|
|
4401
|
+
self.preemptible = preemptible
|
|
4069
4402
|
self.resource = resource
|
|
4070
4403
|
self.resource_type = resource_type
|
|
4071
4404
|
self.start_time = start_time
|
|
@@ -4094,6 +4427,8 @@ class ListExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4094
4427
|
result['AppName'] = self.app_name
|
|
4095
4428
|
if self.array_index is not None:
|
|
4096
4429
|
result['ArrayIndex'] = self.array_index
|
|
4430
|
+
if self.block_duration is not None:
|
|
4431
|
+
result['BlockDuration'] = self.block_duration
|
|
4097
4432
|
if self.create_time is not None:
|
|
4098
4433
|
result['CreateTime'] = self.create_time
|
|
4099
4434
|
if self.end_time is not None:
|
|
@@ -4114,6 +4449,8 @@ class ListExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4114
4449
|
result['JobId'] = self.job_id
|
|
4115
4450
|
if self.job_name is not None:
|
|
4116
4451
|
result['JobName'] = self.job_name
|
|
4452
|
+
if self.preemptible is not None:
|
|
4453
|
+
result['Preemptible'] = self.preemptible
|
|
4117
4454
|
if self.resource is not None:
|
|
4118
4455
|
result['Resource'] = self.resource.to_map()
|
|
4119
4456
|
if self.resource_type is not None:
|
|
@@ -4142,6 +4479,8 @@ class ListExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4142
4479
|
self.app_name = m.get('AppName')
|
|
4143
4480
|
if m.get('ArrayIndex') is not None:
|
|
4144
4481
|
self.array_index = m.get('ArrayIndex')
|
|
4482
|
+
if m.get('BlockDuration') is not None:
|
|
4483
|
+
self.block_duration = m.get('BlockDuration')
|
|
4145
4484
|
if m.get('CreateTime') is not None:
|
|
4146
4485
|
self.create_time = m.get('CreateTime')
|
|
4147
4486
|
if m.get('EndTime') is not None:
|
|
@@ -4162,6 +4501,8 @@ class ListExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4162
4501
|
self.job_id = m.get('JobId')
|
|
4163
4502
|
if m.get('JobName') is not None:
|
|
4164
4503
|
self.job_name = m.get('JobName')
|
|
4504
|
+
if m.get('Preemptible') is not None:
|
|
4505
|
+
self.preemptible = m.get('Preemptible')
|
|
4165
4506
|
if m.get('Resource') is not None:
|
|
4166
4507
|
temp_model = ListExecutorsResponseBodyExecutorsResource()
|
|
4167
4508
|
self.resource = temp_model.from_map(m['Resource'])
|
|
@@ -4754,6 +5095,7 @@ class ListJobExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4754
5095
|
def __init__(
|
|
4755
5096
|
self,
|
|
4756
5097
|
array_index: int = None,
|
|
5098
|
+
block_duration: int = None,
|
|
4757
5099
|
create_time: str = None,
|
|
4758
5100
|
end_time: str = None,
|
|
4759
5101
|
executor_id: str = None,
|
|
@@ -4761,12 +5103,14 @@ class ListJobExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4761
5103
|
external_ip_address: List[str] = None,
|
|
4762
5104
|
host_name: List[str] = None,
|
|
4763
5105
|
ip_address: List[str] = None,
|
|
5106
|
+
preemptible: bool = None,
|
|
4764
5107
|
start_time: str = None,
|
|
4765
5108
|
status: str = None,
|
|
4766
5109
|
status_reason: str = None,
|
|
4767
5110
|
tags: List[ListJobExecutorsResponseBodyExecutorsTags] = None,
|
|
4768
5111
|
):
|
|
4769
5112
|
self.array_index = array_index
|
|
5113
|
+
self.block_duration = block_duration
|
|
4770
5114
|
self.create_time = create_time
|
|
4771
5115
|
self.end_time = end_time
|
|
4772
5116
|
self.executor_id = executor_id
|
|
@@ -4774,6 +5118,7 @@ class ListJobExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4774
5118
|
self.external_ip_address = external_ip_address
|
|
4775
5119
|
self.host_name = host_name
|
|
4776
5120
|
self.ip_address = ip_address
|
|
5121
|
+
self.preemptible = preemptible
|
|
4777
5122
|
self.start_time = start_time
|
|
4778
5123
|
self.status = status
|
|
4779
5124
|
self.status_reason = status_reason
|
|
@@ -4793,6 +5138,8 @@ class ListJobExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4793
5138
|
result = dict()
|
|
4794
5139
|
if self.array_index is not None:
|
|
4795
5140
|
result['ArrayIndex'] = self.array_index
|
|
5141
|
+
if self.block_duration is not None:
|
|
5142
|
+
result['BlockDuration'] = self.block_duration
|
|
4796
5143
|
if self.create_time is not None:
|
|
4797
5144
|
result['CreateTime'] = self.create_time
|
|
4798
5145
|
if self.end_time is not None:
|
|
@@ -4807,6 +5154,8 @@ class ListJobExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4807
5154
|
result['HostName'] = self.host_name
|
|
4808
5155
|
if self.ip_address is not None:
|
|
4809
5156
|
result['IpAddress'] = self.ip_address
|
|
5157
|
+
if self.preemptible is not None:
|
|
5158
|
+
result['Preemptible'] = self.preemptible
|
|
4810
5159
|
if self.start_time is not None:
|
|
4811
5160
|
result['StartTime'] = self.start_time
|
|
4812
5161
|
if self.status is not None:
|
|
@@ -4823,6 +5172,8 @@ class ListJobExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4823
5172
|
m = m or dict()
|
|
4824
5173
|
if m.get('ArrayIndex') is not None:
|
|
4825
5174
|
self.array_index = m.get('ArrayIndex')
|
|
5175
|
+
if m.get('BlockDuration') is not None:
|
|
5176
|
+
self.block_duration = m.get('BlockDuration')
|
|
4826
5177
|
if m.get('CreateTime') is not None:
|
|
4827
5178
|
self.create_time = m.get('CreateTime')
|
|
4828
5179
|
if m.get('EndTime') is not None:
|
|
@@ -4837,6 +5188,8 @@ class ListJobExecutorsResponseBodyExecutors(TeaModel):
|
|
|
4837
5188
|
self.host_name = m.get('HostName')
|
|
4838
5189
|
if m.get('IpAddress') is not None:
|
|
4839
5190
|
self.ip_address = m.get('IpAddress')
|
|
5191
|
+
if m.get('Preemptible') is not None:
|
|
5192
|
+
self.preemptible = m.get('Preemptible')
|
|
4840
5193
|
if m.get('StartTime') is not None:
|
|
4841
5194
|
self.start_time = m.get('StartTime')
|
|
4842
5195
|
if m.get('Status') is not None:
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = '2.0.6'
|
|
File without changes
|
{alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/MANIFEST.in
RENAMED
|
File without changes
|
{alibabacloud_ehpcinstant20230701-2.0.6 → alibabacloud_ehpcinstant20230701-2.0.8}/README-CN.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|