batchcompute-20181213/alibabacloud_batchcompute20181213/models.py (7,061 lines of code) (raw):
# -*- coding: utf-8 -*-
# This file is auto-generated, don't edit it. Thanks.
from Tea.model import TeaModel
from typing import List, Dict
class UserStage(TeaModel):
def __init__(
self,
description: str = None,
end_time: int = None,
start_time: int = None,
state: str = None,
):
# Description
self.description = description
# EndTime
self.end_time = end_time
# StartTime
self.start_time = start_time
# State
self.state = state
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.description is not None:
result['Description'] = self.description
if self.end_time is not None:
result['EndTime'] = self.end_time
if self.start_time is not None:
result['StartTime'] = self.start_time
if self.state is not None:
result['State'] = self.state
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('EndTime') is not None:
self.end_time = m.get('EndTime')
if m.get('StartTime') is not None:
self.start_time = m.get('StartTime')
if m.get('State') is not None:
self.state = m.get('State')
return self
class Attempt(TeaModel):
def __init__(
self,
end_time: str = None,
exit_code: int = None,
output: bytes = None,
pid: int = None,
reason: str = None,
start_time: str = None,
state: str = None,
user_stages: List[UserStage] = None,
worker: str = None,
):
# EndTime
self.end_time = end_time
# ExitCode
self.exit_code = exit_code
# Output
self.output = output
# Pid
self.pid = pid
# Reason
self.reason = reason
# StartTime
self.start_time = start_time
# State
self.state = state
# UserStages
self.user_stages = user_stages
# Worker
self.worker = worker
def validate(self):
if self.user_stages:
for k in self.user_stages:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.end_time is not None:
result['EndTime'] = self.end_time
if self.exit_code is not None:
result['ExitCode'] = self.exit_code
if self.output is not None:
result['Output'] = self.output
if self.pid is not None:
result['Pid'] = self.pid
if self.reason is not None:
result['Reason'] = self.reason
if self.start_time is not None:
result['StartTime'] = self.start_time
if self.state is not None:
result['State'] = self.state
result['UserStages'] = []
if self.user_stages is not None:
for k in self.user_stages:
result['UserStages'].append(k.to_map() if k else None)
if self.worker is not None:
result['Worker'] = self.worker
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('EndTime') is not None:
self.end_time = m.get('EndTime')
if m.get('ExitCode') is not None:
self.exit_code = m.get('ExitCode')
if m.get('Output') is not None:
self.output = m.get('Output')
if m.get('Pid') is not None:
self.pid = m.get('Pid')
if m.get('Reason') is not None:
self.reason = m.get('Reason')
if m.get('StartTime') is not None:
self.start_time = m.get('StartTime')
if m.get('State') is not None:
self.state = m.get('State')
self.user_stages = []
if m.get('UserStages') is not None:
for k in m.get('UserStages'):
temp_model = UserStage()
self.user_stages.append(temp_model.from_map(k))
if m.get('Worker') is not None:
self.worker = m.get('Worker')
return self
class Scaling(TeaModel):
def __init__(
self,
adjustment_type: str = None,
adjustment_value: float = None,
max_worker_count: int = None,
metric_type: str = None,
metric_value: float = None,
min_worker_count: int = None,
tolerance_value: float = None,
):
# AdjustmentType
self.adjustment_type = adjustment_type
# AdjustmentValue
self.adjustment_value = adjustment_value
# MaxWorkerCount
self.max_worker_count = max_worker_count
# MetricType
self.metric_type = metric_type
# MetricValue
self.metric_value = metric_value
# MinWorkerCount
self.min_worker_count = min_worker_count
# ToleranceValue
self.tolerance_value = tolerance_value
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.adjustment_type is not None:
result['AdjustmentType'] = self.adjustment_type
if self.adjustment_value is not None:
result['AdjustmentValue'] = self.adjustment_value
if self.max_worker_count is not None:
result['MaxWorkerCount'] = self.max_worker_count
if self.metric_type is not None:
result['MetricType'] = self.metric_type
if self.metric_value is not None:
result['MetricValue'] = self.metric_value
if self.min_worker_count is not None:
result['MinWorkerCount'] = self.min_worker_count
if self.tolerance_value is not None:
result['ToleranceValue'] = self.tolerance_value
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('AdjustmentType') is not None:
self.adjustment_type = m.get('AdjustmentType')
if m.get('AdjustmentValue') is not None:
self.adjustment_value = m.get('AdjustmentValue')
if m.get('MaxWorkerCount') is not None:
self.max_worker_count = m.get('MaxWorkerCount')
if m.get('MetricType') is not None:
self.metric_type = m.get('MetricType')
if m.get('MetricValue') is not None:
self.metric_value = m.get('MetricValue')
if m.get('MinWorkerCount') is not None:
self.min_worker_count = m.get('MinWorkerCount')
if m.get('ToleranceValue') is not None:
self.tolerance_value = m.get('ToleranceValue')
return self
class Trigger(TeaModel):
def __init__(
self,
enabled: bool = None,
first_launch_time: str = None,
repeat_type: str = None,
repeat_value: str = None,
):
# Enabled
self.enabled = enabled
# FirstLaunchTime
self.first_launch_time = first_launch_time
# RepeatType
self.repeat_type = repeat_type
# RepeatValue
self.repeat_value = repeat_value
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.enabled is not None:
result['Enabled'] = self.enabled
if self.first_launch_time is not None:
result['FirstLaunchTime'] = self.first_launch_time
if self.repeat_type is not None:
result['RepeatType'] = self.repeat_type
if self.repeat_value is not None:
result['RepeatValue'] = self.repeat_value
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Enabled') is not None:
self.enabled = m.get('Enabled')
if m.get('FirstLaunchTime') is not None:
self.first_launch_time = m.get('FirstLaunchTime')
if m.get('RepeatType') is not None:
self.repeat_type = m.get('RepeatType')
if m.get('RepeatValue') is not None:
self.repeat_value = m.get('RepeatValue')
return self
class AutoScaling(TeaModel):
def __init__(
self,
scaling: Scaling = None,
trigger: Trigger = None,
):
# Scaling
self.scaling = scaling
# Trigger
self.trigger = trigger
def validate(self):
if self.scaling:
self.scaling.validate()
if self.trigger:
self.trigger.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.scaling is not None:
result['Scaling'] = self.scaling.to_map()
if self.trigger is not None:
result['Trigger'] = self.trigger.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Scaling') is not None:
temp_model = Scaling()
self.scaling = temp_model.from_map(m['Scaling'])
if m.get('Trigger') is not None:
temp_model = Trigger()
self.trigger = temp_model.from_map(m['Trigger'])
return self
class OSSLogging(TeaModel):
def __init__(
self,
bucket: str = None,
prefix: str = None,
):
# Bucket
self.bucket = bucket
# Prefix
self.prefix = prefix
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.bucket is not None:
result['Bucket'] = self.bucket
if self.prefix is not None:
result['Prefix'] = self.prefix
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Bucket') is not None:
self.bucket = m.get('Bucket')
if m.get('Prefix') is not None:
self.prefix = m.get('Prefix')
return self
class SLSLogging(TeaModel):
def __init__(
self,
logtail_config_name: str = None,
project: str = None,
store: str = None,
):
# LogtailConfigName
self.logtail_config_name = logtail_config_name
# Project
self.project = project
# Store
self.store = store
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.logtail_config_name is not None:
result['LogtailConfigName'] = self.logtail_config_name
if self.project is not None:
result['Project'] = self.project
if self.store is not None:
result['Store'] = self.store
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('LogtailConfigName') is not None:
self.logtail_config_name = m.get('LogtailConfigName')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('Store') is not None:
self.store = m.get('Store')
return self
class Logging(TeaModel):
def __init__(
self,
name: str = None,
oss: OSSLogging = None,
path: str = None,
sls: SLSLogging = None,
):
# Name
self.name = name
# OSS
self.oss = oss
# Path
self.path = path
# SLS
self.sls = sls
def validate(self):
if self.oss:
self.oss.validate()
if self.sls:
self.sls.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.name is not None:
result['Name'] = self.name
if self.oss is not None:
result['OSS'] = self.oss.to_map()
if self.path is not None:
result['Path'] = self.path
if self.sls is not None:
result['SLS'] = self.sls.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('OSS') is not None:
temp_model = OSSLogging()
self.oss = temp_model.from_map(m['OSS'])
if m.get('Path') is not None:
self.path = m.get('Path')
if m.get('SLS') is not None:
temp_model = SLSLogging()
self.sls = temp_model.from_map(m['SLS'])
return self
class MountPoint(TeaModel):
def __init__(
self,
mount_path: str = None,
name: str = None,
read_only: bool = None,
sub_path: str = None,
):
# MountPath
self.mount_path = mount_path
# Name
self.name = name
# ReadOnly
self.read_only = read_only
# SubPath
self.sub_path = sub_path
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.mount_path is not None:
result['MountPath'] = self.mount_path
if self.name is not None:
result['Name'] = self.name
if self.read_only is not None:
result['ReadOnly'] = self.read_only
if self.sub_path is not None:
result['SubPath'] = self.sub_path
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('MountPath') is not None:
self.mount_path = m.get('MountPath')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('ReadOnly') is not None:
self.read_only = m.get('ReadOnly')
if m.get('SubPath') is not None:
self.sub_path = m.get('SubPath')
return self
class ExposedPort(TeaModel):
def __init__(
self,
container_port: int = None,
host_ports: List[int] = None,
proto: str = None,
):
# ContainerPort
self.container_port = container_port
# HostPorts
self.host_ports = host_ports
# Proto
self.proto = proto
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.container_port is not None:
result['ContainerPort'] = self.container_port
if self.host_ports is not None:
result['HostPorts'] = self.host_ports
if self.proto is not None:
result['Proto'] = self.proto
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ContainerPort') is not None:
self.container_port = m.get('ContainerPort')
if m.get('HostPorts') is not None:
self.host_ports = m.get('HostPorts')
if m.get('Proto') is not None:
self.proto = m.get('Proto')
return self
class Docker(TeaModel):
def __init__(
self,
exposed_ports: List[ExposedPort] = None,
image: str = None,
):
# ExposedPorts
self.exposed_ports = exposed_ports
# Image
self.image = image
def validate(self):
if self.exposed_ports:
for k in self.exposed_ports:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
result['ExposedPorts'] = []
if self.exposed_ports is not None:
for k in self.exposed_ports:
result['ExposedPorts'].append(k.to_map() if k else None)
if self.image is not None:
result['Image'] = self.image
return result
def from_map(self, m: dict = None):
m = m or dict()
self.exposed_ports = []
if m.get('ExposedPorts') is not None:
for k in m.get('ExposedPorts'):
temp_model = ExposedPort()
self.exposed_ports.append(temp_model.from_map(k))
if m.get('Image') is not None:
self.image = m.get('Image')
return self
class BootstrapRuntime(TeaModel):
def __init__(
self,
docker: Docker = None,
):
# Docker
self.docker = docker
def validate(self):
if self.docker:
self.docker.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.docker is not None:
result['Docker'] = self.docker.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Docker') is not None:
temp_model = Docker()
self.docker = temp_model.from_map(m['Docker'])
return self
class NFSVolumeSource(TeaModel):
def __init__(
self,
path: str = None,
read_only: bool = None,
server: str = None,
version: str = None,
):
# Path
self.path = path
# ReadOnly
self.read_only = read_only
# Server
self.server = server
# Version
self.version = version
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.path is not None:
result['Path'] = self.path
if self.read_only is not None:
result['ReadOnly'] = self.read_only
if self.server is not None:
result['Server'] = self.server
if self.version is not None:
result['Version'] = self.version
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Path') is not None:
self.path = m.get('Path')
if m.get('ReadOnly') is not None:
self.read_only = m.get('ReadOnly')
if m.get('Server') is not None:
self.server = m.get('Server')
if m.get('Version') is not None:
self.version = m.get('Version')
return self
class OSSVolumeSource(TeaModel):
def __init__(
self,
bucket: str = None,
object: str = None,
prefix: str = None,
read_only: bool = None,
):
# Bucket
self.bucket = bucket
# Object
self.object = object
# Prefix
self.prefix = prefix
# ReadOnly
self.read_only = read_only
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.bucket is not None:
result['Bucket'] = self.bucket
if self.object is not None:
result['Object'] = self.object
if self.prefix is not None:
result['Prefix'] = self.prefix
if self.read_only is not None:
result['ReadOnly'] = self.read_only
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Bucket') is not None:
self.bucket = m.get('Bucket')
if m.get('Object') is not None:
self.object = m.get('Object')
if m.get('Prefix') is not None:
self.prefix = m.get('Prefix')
if m.get('ReadOnly') is not None:
self.read_only = m.get('ReadOnly')
return self
class PDSVolumeSource(TeaModel):
def __init__(
self,
domain: str = None,
drive: str = None,
object: str = None,
prefix: str = None,
read_only: bool = None,
):
# Domain
self.domain = domain
# Drive
self.drive = drive
# Object
self.object = object
# Prefix
self.prefix = prefix
# ReadOnly
self.read_only = read_only
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.domain is not None:
result['Domain'] = self.domain
if self.drive is not None:
result['Drive'] = self.drive
if self.object is not None:
result['Object'] = self.object
if self.prefix is not None:
result['Prefix'] = self.prefix
if self.read_only is not None:
result['ReadOnly'] = self.read_only
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Domain') is not None:
self.domain = m.get('Domain')
if m.get('Drive') is not None:
self.drive = m.get('Drive')
if m.get('Object') is not None:
self.object = m.get('Object')
if m.get('Prefix') is not None:
self.prefix = m.get('Prefix')
if m.get('ReadOnly') is not None:
self.read_only = m.get('ReadOnly')
return self
class Volume(TeaModel):
def __init__(
self,
nfs: NFSVolumeSource = None,
name: str = None,
oss: OSSVolumeSource = None,
pds: PDSVolumeSource = None,
):
# NFS
self.nfs = nfs
# Name
self.name = name
# OSS
self.oss = oss
# PDS
self.pds = pds
def validate(self):
if self.nfs:
self.nfs.validate()
if self.oss:
self.oss.validate()
if self.pds:
self.pds.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.nfs is not None:
result['NFS'] = self.nfs.to_map()
if self.name is not None:
result['Name'] = self.name
if self.oss is not None:
result['OSS'] = self.oss.to_map()
if self.pds is not None:
result['PDS'] = self.pds.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('NFS') is not None:
temp_model = NFSVolumeSource()
self.nfs = temp_model.from_map(m['NFS'])
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('OSS') is not None:
temp_model = OSSVolumeSource()
self.oss = temp_model.from_map(m['OSS'])
if m.get('PDS') is not None:
temp_model = PDSVolumeSource()
self.pds = temp_model.from_map(m['PDS'])
return self
class Bootstrap(TeaModel):
def __init__(
self,
background: bool = None,
command: List[str] = None,
envs: Dict[str, str] = None,
loggings: Logging = None,
mount_points: List[MountPoint] = None,
package_uri: str = None,
running_timeout: int = None,
runtimes: BootstrapRuntime = None,
volumes: List[Volume] = None,
):
# Background
self.background = background
# Command
self.command = command
# Envs
self.envs = envs
# Loggings
self.loggings = loggings
# MountPoints
self.mount_points = mount_points
# PackageUri
self.package_uri = package_uri
# RunningTimeout
self.running_timeout = running_timeout
# Runtimes
self.runtimes = runtimes
# Volumes
self.volumes = volumes
def validate(self):
if self.loggings:
self.loggings.validate()
if self.mount_points:
for k in self.mount_points:
if k:
k.validate()
if self.runtimes:
self.runtimes.validate()
if self.volumes:
for k in self.volumes:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.background is not None:
result['Background'] = self.background
if self.command is not None:
result['Command'] = self.command
if self.envs is not None:
result['Envs'] = self.envs
if self.loggings is not None:
result['Loggings'] = self.loggings.to_map()
result['MountPoints'] = []
if self.mount_points is not None:
for k in self.mount_points:
result['MountPoints'].append(k.to_map() if k else None)
if self.package_uri is not None:
result['PackageUri'] = self.package_uri
if self.running_timeout is not None:
result['RunningTimeout'] = self.running_timeout
if self.runtimes is not None:
result['Runtimes'] = self.runtimes.to_map()
result['Volumes'] = []
if self.volumes is not None:
for k in self.volumes:
result['Volumes'].append(k.to_map() if k else None)
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Background') is not None:
self.background = m.get('Background')
if m.get('Command') is not None:
self.command = m.get('Command')
if m.get('Envs') is not None:
self.envs = m.get('Envs')
if m.get('Loggings') is not None:
temp_model = Logging()
self.loggings = temp_model.from_map(m['Loggings'])
self.mount_points = []
if m.get('MountPoints') is not None:
for k in m.get('MountPoints'):
temp_model = MountPoint()
self.mount_points.append(temp_model.from_map(k))
if m.get('PackageUri') is not None:
self.package_uri = m.get('PackageUri')
if m.get('RunningTimeout') is not None:
self.running_timeout = m.get('RunningTimeout')
if m.get('Runtimes') is not None:
temp_model = BootstrapRuntime()
self.runtimes = temp_model.from_map(m['Runtimes'])
self.volumes = []
if m.get('Volumes') is not None:
for k in m.get('Volumes'):
temp_model = Volume()
self.volumes.append(temp_model.from_map(k))
return self
class ServiceRoleNode(TeaModel):
def __init__(
self,
assume_role_for: str = None,
role: str = None,
role_type: str = None,
):
# AssumeRoleFor
self.assume_role_for = assume_role_for
# Role
self.role = role
# RoleType
self.role_type = role_type
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.assume_role_for is not None:
result['AssumeRoleFor'] = self.assume_role_for
if self.role is not None:
result['Role'] = self.role
if self.role_type is not None:
result['RoleType'] = self.role_type
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('AssumeRoleFor') is not None:
self.assume_role_for = m.get('AssumeRoleFor')
if m.get('Role') is not None:
self.role = m.get('Role')
if m.get('RoleType') is not None:
self.role_type = m.get('RoleType')
return self
class CredentialConfig(TeaModel):
def __init__(
self,
chain: List[ServiceRoleNode] = None,
policy: str = None,
service_role: str = None,
):
# Chain
self.chain = chain
# Policy
self.policy = policy
# ServiceRole
self.service_role = service_role
def validate(self):
if self.chain:
for k in self.chain:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
result['Chain'] = []
if self.chain is not None:
for k in self.chain:
result['Chain'].append(k.to_map() if k else None)
if self.policy is not None:
result['Policy'] = self.policy
if self.service_role is not None:
result['ServiceRole'] = self.service_role
return result
def from_map(self, m: dict = None):
m = m or dict()
self.chain = []
if m.get('Chain') is not None:
for k in m.get('Chain'):
temp_model = ServiceRoleNode()
self.chain.append(temp_model.from_map(k))
if m.get('Policy') is not None:
self.policy = m.get('Policy')
if m.get('ServiceRole') is not None:
self.service_role = m.get('ServiceRole')
return self
class ECS(TeaModel):
def __init__(
self,
hostname_prefix: str = None,
instance_type: str = None,
password_inherit: bool = None,
resource_type: str = None,
spot_price_limit: str = None,
spot_strategy: str = None,
system_disk_size: int = None,
system_disk_type: str = None,
vmimage: str = None,
):
# HostnamePrefix
self.hostname_prefix = hostname_prefix
# InstanceType
self.instance_type = instance_type
# PasswordInherit
self.password_inherit = password_inherit
# ResourceType
self.resource_type = resource_type
# SpotPriceLimit
self.spot_price_limit = spot_price_limit
# SpotStrategy
self.spot_strategy = spot_strategy
# SystemDiskSize
self.system_disk_size = system_disk_size
# SystemDiskType
self.system_disk_type = system_disk_type
# VMImage
self.vmimage = vmimage
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.hostname_prefix is not None:
result['HostnamePrefix'] = self.hostname_prefix
if self.instance_type is not None:
result['InstanceType'] = self.instance_type
if self.password_inherit is not None:
result['PasswordInherit'] = self.password_inherit
if self.resource_type is not None:
result['ResourceType'] = self.resource_type
if self.spot_price_limit is not None:
result['SpotPriceLimit'] = self.spot_price_limit
if self.spot_strategy is not None:
result['SpotStrategy'] = self.spot_strategy
if self.system_disk_size is not None:
result['SystemDiskSize'] = self.system_disk_size
if self.system_disk_type is not None:
result['SystemDiskType'] = self.system_disk_type
if self.vmimage is not None:
result['VMImage'] = self.vmimage
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostnamePrefix') is not None:
self.hostname_prefix = m.get('HostnamePrefix')
if m.get('InstanceType') is not None:
self.instance_type = m.get('InstanceType')
if m.get('PasswordInherit') is not None:
self.password_inherit = m.get('PasswordInherit')
if m.get('ResourceType') is not None:
self.resource_type = m.get('ResourceType')
if m.get('SpotPriceLimit') is not None:
self.spot_price_limit = m.get('SpotPriceLimit')
if m.get('SpotStrategy') is not None:
self.spot_strategy = m.get('SpotStrategy')
if m.get('SystemDiskSize') is not None:
self.system_disk_size = m.get('SystemDiskSize')
if m.get('SystemDiskType') is not None:
self.system_disk_type = m.get('SystemDiskType')
if m.get('VMImage') is not None:
self.vmimage = m.get('VMImage')
return self
class ExecAction(TeaModel):
def __init__(
self,
command: List[str] = None,
):
# Command
self.command = command
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.command is not None:
result['Command'] = self.command
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Command') is not None:
self.command = m.get('Command')
return self
class HTTPHeader(TeaModel):
def __init__(
self,
name: str = None,
value: str = None,
):
# Name
self.name = name
# Value
self.value = value
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.name is not None:
result['Name'] = self.name
if self.value is not None:
result['Value'] = self.value
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Value') is not None:
self.value = m.get('Value')
return self
class HTTPGetAction(TeaModel):
def __init__(
self,
httpheaders: List[HTTPHeader] = None,
host: str = None,
path: str = None,
port: int = None,
scheme: str = None,
):
# HTTPHeaders
self.httpheaders = httpheaders
# Host
self.host = host
# Path
self.path = path
# Port
self.port = port
# Scheme
self.scheme = scheme
def validate(self):
if self.httpheaders:
for k in self.httpheaders:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
result['HTTPHeaders'] = []
if self.httpheaders is not None:
for k in self.httpheaders:
result['HTTPHeaders'].append(k.to_map() if k else None)
if self.host is not None:
result['Host'] = self.host
if self.path is not None:
result['Path'] = self.path
if self.port is not None:
result['Port'] = self.port
if self.scheme is not None:
result['Scheme'] = self.scheme
return result
def from_map(self, m: dict = None):
m = m or dict()
self.httpheaders = []
if m.get('HTTPHeaders') is not None:
for k in m.get('HTTPHeaders'):
temp_model = HTTPHeader()
self.httpheaders.append(temp_model.from_map(k))
if m.get('Host') is not None:
self.host = m.get('Host')
if m.get('Path') is not None:
self.path = m.get('Path')
if m.get('Port') is not None:
self.port = m.get('Port')
if m.get('Scheme') is not None:
self.scheme = m.get('Scheme')
return self
class Handler(TeaModel):
def __init__(
self,
exec: ExecAction = None,
httpget: HTTPGetAction = None,
):
# Exec
self.exec = exec
# HTTPGet
self.httpget = httpget
def validate(self):
if self.exec:
self.exec.validate()
if self.httpget:
self.httpget.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.exec is not None:
result['Exec'] = self.exec.to_map()
if self.httpget is not None:
result['HTTPGet'] = self.httpget.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Exec') is not None:
temp_model = ExecAction()
self.exec = temp_model.from_map(m['Exec'])
if m.get('HTTPGet') is not None:
temp_model = HTTPGetAction()
self.httpget = temp_model.from_map(m['HTTPGet'])
return self
class Probe(TeaModel):
def __init__(
self,
failure_threshold: int = None,
handler: Handler = None,
initial_delay_seconds: int = None,
period_seconds: int = None,
success_threshold: int = None,
timeout_seconds: int = None,
):
# FailureThreshold
self.failure_threshold = failure_threshold
# Handler
self.handler = handler
# InitialDelaySeconds
self.initial_delay_seconds = initial_delay_seconds
# PeriodSeconds
self.period_seconds = period_seconds
# SuccessThreshold
self.success_threshold = success_threshold
# TimeoutSeconds
self.timeout_seconds = timeout_seconds
def validate(self):
if self.handler:
self.handler.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.failure_threshold is not None:
result['FailureThreshold'] = self.failure_threshold
if self.handler is not None:
result['Handler'] = self.handler.to_map()
if self.initial_delay_seconds is not None:
result['InitialDelaySeconds'] = self.initial_delay_seconds
if self.period_seconds is not None:
result['PeriodSeconds'] = self.period_seconds
if self.success_threshold is not None:
result['SuccessThreshold'] = self.success_threshold
if self.timeout_seconds is not None:
result['TimeoutSeconds'] = self.timeout_seconds
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('FailureThreshold') is not None:
self.failure_threshold = m.get('FailureThreshold')
if m.get('Handler') is not None:
temp_model = Handler()
self.handler = temp_model.from_map(m['Handler'])
if m.get('InitialDelaySeconds') is not None:
self.initial_delay_seconds = m.get('InitialDelaySeconds')
if m.get('PeriodSeconds') is not None:
self.period_seconds = m.get('PeriodSeconds')
if m.get('SuccessThreshold') is not None:
self.success_threshold = m.get('SuccessThreshold')
if m.get('TimeoutSeconds') is not None:
self.timeout_seconds = m.get('TimeoutSeconds')
return self
class SLB(TeaModel):
def __init__(
self,
slbid: str = None,
):
# SLBId
self.slbid = slbid
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.slbid is not None:
result['SLBId'] = self.slbid
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('SLBId') is not None:
self.slbid = m.get('SLBId')
return self
class UpgradePolicy(TeaModel):
def __init__(
self,
upgrade_ratio: float = None,
):
# UpgradeRatio
self.upgrade_ratio = upgrade_ratio
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.upgrade_ratio is not None:
result['UpgradeRatio'] = self.upgrade_ratio
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('UpgradeRatio') is not None:
self.upgrade_ratio = m.get('UpgradeRatio')
return self
class VPC(TeaModel):
def __init__(
self,
security_groups: List[str] = None,
vpcid: str = None,
v_switches: List[str] = None,
):
# SecurityGroups
self.security_groups = security_groups
# VPCId
self.vpcid = vpcid
# VSwitches
self.v_switches = v_switches
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.security_groups is not None:
result['SecurityGroups'] = self.security_groups
if self.vpcid is not None:
result['VPCId'] = self.vpcid
if self.v_switches is not None:
result['VSwitches'] = self.v_switches
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('SecurityGroups') is not None:
self.security_groups = m.get('SecurityGroups')
if m.get('VPCId') is not None:
self.vpcid = m.get('VPCId')
if m.get('VSwitches') is not None:
self.v_switches = m.get('VSwitches')
return self
class ClusterDefinition(TeaModel):
def __init__(
self,
auto_scaling: List[AutoScaling] = None,
bootstrap: Bootstrap = None,
credential_configs: CredentialConfig = None,
docker: Docker = None,
ecs: ECS = None,
liveness_probe: Probe = None,
managed_job_queue: bool = None,
mount_points: List[MountPoint] = None,
provider_type: str = None,
resources: Dict[str, str] = None,
slb: SLB = None,
scaling: Scaling = None,
startup_probe: Probe = None,
upgrade_policy: UpgradePolicy = None,
vpc: VPC = None,
volumes: List[Volume] = None,
worker_type: str = None,
):
# AutoScaling
self.auto_scaling = auto_scaling
# Bootstrap
self.bootstrap = bootstrap
# CredentialConfigs
self.credential_configs = credential_configs
# Docker
self.docker = docker
# ECS
self.ecs = ecs
# LivenessProbe
self.liveness_probe = liveness_probe
# ManagedJobQueue
self.managed_job_queue = managed_job_queue
# MountPoints
self.mount_points = mount_points
# ProviderType
self.provider_type = provider_type
# Resources
self.resources = resources
# SLB
self.slb = slb
# Scaling
self.scaling = scaling
# StartupProbe
self.startup_probe = startup_probe
# UpgradePolicy
self.upgrade_policy = upgrade_policy
# VPC
self.vpc = vpc
# Volumes
self.volumes = volumes
# WorkerType
self.worker_type = worker_type
def validate(self):
if self.auto_scaling:
for k in self.auto_scaling:
if k:
k.validate()
if self.bootstrap:
self.bootstrap.validate()
if self.credential_configs:
self.credential_configs.validate()
if self.docker:
self.docker.validate()
if self.ecs:
self.ecs.validate()
if self.liveness_probe:
self.liveness_probe.validate()
if self.mount_points:
for k in self.mount_points:
if k:
k.validate()
if self.slb:
self.slb.validate()
if self.scaling:
self.scaling.validate()
if self.startup_probe:
self.startup_probe.validate()
if self.upgrade_policy:
self.upgrade_policy.validate()
if self.vpc:
self.vpc.validate()
if self.volumes:
for k in self.volumes:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
result['AutoScaling'] = []
if self.auto_scaling is not None:
for k in self.auto_scaling:
result['AutoScaling'].append(k.to_map() if k else None)
if self.bootstrap is not None:
result['Bootstrap'] = self.bootstrap.to_map()
if self.credential_configs is not None:
result['CredentialConfigs'] = self.credential_configs.to_map()
if self.docker is not None:
result['Docker'] = self.docker.to_map()
if self.ecs is not None:
result['ECS'] = self.ecs.to_map()
if self.liveness_probe is not None:
result['LivenessProbe'] = self.liveness_probe.to_map()
if self.managed_job_queue is not None:
result['ManagedJobQueue'] = self.managed_job_queue
result['MountPoints'] = []
if self.mount_points is not None:
for k in self.mount_points:
result['MountPoints'].append(k.to_map() if k else None)
if self.provider_type is not None:
result['ProviderType'] = self.provider_type
if self.resources is not None:
result['Resources'] = self.resources
if self.slb is not None:
result['SLB'] = self.slb.to_map()
if self.scaling is not None:
result['Scaling'] = self.scaling.to_map()
if self.startup_probe is not None:
result['StartupProbe'] = self.startup_probe.to_map()
if self.upgrade_policy is not None:
result['UpgradePolicy'] = self.upgrade_policy.to_map()
if self.vpc is not None:
result['VPC'] = self.vpc.to_map()
result['Volumes'] = []
if self.volumes is not None:
for k in self.volumes:
result['Volumes'].append(k.to_map() if k else None)
if self.worker_type is not None:
result['WorkerType'] = self.worker_type
return result
def from_map(self, m: dict = None):
m = m or dict()
self.auto_scaling = []
if m.get('AutoScaling') is not None:
for k in m.get('AutoScaling'):
temp_model = AutoScaling()
self.auto_scaling.append(temp_model.from_map(k))
if m.get('Bootstrap') is not None:
temp_model = Bootstrap()
self.bootstrap = temp_model.from_map(m['Bootstrap'])
if m.get('CredentialConfigs') is not None:
temp_model = CredentialConfig()
self.credential_configs = temp_model.from_map(m['CredentialConfigs'])
if m.get('Docker') is not None:
temp_model = Docker()
self.docker = temp_model.from_map(m['Docker'])
if m.get('ECS') is not None:
temp_model = ECS()
self.ecs = temp_model.from_map(m['ECS'])
if m.get('LivenessProbe') is not None:
temp_model = Probe()
self.liveness_probe = temp_model.from_map(m['LivenessProbe'])
if m.get('ManagedJobQueue') is not None:
self.managed_job_queue = m.get('ManagedJobQueue')
self.mount_points = []
if m.get('MountPoints') is not None:
for k in m.get('MountPoints'):
temp_model = MountPoint()
self.mount_points.append(temp_model.from_map(k))
if m.get('ProviderType') is not None:
self.provider_type = m.get('ProviderType')
if m.get('Resources') is not None:
self.resources = m.get('Resources')
if m.get('SLB') is not None:
temp_model = SLB()
self.slb = temp_model.from_map(m['SLB'])
if m.get('Scaling') is not None:
temp_model = Scaling()
self.scaling = temp_model.from_map(m['Scaling'])
if m.get('StartupProbe') is not None:
temp_model = Probe()
self.startup_probe = temp_model.from_map(m['StartupProbe'])
if m.get('UpgradePolicy') is not None:
temp_model = UpgradePolicy()
self.upgrade_policy = temp_model.from_map(m['UpgradePolicy'])
if m.get('VPC') is not None:
temp_model = VPC()
self.vpc = temp_model.from_map(m['VPC'])
self.volumes = []
if m.get('Volumes') is not None:
for k in m.get('Volumes'):
temp_model = Volume()
self.volumes.append(temp_model.from_map(k))
if m.get('WorkerType') is not None:
self.worker_type = m.get('WorkerType')
return self
class Errors(TeaModel):
def __init__(
self,
action: str = None,
code: str = None,
message: str = None,
repeat: int = None,
):
# Action
self.action = action
# Code
self.code = code
# Message
self.message = message
# Repeat
self.repeat = repeat
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.action is not None:
result['Action'] = self.action
if self.code is not None:
result['Code'] = self.code
if self.message is not None:
result['Message'] = self.message
if self.repeat is not None:
result['Repeat'] = self.repeat
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Action') is not None:
self.action = m.get('Action')
if m.get('Code') is not None:
self.code = m.get('Code')
if m.get('Message') is not None:
self.message = m.get('Message')
if m.get('Repeat') is not None:
self.repeat = m.get('Repeat')
return self
class Conditions(TeaModel):
def __init__(
self,
condition: str = None,
errors: List[Errors] = None,
last_probe_time: str = None,
last_transition_time: str = None,
status: str = None,
):
# Condition
self.condition = condition
# Errors
self.errors = errors
# LastProbeTime
self.last_probe_time = last_probe_time
# LastTransitionTime
self.last_transition_time = last_transition_time
# Status
self.status = status
def validate(self):
if self.errors:
for k in self.errors:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.condition is not None:
result['Condition'] = self.condition
result['Errors'] = []
if self.errors is not None:
for k in self.errors:
result['Errors'].append(k.to_map() if k else None)
if self.last_probe_time is not None:
result['LastProbeTime'] = self.last_probe_time
if self.last_transition_time is not None:
result['LastTransitionTime'] = self.last_transition_time
if self.status is not None:
result['Status'] = self.status
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Condition') is not None:
self.condition = m.get('Condition')
self.errors = []
if m.get('Errors') is not None:
for k in m.get('Errors'):
temp_model = Errors()
self.errors.append(temp_model.from_map(k))
if m.get('LastProbeTime') is not None:
self.last_probe_time = m.get('LastProbeTime')
if m.get('LastTransitionTime') is not None:
self.last_transition_time = m.get('LastTransitionTime')
if m.get('Status') is not None:
self.status = m.get('Status')
return self
class OSSDescription(TeaModel):
def __init__(
self,
bucket: str = None,
object: str = None,
prefix: str = None,
):
# Bucket
self.bucket = bucket
# Object
self.object = object
# Prefix
self.prefix = prefix
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.bucket is not None:
result['Bucket'] = self.bucket
if self.object is not None:
result['Object'] = self.object
if self.prefix is not None:
result['Prefix'] = self.prefix
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Bucket') is not None:
self.bucket = m.get('Bucket')
if m.get('Object') is not None:
self.object = m.get('Object')
if m.get('Prefix') is not None:
self.prefix = m.get('Prefix')
return self
class PDSDescription(TeaModel):
def __init__(
self,
domain: str = None,
drive: str = None,
object: str = None,
prefix: str = None,
):
# Domain
self.domain = domain
# Drive
self.drive = drive
# Object
self.object = object
# Prefix
self.prefix = prefix
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.domain is not None:
result['Domain'] = self.domain
if self.drive is not None:
result['Drive'] = self.drive
if self.object is not None:
result['Object'] = self.object
if self.prefix is not None:
result['Prefix'] = self.prefix
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Domain') is not None:
self.domain = m.get('Domain')
if m.get('Drive') is not None:
self.drive = m.get('Drive')
if m.get('Object') is not None:
self.object = m.get('Object')
if m.get('Prefix') is not None:
self.prefix = m.get('Prefix')
return self
class Destination(TeaModel):
def __init__(
self,
oss: OSSDescription = None,
pds: PDSDescription = None,
):
self.oss = oss
self.pds = pds
def validate(self):
if self.oss:
self.oss.validate()
if self.pds:
self.pds.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.oss is not None:
result['OSS'] = self.oss.to_map()
if self.pds is not None:
result['PDS'] = self.pds.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('OSS') is not None:
temp_model = OSSDescription()
self.oss = temp_model.from_map(m['OSS'])
if m.get('PDS') is not None:
temp_model = PDSDescription()
self.pds = temp_model.from_map(m['PDS'])
return self
class Exec(TeaModel):
def __init__(
self,
exec: ExecAction = None,
):
# Exec
self.exec = exec
def validate(self):
if self.exec:
self.exec.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.exec is not None:
result['Exec'] = self.exec.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Exec') is not None:
temp_model = ExecAction()
self.exec = temp_model.from_map(m['Exec'])
return self
class FailStrategy(TeaModel):
def __init__(
self,
max_retries: int = None,
running_timeout: int = None,
success_code: List[int] = None,
waiting_timeout: int = None,
):
# MaxRetries
self.max_retries = max_retries
# RunningTimeout
self.running_timeout = running_timeout
# SuccessCode
self.success_code = success_code
# WaitingTimeout
self.waiting_timeout = waiting_timeout
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.max_retries is not None:
result['MaxRetries'] = self.max_retries
if self.running_timeout is not None:
result['RunningTimeout'] = self.running_timeout
if self.success_code is not None:
result['SuccessCode'] = self.success_code
if self.waiting_timeout is not None:
result['WaitingTimeout'] = self.waiting_timeout
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('MaxRetries') is not None:
self.max_retries = m.get('MaxRetries')
if m.get('RunningTimeout') is not None:
self.running_timeout = m.get('RunningTimeout')
if m.get('SuccessCode') is not None:
self.success_code = m.get('SuccessCode')
if m.get('WaitingTimeout') is not None:
self.waiting_timeout = m.get('WaitingTimeout')
return self
class HTTPGet(TeaModel):
def __init__(
self,
httpget: HTTPGetAction = None,
):
# HTTPGet
self.httpget = httpget
def validate(self):
if self.httpget:
self.httpget.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.httpget is not None:
result['HTTPGet'] = self.httpget.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HTTPGet') is not None:
temp_model = HTTPGetAction()
self.httpget = temp_model.from_map(m['HTTPGet'])
return self
class Source(TeaModel):
def __init__(
self,
oss: OSSDescription = None,
pds: PDSDescription = None,
):
self.oss = oss
self.pds = pds
def validate(self):
if self.oss:
self.oss.validate()
if self.pds:
self.pds.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.oss is not None:
result['OSS'] = self.oss.to_map()
if self.pds is not None:
result['PDS'] = self.pds.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('OSS') is not None:
temp_model = OSSDescription()
self.oss = temp_model.from_map(m['OSS'])
if m.get('PDS') is not None:
temp_model = PDSDescription()
self.pds = temp_model.from_map(m['PDS'])
return self
class Input(TeaModel):
def __init__(
self,
file_mode: str = None,
file_path: str = None,
source: Source = None,
):
# FileMode
self.file_mode = file_mode
# FilePath
self.file_path = file_path
self.source = source
def validate(self):
if self.source:
self.source.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.file_mode is not None:
result['FileMode'] = self.file_mode
if self.file_path is not None:
result['FilePath'] = self.file_path
if self.source is not None:
result['Source'] = self.source.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('FileMode') is not None:
self.file_mode = m.get('FileMode')
if m.get('FilePath') is not None:
self.file_path = m.get('FilePath')
if m.get('Source') is not None:
temp_model = Source()
self.source = temp_model.from_map(m['Source'])
return self
class MNSNotification(TeaModel):
def __init__(
self,
endpoint: str = None,
filters: List[str] = None,
topic: str = None,
):
# Endpoint
self.endpoint = endpoint
# Filters
self.filters = filters
# Topic
self.topic = topic
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.endpoint is not None:
result['Endpoint'] = self.endpoint
if self.filters is not None:
result['Filters'] = self.filters
if self.topic is not None:
result['Topic'] = self.topic
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Endpoint') is not None:
self.endpoint = m.get('Endpoint')
if m.get('Filters') is not None:
self.filters = m.get('Filters')
if m.get('Topic') is not None:
self.topic = m.get('Topic')
return self
class Notification(TeaModel):
def __init__(
self,
mns: MNSNotification = None,
):
# MNS
self.mns = mns
def validate(self):
if self.mns:
self.mns.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.mns is not None:
result['MNS'] = self.mns.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('MNS') is not None:
temp_model = MNSNotification()
self.mns = temp_model.from_map(m['MNS'])
return self
class Output(TeaModel):
def __init__(
self,
destination: Destination = None,
file_pattern: str = None,
upload_conditions: List[str] = None,
upload_mode: str = None,
):
# Destination
self.destination = destination
# FilePattern
self.file_pattern = file_pattern
# UploadConditions
self.upload_conditions = upload_conditions
# UploadMode
self.upload_mode = upload_mode
def validate(self):
if self.destination:
self.destination.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.destination is not None:
result['Destination'] = self.destination.to_map()
if self.file_pattern is not None:
result['FilePattern'] = self.file_pattern
if self.upload_conditions is not None:
result['UploadConditions'] = self.upload_conditions
if self.upload_mode is not None:
result['UploadMode'] = self.upload_mode
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Destination') is not None:
temp_model = Destination()
self.destination = temp_model.from_map(m['Destination'])
if m.get('FilePattern') is not None:
self.file_pattern = m.get('FilePattern')
if m.get('UploadConditions') is not None:
self.upload_conditions = m.get('UploadConditions')
if m.get('UploadMode') is not None:
self.upload_mode = m.get('UploadMode')
return self
class ReleaseCondition(TeaModel):
def __init__(
self,
state: str = None,
ttlseconds: int = None,
):
# State
self.state = state
# TTLSeconds
self.ttlseconds = ttlseconds
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.state is not None:
result['State'] = self.state
if self.ttlseconds is not None:
result['TTLSeconds'] = self.ttlseconds
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('State') is not None:
self.state = m.get('State')
if m.get('TTLSeconds') is not None:
self.ttlseconds = m.get('TTLSeconds')
return self
class ReleaseStrategy(TeaModel):
def __init__(
self,
release_conditions: List[ReleaseCondition] = None,
):
# ReleaseConditions
self.release_conditions = release_conditions
def validate(self):
if self.release_conditions:
for k in self.release_conditions:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
result['ReleaseConditions'] = []
if self.release_conditions is not None:
for k in self.release_conditions:
result['ReleaseConditions'].append(k.to_map() if k else None)
return result
def from_map(self, m: dict = None):
m = m or dict()
self.release_conditions = []
if m.get('ReleaseConditions') is not None:
for k in m.get('ReleaseConditions'):
temp_model = ReleaseCondition()
self.release_conditions.append(temp_model.from_map(k))
return self
class Runtimes(TeaModel):
def __init__(
self,
docker: Docker = None,
ecs: ECS = None,
job_queue: str = None,
vpc: VPC = None,
):
# Docker
self.docker = docker
# ECS
self.ecs = ecs
# JobQueue
self.job_queue = job_queue
# VPC
self.vpc = vpc
def validate(self):
if self.docker:
self.docker.validate()
if self.ecs:
self.ecs.validate()
if self.vpc:
self.vpc.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.docker is not None:
result['Docker'] = self.docker.to_map()
if self.ecs is not None:
result['ECS'] = self.ecs.to_map()
if self.job_queue is not None:
result['JobQueue'] = self.job_queue
if self.vpc is not None:
result['VPC'] = self.vpc.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Docker') is not None:
temp_model = Docker()
self.docker = temp_model.from_map(m['Docker'])
if m.get('ECS') is not None:
temp_model = ECS()
self.ecs = temp_model.from_map(m['ECS'])
if m.get('JobQueue') is not None:
self.job_queue = m.get('JobQueue')
if m.get('VPC') is not None:
temp_model = VPC()
self.vpc = temp_model.from_map(m['VPC'])
return self
class JobDefinition(TeaModel):
def __init__(
self,
command: List[str] = None,
credential_config: CredentialConfig = None,
envs: Dict[str, str] = None,
fail_strategy: FailStrategy = None,
inputs: List[Input] = None,
labels: Dict[str, str] = None,
loggings: Logging = None,
mount_points: List[MountPoint] = None,
notification: Notification = None,
outputs: List[Output] = None,
package_uri: str = None,
release_strategy: ReleaseStrategy = None,
resources: Dict[str, str] = None,
runtimes: Runtimes = None,
user_data: Dict[str, str] = None,
volumes: List[Volume] = None,
):
# Command
self.command = command
# CredentialConfig
self.credential_config = credential_config
# Envs
self.envs = envs
# FailStrategy
self.fail_strategy = fail_strategy
# Inputs
self.inputs = inputs
# Labels
self.labels = labels
# Loggings
self.loggings = loggings
# MountPoints
self.mount_points = mount_points
# Notification
self.notification = notification
# Outputs
self.outputs = outputs
# PackageUri
self.package_uri = package_uri
# ReleaseStrategy
self.release_strategy = release_strategy
# Resources
self.resources = resources
# Runtimes
self.runtimes = runtimes
# UserData
self.user_data = user_data
# Volumes
self.volumes = volumes
def validate(self):
if self.credential_config:
self.credential_config.validate()
if self.fail_strategy:
self.fail_strategy.validate()
if self.inputs:
for k in self.inputs:
if k:
k.validate()
if self.loggings:
self.loggings.validate()
if self.mount_points:
for k in self.mount_points:
if k:
k.validate()
if self.notification:
self.notification.validate()
if self.outputs:
for k in self.outputs:
if k:
k.validate()
if self.release_strategy:
self.release_strategy.validate()
if self.runtimes:
self.runtimes.validate()
if self.volumes:
for k in self.volumes:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.command is not None:
result['Command'] = self.command
if self.credential_config is not None:
result['CredentialConfig'] = self.credential_config.to_map()
if self.envs is not None:
result['Envs'] = self.envs
if self.fail_strategy is not None:
result['FailStrategy'] = self.fail_strategy.to_map()
result['Inputs'] = []
if self.inputs is not None:
for k in self.inputs:
result['Inputs'].append(k.to_map() if k else None)
if self.labels is not None:
result['Labels'] = self.labels
if self.loggings is not None:
result['Loggings'] = self.loggings.to_map()
result['MountPoints'] = []
if self.mount_points is not None:
for k in self.mount_points:
result['MountPoints'].append(k.to_map() if k else None)
if self.notification is not None:
result['Notification'] = self.notification.to_map()
result['Outputs'] = []
if self.outputs is not None:
for k in self.outputs:
result['Outputs'].append(k.to_map() if k else None)
if self.package_uri is not None:
result['PackageUri'] = self.package_uri
if self.release_strategy is not None:
result['ReleaseStrategy'] = self.release_strategy.to_map()
if self.resources is not None:
result['Resources'] = self.resources
if self.runtimes is not None:
result['Runtimes'] = self.runtimes.to_map()
if self.user_data is not None:
result['UserData'] = self.user_data
result['Volumes'] = []
if self.volumes is not None:
for k in self.volumes:
result['Volumes'].append(k.to_map() if k else None)
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Command') is not None:
self.command = m.get('Command')
if m.get('CredentialConfig') is not None:
temp_model = CredentialConfig()
self.credential_config = temp_model.from_map(m['CredentialConfig'])
if m.get('Envs') is not None:
self.envs = m.get('Envs')
if m.get('FailStrategy') is not None:
temp_model = FailStrategy()
self.fail_strategy = temp_model.from_map(m['FailStrategy'])
self.inputs = []
if m.get('Inputs') is not None:
for k in m.get('Inputs'):
temp_model = Input()
self.inputs.append(temp_model.from_map(k))
if m.get('Labels') is not None:
self.labels = m.get('Labels')
if m.get('Loggings') is not None:
temp_model = Logging()
self.loggings = temp_model.from_map(m['Loggings'])
self.mount_points = []
if m.get('MountPoints') is not None:
for k in m.get('MountPoints'):
temp_model = MountPoint()
self.mount_points.append(temp_model.from_map(k))
if m.get('Notification') is not None:
temp_model = Notification()
self.notification = temp_model.from_map(m['Notification'])
self.outputs = []
if m.get('Outputs') is not None:
for k in m.get('Outputs'):
temp_model = Output()
self.outputs.append(temp_model.from_map(k))
if m.get('PackageUri') is not None:
self.package_uri = m.get('PackageUri')
if m.get('ReleaseStrategy') is not None:
temp_model = ReleaseStrategy()
self.release_strategy = temp_model.from_map(m['ReleaseStrategy'])
if m.get('Resources') is not None:
self.resources = m.get('Resources')
if m.get('Runtimes') is not None:
temp_model = Runtimes()
self.runtimes = temp_model.from_map(m['Runtimes'])
if m.get('UserData') is not None:
self.user_data = m.get('UserData')
self.volumes = []
if m.get('Volumes') is not None:
for k in m.get('Volumes'):
temp_model = Volume()
self.volumes.append(temp_model.from_map(k))
return self
class JobQueueDefinitionSchedulerConfig(TeaModel):
def __init__(
self,
state: str = None,
):
# State
self.state = state
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.state is not None:
result['State'] = self.state
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('State') is not None:
self.state = m.get('State')
return self
class ProviderConfig(TeaModel):
def __init__(
self,
max_worker_count: int = None,
min_worker_count: int = None,
provider_id: str = None,
provider_type: str = None,
worker_type: str = None,
):
# MaxWorkerCount
self.max_worker_count = max_worker_count
# MinWorkerCount
self.min_worker_count = min_worker_count
# ProviderId
self.provider_id = provider_id
# ProviderType
self.provider_type = provider_type
# WorkerType
self.worker_type = worker_type
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.max_worker_count is not None:
result['MaxWorkerCount'] = self.max_worker_count
if self.min_worker_count is not None:
result['MinWorkerCount'] = self.min_worker_count
if self.provider_id is not None:
result['ProviderId'] = self.provider_id
if self.provider_type is not None:
result['ProviderType'] = self.provider_type
if self.worker_type is not None:
result['WorkerType'] = self.worker_type
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('MaxWorkerCount') is not None:
self.max_worker_count = m.get('MaxWorkerCount')
if m.get('MinWorkerCount') is not None:
self.min_worker_count = m.get('MinWorkerCount')
if m.get('ProviderId') is not None:
self.provider_id = m.get('ProviderId')
if m.get('ProviderType') is not None:
self.provider_type = m.get('ProviderType')
if m.get('WorkerType') is not None:
self.worker_type = m.get('WorkerType')
return self
class JobQueueDefinition(TeaModel):
def __init__(
self,
labels: Dict[str, str] = None,
priority: int = None,
provider_configs: List[ProviderConfig] = None,
scheduler_config: JobQueueDefinitionSchedulerConfig = None,
):
# Labels
self.labels = labels
# Priority
self.priority = priority
# ProviderConfigs
self.provider_configs = provider_configs
# SchedulerConfig
self.scheduler_config = scheduler_config
def validate(self):
if self.provider_configs:
for k in self.provider_configs:
if k:
k.validate()
if self.scheduler_config:
self.scheduler_config.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.labels is not None:
result['Labels'] = self.labels
if self.priority is not None:
result['Priority'] = self.priority
result['ProviderConfigs'] = []
if self.provider_configs is not None:
for k in self.provider_configs:
result['ProviderConfigs'].append(k.to_map() if k else None)
if self.scheduler_config is not None:
result['SchedulerConfig'] = self.scheduler_config.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Labels') is not None:
self.labels = m.get('Labels')
if m.get('Priority') is not None:
self.priority = m.get('Priority')
self.provider_configs = []
if m.get('ProviderConfigs') is not None:
for k in m.get('ProviderConfigs'):
temp_model = ProviderConfig()
self.provider_configs.append(temp_model.from_map(k))
if m.get('SchedulerConfig') is not None:
temp_model = JobQueueDefinitionSchedulerConfig()
self.scheduler_config = temp_model.from_map(m['SchedulerConfig'])
return self
class ProviderStatus(TeaModel):
def __init__(
self,
allocatable_resources: Dict[str, str] = None,
allocated_resources: Dict[str, str] = None,
provider_id: str = None,
):
# AllocatableResources
self.allocatable_resources = allocatable_resources
# AllocatedResources
self.allocated_resources = allocated_resources
# ProviderId
self.provider_id = provider_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.allocatable_resources is not None:
result['AllocatableResources'] = self.allocatable_resources
if self.allocated_resources is not None:
result['AllocatedResources'] = self.allocated_resources
if self.provider_id is not None:
result['ProviderId'] = self.provider_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('AllocatableResources') is not None:
self.allocatable_resources = m.get('AllocatableResources')
if m.get('AllocatedResources') is not None:
self.allocated_resources = m.get('AllocatedResources')
if m.get('ProviderId') is not None:
self.provider_id = m.get('ProviderId')
return self
class SchedulerStatus(TeaModel):
def __init__(
self,
canceled_job_count: int = None,
failed_job_count: int = None,
running_job_count: int = None,
succeeded_job_count: int = None,
waiting_job_count: int = None,
):
# CanceledJobCount
self.canceled_job_count = canceled_job_count
# FailedJobCount
self.failed_job_count = failed_job_count
# RunningJobCount
self.running_job_count = running_job_count
# SucceededJobCount
self.succeeded_job_count = succeeded_job_count
# WaitingJobCount
self.waiting_job_count = waiting_job_count
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.canceled_job_count is not None:
result['CanceledJobCount'] = self.canceled_job_count
if self.failed_job_count is not None:
result['FailedJobCount'] = self.failed_job_count
if self.running_job_count is not None:
result['RunningJobCount'] = self.running_job_count
if self.succeeded_job_count is not None:
result['SucceededJobCount'] = self.succeeded_job_count
if self.waiting_job_count is not None:
result['WaitingJobCount'] = self.waiting_job_count
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('CanceledJobCount') is not None:
self.canceled_job_count = m.get('CanceledJobCount')
if m.get('FailedJobCount') is not None:
self.failed_job_count = m.get('FailedJobCount')
if m.get('RunningJobCount') is not None:
self.running_job_count = m.get('RunningJobCount')
if m.get('SucceededJobCount') is not None:
self.succeeded_job_count = m.get('SucceededJobCount')
if m.get('WaitingJobCount') is not None:
self.waiting_job_count = m.get('WaitingJobCount')
return self
class JobQueueStatus(TeaModel):
def __init__(
self,
allocatable_resources: Dict[str, str] = None,
allocated_resources: Dict[str, str] = None,
create_time: str = None,
last_update_time: str = None,
managed: bool = None,
provider_statuses: List[ProviderStatus] = None,
reason: str = None,
scheduler_status: SchedulerStatus = None,
state: str = None,
):
# AllocatableResources
self.allocatable_resources = allocatable_resources
# AllocatedResources
self.allocated_resources = allocated_resources
# CreateTime
self.create_time = create_time
# LastUpdateTime
self.last_update_time = last_update_time
# Managed
self.managed = managed
# ProviderStatuses
self.provider_statuses = provider_statuses
# Reason
self.reason = reason
self.scheduler_status = scheduler_status
# State
self.state = state
def validate(self):
if self.provider_statuses:
for k in self.provider_statuses:
if k:
k.validate()
if self.scheduler_status:
self.scheduler_status.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.allocatable_resources is not None:
result['AllocatableResources'] = self.allocatable_resources
if self.allocated_resources is not None:
result['AllocatedResources'] = self.allocated_resources
if self.create_time is not None:
result['CreateTime'] = self.create_time
if self.last_update_time is not None:
result['LastUpdateTime'] = self.last_update_time
if self.managed is not None:
result['Managed'] = self.managed
result['ProviderStatuses'] = []
if self.provider_statuses is not None:
for k in self.provider_statuses:
result['ProviderStatuses'].append(k.to_map() if k else None)
if self.reason is not None:
result['Reason'] = self.reason
if self.scheduler_status is not None:
result['SchedulerStatus'] = self.scheduler_status.to_map()
if self.state is not None:
result['State'] = self.state
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('AllocatableResources') is not None:
self.allocatable_resources = m.get('AllocatableResources')
if m.get('AllocatedResources') is not None:
self.allocated_resources = m.get('AllocatedResources')
if m.get('CreateTime') is not None:
self.create_time = m.get('CreateTime')
if m.get('LastUpdateTime') is not None:
self.last_update_time = m.get('LastUpdateTime')
if m.get('Managed') is not None:
self.managed = m.get('Managed')
self.provider_statuses = []
if m.get('ProviderStatuses') is not None:
for k in m.get('ProviderStatuses'):
temp_model = ProviderStatus()
self.provider_statuses.append(temp_model.from_map(k))
if m.get('Reason') is not None:
self.reason = m.get('Reason')
if m.get('SchedulerStatus') is not None:
temp_model = SchedulerStatus()
self.scheduler_status = temp_model.from_map(m['SchedulerStatus'])
if m.get('State') is not None:
self.state = m.get('State')
return self
class ProjectDefinition(TeaModel):
def __init__(
self,
job_lifecycle: int = None,
labels: Dict[str, str] = None,
role: str = None,
):
# JobLifecycle
self.job_lifecycle = job_lifecycle
# Labels
self.labels = labels
# Role
self.role = role
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.job_lifecycle is not None:
result['JobLifecycle'] = self.job_lifecycle
if self.labels is not None:
result['Labels'] = self.labels
if self.role is not None:
result['Role'] = self.role
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('JobLifecycle') is not None:
self.job_lifecycle = m.get('JobLifecycle')
if m.get('Labels') is not None:
self.labels = m.get('Labels')
if m.get('Role') is not None:
self.role = m.get('Role')
return self
class WorkerStatusContainer(TeaModel):
def __init__(
self,
cpu: int = None,
memory: int = None,
):
# Cpu
self.cpu = cpu
# Memory
self.memory = memory
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cpu is not None:
result['Cpu'] = self.cpu
if self.memory is not None:
result['Memory'] = self.memory
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Cpu') is not None:
self.cpu = m.get('Cpu')
if m.get('Memory') is not None:
self.memory = m.get('Memory')
return self
class WorkerStatusECS(TeaModel):
def __init__(
self,
cpu: int = None,
endpoint: str = None,
hostname: str = None,
instance_id: str = None,
instance_type: str = None,
memory: int = None,
password: str = None,
resource_type: str = None,
spot_price_limit: str = None,
spot_strategy: str = None,
system_disk_size: int = None,
system_disk_type: str = None,
vmimage: str = None,
zone_id: str = None,
):
# Cpu
self.cpu = cpu
# Endpoint
self.endpoint = endpoint
# Hostname
self.hostname = hostname
# InstanceId
self.instance_id = instance_id
# InstanceType
self.instance_type = instance_type
# Memory
self.memory = memory
# Password
self.password = password
# ResourceType
self.resource_type = resource_type
# SpotPriceLimit
self.spot_price_limit = spot_price_limit
# SpotStrategy
self.spot_strategy = spot_strategy
# SystemDiskSize
self.system_disk_size = system_disk_size
# SystemDiskType
self.system_disk_type = system_disk_type
# VMImage
self.vmimage = vmimage
# ZoneId
self.zone_id = zone_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cpu is not None:
result['Cpu'] = self.cpu
if self.endpoint is not None:
result['Endpoint'] = self.endpoint
if self.hostname is not None:
result['Hostname'] = self.hostname
if self.instance_id is not None:
result['InstanceId'] = self.instance_id
if self.instance_type is not None:
result['InstanceType'] = self.instance_type
if self.memory is not None:
result['Memory'] = self.memory
if self.password is not None:
result['Password'] = self.password
if self.resource_type is not None:
result['ResourceType'] = self.resource_type
if self.spot_price_limit is not None:
result['SpotPriceLimit'] = self.spot_price_limit
if self.spot_strategy is not None:
result['SpotStrategy'] = self.spot_strategy
if self.system_disk_size is not None:
result['SystemDiskSize'] = self.system_disk_size
if self.system_disk_type is not None:
result['SystemDiskType'] = self.system_disk_type
if self.vmimage is not None:
result['VMImage'] = self.vmimage
if self.zone_id is not None:
result['ZoneId'] = self.zone_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Cpu') is not None:
self.cpu = m.get('Cpu')
if m.get('Endpoint') is not None:
self.endpoint = m.get('Endpoint')
if m.get('Hostname') is not None:
self.hostname = m.get('Hostname')
if m.get('InstanceId') is not None:
self.instance_id = m.get('InstanceId')
if m.get('InstanceType') is not None:
self.instance_type = m.get('InstanceType')
if m.get('Memory') is not None:
self.memory = m.get('Memory')
if m.get('Password') is not None:
self.password = m.get('Password')
if m.get('ResourceType') is not None:
self.resource_type = m.get('ResourceType')
if m.get('SpotPriceLimit') is not None:
self.spot_price_limit = m.get('SpotPriceLimit')
if m.get('SpotStrategy') is not None:
self.spot_strategy = m.get('SpotStrategy')
if m.get('SystemDiskSize') is not None:
self.system_disk_size = m.get('SystemDiskSize')
if m.get('SystemDiskType') is not None:
self.system_disk_type = m.get('SystemDiskType')
if m.get('VMImage') is not None:
self.vmimage = m.get('VMImage')
if m.get('ZoneId') is not None:
self.zone_id = m.get('ZoneId')
return self
class WorkerStatus(TeaModel):
def __init__(
self,
conditions: List[Conditions] = None,
container: WorkerStatusContainer = None,
create_time: str = None,
ecs: WorkerStatusECS = None,
job_queue: str = None,
network_interface_id: str = None,
pool_worker_id: str = None,
security_group_id: str = None,
state: str = None,
v_switch_id: str = None,
worker_type: int = None,
):
# Conditions
self.conditions = conditions
# Container
self.container = container
# CreateTime
self.create_time = create_time
# ECS
self.ecs = ecs
# JobQueue
self.job_queue = job_queue
# NetworkInterfaceId
self.network_interface_id = network_interface_id
# PoolWorkerId
self.pool_worker_id = pool_worker_id
# SecurityGroupId
self.security_group_id = security_group_id
# State
self.state = state
# VSwitchId
self.v_switch_id = v_switch_id
# WorkerType
self.worker_type = worker_type
def validate(self):
if self.conditions:
for k in self.conditions:
if k:
k.validate()
if self.container:
self.container.validate()
if self.ecs:
self.ecs.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
result['Conditions'] = []
if self.conditions is not None:
for k in self.conditions:
result['Conditions'].append(k.to_map() if k else None)
if self.container is not None:
result['Container'] = self.container.to_map()
if self.create_time is not None:
result['CreateTime'] = self.create_time
if self.ecs is not None:
result['ECS'] = self.ecs.to_map()
if self.job_queue is not None:
result['JobQueue'] = self.job_queue
if self.network_interface_id is not None:
result['NetworkInterfaceId'] = self.network_interface_id
if self.pool_worker_id is not None:
result['PoolWorkerId'] = self.pool_worker_id
if self.security_group_id is not None:
result['SecurityGroupId'] = self.security_group_id
if self.state is not None:
result['State'] = self.state
if self.v_switch_id is not None:
result['VSwitchId'] = self.v_switch_id
if self.worker_type is not None:
result['WorkerType'] = self.worker_type
return result
def from_map(self, m: dict = None):
m = m or dict()
self.conditions = []
if m.get('Conditions') is not None:
for k in m.get('Conditions'):
temp_model = Conditions()
self.conditions.append(temp_model.from_map(k))
if m.get('Container') is not None:
temp_model = WorkerStatusContainer()
self.container = temp_model.from_map(m['Container'])
if m.get('CreateTime') is not None:
self.create_time = m.get('CreateTime')
if m.get('ECS') is not None:
temp_model = WorkerStatusECS()
self.ecs = temp_model.from_map(m['ECS'])
if m.get('JobQueue') is not None:
self.job_queue = m.get('JobQueue')
if m.get('NetworkInterfaceId') is not None:
self.network_interface_id = m.get('NetworkInterfaceId')
if m.get('PoolWorkerId') is not None:
self.pool_worker_id = m.get('PoolWorkerId')
if m.get('SecurityGroupId') is not None:
self.security_group_id = m.get('SecurityGroupId')
if m.get('State') is not None:
self.state = m.get('State')
if m.get('VSwitchId') is not None:
self.v_switch_id = m.get('VSwitchId')
if m.get('WorkerType') is not None:
self.worker_type = m.get('WorkerType')
return self
class CancelJobRequest(TeaModel):
def __init__(
self,
exit_code: str = None,
job_id: str = None,
project: str = None,
reason: str = None,
):
self.exit_code = exit_code
self.job_id = job_id
self.project = project
self.reason = reason
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.exit_code is not None:
result['ExitCode'] = self.exit_code
if self.job_id is not None:
result['JobId'] = self.job_id
if self.project is not None:
result['Project'] = self.project
if self.reason is not None:
result['Reason'] = self.reason
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ExitCode') is not None:
self.exit_code = m.get('ExitCode')
if m.get('JobId') is not None:
self.job_id = m.get('JobId')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('Reason') is not None:
self.reason = m.get('Reason')
return self
class CancelJobResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
request_id: str = None,
):
self.host_id = host_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class CancelJobResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: CancelJobResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = CancelJobResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class CreateClusterRequest(TeaModel):
def __init__(
self,
client_token: str = None,
definition: ClusterDefinition = None,
description: str = None,
name: str = None,
project: str = None,
):
self.client_token = client_token
# Definition
self.definition = definition
# Description
self.description = description
# Name
self.name = name
# Project
self.project = project
def validate(self):
if self.definition:
self.definition.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.client_token is not None:
result['ClientToken'] = self.client_token
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.name is not None:
result['Name'] = self.name
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClientToken') is not None:
self.client_token = m.get('ClientToken')
if m.get('Definition') is not None:
temp_model = ClusterDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class CreateClusterShrinkRequest(TeaModel):
def __init__(
self,
client_token: str = None,
definition_shrink: str = None,
description: str = None,
name: str = None,
project: str = None,
):
self.client_token = client_token
# Definition
self.definition_shrink = definition_shrink
# Description
self.description = description
# Name
self.name = name
# Project
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.client_token is not None:
result['ClientToken'] = self.client_token
if self.definition_shrink is not None:
result['Definition'] = self.definition_shrink
if self.description is not None:
result['Description'] = self.description
if self.name is not None:
result['Name'] = self.name
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClientToken') is not None:
self.client_token = m.get('ClientToken')
if m.get('Definition') is not None:
self.definition_shrink = m.get('Definition')
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class CreateClusterResponseBody(TeaModel):
def __init__(
self,
cluster_id: str = None,
host_id: str = None,
request_id: str = None,
):
self.cluster_id = cluster_id
self.host_id = host_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cluster_id is not None:
result['ClusterId'] = self.cluster_id
if self.host_id is not None:
result['HostId'] = self.host_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClusterId') is not None:
self.cluster_id = m.get('ClusterId')
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class CreateClusterResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: CreateClusterResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = CreateClusterResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class CreateJobRequest(TeaModel):
def __init__(
self,
client_token: str = None,
definition: JobDefinition = None,
description: str = None,
name: str = None,
project: str = None,
):
self.client_token = client_token
self.definition = definition
self.description = description
self.name = name
self.project = project
def validate(self):
if self.definition:
self.definition.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.client_token is not None:
result['ClientToken'] = self.client_token
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.name is not None:
result['Name'] = self.name
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClientToken') is not None:
self.client_token = m.get('ClientToken')
if m.get('Definition') is not None:
temp_model = JobDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class CreateJobShrinkRequest(TeaModel):
def __init__(
self,
client_token: str = None,
definition_shrink: str = None,
description: str = None,
name: str = None,
project: str = None,
):
self.client_token = client_token
self.definition_shrink = definition_shrink
self.description = description
self.name = name
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.client_token is not None:
result['ClientToken'] = self.client_token
if self.definition_shrink is not None:
result['Definition'] = self.definition_shrink
if self.description is not None:
result['Description'] = self.description
if self.name is not None:
result['Name'] = self.name
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClientToken') is not None:
self.client_token = m.get('ClientToken')
if m.get('Definition') is not None:
self.definition_shrink = m.get('Definition')
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class CreateJobResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
job_id: str = None,
request_id: str = None,
):
self.host_id = host_id
self.job_id = job_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.job_id is not None:
result['JobId'] = self.job_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('JobId') is not None:
self.job_id = m.get('JobId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class CreateJobResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: CreateJobResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = CreateJobResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class CreateJobQueueRequest(TeaModel):
def __init__(
self,
client_token: str = None,
definition: JobQueueDefinition = None,
description: str = None,
name: str = None,
project: str = None,
):
self.client_token = client_token
self.definition = definition
self.description = description
self.name = name
self.project = project
def validate(self):
if self.definition:
self.definition.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.client_token is not None:
result['ClientToken'] = self.client_token
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.name is not None:
result['Name'] = self.name
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClientToken') is not None:
self.client_token = m.get('ClientToken')
if m.get('Definition') is not None:
temp_model = JobQueueDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class CreateJobQueueShrinkRequest(TeaModel):
def __init__(
self,
client_token: str = None,
definition_shrink: str = None,
description: str = None,
name: str = None,
project: str = None,
):
self.client_token = client_token
self.definition_shrink = definition_shrink
self.description = description
self.name = name
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.client_token is not None:
result['ClientToken'] = self.client_token
if self.definition_shrink is not None:
result['Definition'] = self.definition_shrink
if self.description is not None:
result['Description'] = self.description
if self.name is not None:
result['Name'] = self.name
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClientToken') is not None:
self.client_token = m.get('ClientToken')
if m.get('Definition') is not None:
self.definition_shrink = m.get('Definition')
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class CreateJobQueueResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
name: str = None,
request_id: str = None,
):
self.host_id = host_id
self.name = name
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.name is not None:
result['Name'] = self.name
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class CreateJobQueueResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: CreateJobQueueResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = CreateJobQueueResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class CreateProjectRequest(TeaModel):
def __init__(
self,
client_token: str = None,
definition: ProjectDefinition = None,
description: str = None,
project: str = None,
):
self.client_token = client_token
self.definition = definition
self.description = description
self.project = project
def validate(self):
if self.definition:
self.definition.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.client_token is not None:
result['ClientToken'] = self.client_token
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClientToken') is not None:
self.client_token = m.get('ClientToken')
if m.get('Definition') is not None:
temp_model = ProjectDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class CreateProjectShrinkRequest(TeaModel):
def __init__(
self,
client_token: str = None,
definition_shrink: str = None,
description: str = None,
project: str = None,
):
self.client_token = client_token
self.definition_shrink = definition_shrink
self.description = description
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.client_token is not None:
result['ClientToken'] = self.client_token
if self.definition_shrink is not None:
result['Definition'] = self.definition_shrink
if self.description is not None:
result['Description'] = self.description
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClientToken') is not None:
self.client_token = m.get('ClientToken')
if m.get('Definition') is not None:
self.definition_shrink = m.get('Definition')
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class CreateProjectResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
project: str = None,
request_id: str = None,
):
self.host_id = host_id
self.project = project
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.project is not None:
result['Project'] = self.project
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class CreateProjectResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: CreateProjectResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = CreateProjectResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class DeleteClusterRequest(TeaModel):
def __init__(
self,
cluster_id: str = None,
project: str = None,
):
# ClusterId
self.cluster_id = cluster_id
# Project
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cluster_id is not None:
result['ClusterId'] = self.cluster_id
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClusterId') is not None:
self.cluster_id = m.get('ClusterId')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class DeleteClusterResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
request_id: str = None,
):
self.host_id = host_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class DeleteClusterResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: DeleteClusterResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = DeleteClusterResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class DeleteJobRequest(TeaModel):
def __init__(
self,
job_id: str = None,
project: str = None,
):
self.job_id = job_id
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.job_id is not None:
result['JobId'] = self.job_id
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('JobId') is not None:
self.job_id = m.get('JobId')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class DeleteJobResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
request_id: str = None,
):
self.host_id = host_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class DeleteJobResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: DeleteJobResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = DeleteJobResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class DeleteJobQueueRequest(TeaModel):
def __init__(
self,
name: str = None,
project: str = None,
):
self.name = name
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.name is not None:
result['Name'] = self.name
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class DeleteJobQueueResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
request_id: str = None,
):
self.host_id = host_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class DeleteJobQueueResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: DeleteJobQueueResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = DeleteJobQueueResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class DeleteProjectRequest(TeaModel):
def __init__(
self,
project: str = None,
):
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class DeleteProjectResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
request_id: str = None,
):
self.host_id = host_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class DeleteProjectResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: DeleteProjectResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = DeleteProjectResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class GetClusterRequest(TeaModel):
def __init__(
self,
cluster_id: str = None,
project: str = None,
):
self.cluster_id = cluster_id
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cluster_id is not None:
result['ClusterId'] = self.cluster_id
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClusterId') is not None:
self.cluster_id = m.get('ClusterId')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class GetClusterResponseBodyStatus(TeaModel):
def __init__(
self,
allocatable_resources: Dict[str, str] = None,
allocated_resources: Dict[str, str] = None,
conditions: List[Conditions] = None,
create_time: str = None,
current_worker_count: int = None,
desired_worker_count: int = None,
state: str = None,
):
self.allocatable_resources = allocatable_resources
self.allocated_resources = allocated_resources
self.conditions = conditions
self.create_time = create_time
self.current_worker_count = current_worker_count
self.desired_worker_count = desired_worker_count
self.state = state
def validate(self):
if self.conditions:
for k in self.conditions:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.allocatable_resources is not None:
result['AllocatableResources'] = self.allocatable_resources
if self.allocated_resources is not None:
result['AllocatedResources'] = self.allocated_resources
result['Conditions'] = []
if self.conditions is not None:
for k in self.conditions:
result['Conditions'].append(k.to_map() if k else None)
if self.create_time is not None:
result['CreateTime'] = self.create_time
if self.current_worker_count is not None:
result['CurrentWorkerCount'] = self.current_worker_count
if self.desired_worker_count is not None:
result['DesiredWorkerCount'] = self.desired_worker_count
if self.state is not None:
result['State'] = self.state
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('AllocatableResources') is not None:
self.allocatable_resources = m.get('AllocatableResources')
if m.get('AllocatedResources') is not None:
self.allocated_resources = m.get('AllocatedResources')
self.conditions = []
if m.get('Conditions') is not None:
for k in m.get('Conditions'):
temp_model = Conditions()
self.conditions.append(temp_model.from_map(k))
if m.get('CreateTime') is not None:
self.create_time = m.get('CreateTime')
if m.get('CurrentWorkerCount') is not None:
self.current_worker_count = m.get('CurrentWorkerCount')
if m.get('DesiredWorkerCount') is not None:
self.desired_worker_count = m.get('DesiredWorkerCount')
if m.get('State') is not None:
self.state = m.get('State')
return self
class GetClusterResponseBody(TeaModel):
def __init__(
self,
cluster_id: str = None,
definition: ClusterDefinition = None,
description: str = None,
host_id: str = None,
name: str = None,
owner_id: str = None,
project: str = None,
request_id: str = None,
status: GetClusterResponseBodyStatus = None,
):
self.cluster_id = cluster_id
self.definition = definition
self.description = description
self.host_id = host_id
self.name = name
self.owner_id = owner_id
self.project = project
self.request_id = request_id
self.status = status
def validate(self):
if self.definition:
self.definition.validate()
if self.status:
self.status.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cluster_id is not None:
result['ClusterId'] = self.cluster_id
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.host_id is not None:
result['HostId'] = self.host_id
if self.name is not None:
result['Name'] = self.name
if self.owner_id is not None:
result['OwnerId'] = self.owner_id
if self.project is not None:
result['Project'] = self.project
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.status is not None:
result['Status'] = self.status.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClusterId') is not None:
self.cluster_id = m.get('ClusterId')
if m.get('Definition') is not None:
temp_model = ClusterDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('OwnerId') is not None:
self.owner_id = m.get('OwnerId')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('Status') is not None:
temp_model = GetClusterResponseBodyStatus()
self.status = temp_model.from_map(m['Status'])
return self
class GetClusterResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: GetClusterResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = GetClusterResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class GetJobRequest(TeaModel):
def __init__(
self,
job_id: str = None,
project: str = None,
):
self.job_id = job_id
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.job_id is not None:
result['JobId'] = self.job_id
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('JobId') is not None:
self.job_id = m.get('JobId')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class GetJobResponseBodyStatus(TeaModel):
def __init__(
self,
attempts: List[Attempt] = None,
create_time: str = None,
end_time: str = None,
exit_code: int = None,
pid: int = None,
reason: str = None,
start_time: str = None,
state: str = None,
worker: str = None,
):
self.attempts = attempts
self.create_time = create_time
self.end_time = end_time
self.exit_code = exit_code
self.pid = pid
self.reason = reason
self.start_time = start_time
self.state = state
self.worker = worker
def validate(self):
if self.attempts:
for k in self.attempts:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
result['Attempts'] = []
if self.attempts is not None:
for k in self.attempts:
result['Attempts'].append(k.to_map() if k else None)
if self.create_time is not None:
result['CreateTime'] = self.create_time
if self.end_time is not None:
result['EndTime'] = self.end_time
if self.exit_code is not None:
result['ExitCode'] = self.exit_code
if self.pid is not None:
result['Pid'] = self.pid
if self.reason is not None:
result['Reason'] = self.reason
if self.start_time is not None:
result['StartTime'] = self.start_time
if self.state is not None:
result['State'] = self.state
if self.worker is not None:
result['Worker'] = self.worker
return result
def from_map(self, m: dict = None):
m = m or dict()
self.attempts = []
if m.get('Attempts') is not None:
for k in m.get('Attempts'):
temp_model = Attempt()
self.attempts.append(temp_model.from_map(k))
if m.get('CreateTime') is not None:
self.create_time = m.get('CreateTime')
if m.get('EndTime') is not None:
self.end_time = m.get('EndTime')
if m.get('ExitCode') is not None:
self.exit_code = m.get('ExitCode')
if m.get('Pid') is not None:
self.pid = m.get('Pid')
if m.get('Reason') is not None:
self.reason = m.get('Reason')
if m.get('StartTime') is not None:
self.start_time = m.get('StartTime')
if m.get('State') is not None:
self.state = m.get('State')
if m.get('Worker') is not None:
self.worker = m.get('Worker')
return self
class GetJobResponseBody(TeaModel):
def __init__(
self,
definition: JobDefinition = None,
description: str = None,
host_id: str = None,
job_id: str = None,
name: str = None,
owner_id: str = None,
project: str = None,
request_id: str = None,
status: GetJobResponseBodyStatus = None,
):
self.definition = definition
self.description = description
self.host_id = host_id
self.job_id = job_id
self.name = name
self.owner_id = owner_id
self.project = project
self.request_id = request_id
self.status = status
def validate(self):
if self.definition:
self.definition.validate()
if self.status:
self.status.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.host_id is not None:
result['HostId'] = self.host_id
if self.job_id is not None:
result['JobId'] = self.job_id
if self.name is not None:
result['Name'] = self.name
if self.owner_id is not None:
result['OwnerId'] = self.owner_id
if self.project is not None:
result['Project'] = self.project
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.status is not None:
result['Status'] = self.status.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Definition') is not None:
temp_model = JobDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('JobId') is not None:
self.job_id = m.get('JobId')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('OwnerId') is not None:
self.owner_id = m.get('OwnerId')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('Status') is not None:
temp_model = GetJobResponseBodyStatus()
self.status = temp_model.from_map(m['Status'])
return self
class GetJobResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: GetJobResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = GetJobResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class GetJobQueueRequest(TeaModel):
def __init__(
self,
name: str = None,
project: str = None,
):
self.name = name
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.name is not None:
result['Name'] = self.name
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class GetJobQueueResponseBody(TeaModel):
def __init__(
self,
definition: JobQueueDefinition = None,
description: str = None,
host_id: str = None,
name: str = None,
owner_id: str = None,
project: str = None,
request_id: str = None,
status: JobQueueStatus = None,
):
self.definition = definition
self.description = description
self.host_id = host_id
self.name = name
self.owner_id = owner_id
self.project = project
self.request_id = request_id
self.status = status
def validate(self):
if self.definition:
self.definition.validate()
if self.status:
self.status.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.host_id is not None:
result['HostId'] = self.host_id
if self.name is not None:
result['Name'] = self.name
if self.owner_id is not None:
result['OwnerId'] = self.owner_id
if self.project is not None:
result['Project'] = self.project
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.status is not None:
result['Status'] = self.status.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Definition') is not None:
temp_model = JobQueueDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('OwnerId') is not None:
self.owner_id = m.get('OwnerId')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('Status') is not None:
temp_model = JobQueueStatus()
self.status = temp_model.from_map(m['Status'])
return self
class GetJobQueueResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: GetJobQueueResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = GetJobQueueResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class GetProjectRequest(TeaModel):
def __init__(
self,
project: str = None,
):
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class GetProjectResponseBodyStatus(TeaModel):
def __init__(
self,
create_time: str = None,
last_modified_time: str = None,
):
self.create_time = create_time
self.last_modified_time = last_modified_time
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.create_time is not None:
result['CreateTime'] = self.create_time
if self.last_modified_time is not None:
result['LastModifiedTime'] = self.last_modified_time
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('CreateTime') is not None:
self.create_time = m.get('CreateTime')
if m.get('LastModifiedTime') is not None:
self.last_modified_time = m.get('LastModifiedTime')
return self
class GetProjectResponseBody(TeaModel):
def __init__(
self,
definition: ProjectDefinition = None,
description: str = None,
host_id: str = None,
project: str = None,
request_id: str = None,
status: GetProjectResponseBodyStatus = None,
):
self.definition = definition
self.description = description
self.host_id = host_id
self.project = project
self.request_id = request_id
self.status = status
def validate(self):
if self.definition:
self.definition.validate()
if self.status:
self.status.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.host_id is not None:
result['HostId'] = self.host_id
if self.project is not None:
result['Project'] = self.project
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.status is not None:
result['Status'] = self.status.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Definition') is not None:
temp_model = ProjectDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('Status') is not None:
temp_model = GetProjectResponseBodyStatus()
self.status = temp_model.from_map(m['Status'])
return self
class GetProjectResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: GetProjectResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = GetProjectResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class GetWorkerRequest(TeaModel):
def __init__(
self,
cluster_id: str = None,
project: str = None,
worker_id: str = None,
):
self.cluster_id = cluster_id
self.project = project
self.worker_id = worker_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cluster_id is not None:
result['ClusterId'] = self.cluster_id
if self.project is not None:
result['Project'] = self.project
if self.worker_id is not None:
result['WorkerId'] = self.worker_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClusterId') is not None:
self.cluster_id = m.get('ClusterId')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('WorkerId') is not None:
self.worker_id = m.get('WorkerId')
return self
class GetWorkerResponseBodyStatusContainer(TeaModel):
def __init__(
self,
cpu: int = None,
memory: int = None,
):
self.cpu = cpu
self.memory = memory
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cpu is not None:
result['Cpu'] = self.cpu
if self.memory is not None:
result['Memory'] = self.memory
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Cpu') is not None:
self.cpu = m.get('Cpu')
if m.get('Memory') is not None:
self.memory = m.get('Memory')
return self
class GetWorkerResponseBodyStatusECS(TeaModel):
def __init__(
self,
cpu: int = None,
endpoint: str = None,
hostname: str = None,
instance_id: str = None,
instance_type: str = None,
memory: int = None,
password: str = None,
resource_type: str = None,
spot_price_limit: str = None,
spot_strategy: str = None,
system_disk_size: int = None,
system_disk_type: str = None,
vmimage: str = None,
zone_id: str = None,
):
self.cpu = cpu
self.endpoint = endpoint
self.hostname = hostname
self.instance_id = instance_id
self.instance_type = instance_type
self.memory = memory
self.password = password
self.resource_type = resource_type
self.spot_price_limit = spot_price_limit
self.spot_strategy = spot_strategy
self.system_disk_size = system_disk_size
self.system_disk_type = system_disk_type
self.vmimage = vmimage
self.zone_id = zone_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cpu is not None:
result['Cpu'] = self.cpu
if self.endpoint is not None:
result['Endpoint'] = self.endpoint
if self.hostname is not None:
result['Hostname'] = self.hostname
if self.instance_id is not None:
result['InstanceId'] = self.instance_id
if self.instance_type is not None:
result['InstanceType'] = self.instance_type
if self.memory is not None:
result['Memory'] = self.memory
if self.password is not None:
result['Password'] = self.password
if self.resource_type is not None:
result['ResourceType'] = self.resource_type
if self.spot_price_limit is not None:
result['SpotPriceLimit'] = self.spot_price_limit
if self.spot_strategy is not None:
result['SpotStrategy'] = self.spot_strategy
if self.system_disk_size is not None:
result['SystemDiskSize'] = self.system_disk_size
if self.system_disk_type is not None:
result['SystemDiskType'] = self.system_disk_type
if self.vmimage is not None:
result['VMImage'] = self.vmimage
if self.zone_id is not None:
result['ZoneId'] = self.zone_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Cpu') is not None:
self.cpu = m.get('Cpu')
if m.get('Endpoint') is not None:
self.endpoint = m.get('Endpoint')
if m.get('Hostname') is not None:
self.hostname = m.get('Hostname')
if m.get('InstanceId') is not None:
self.instance_id = m.get('InstanceId')
if m.get('InstanceType') is not None:
self.instance_type = m.get('InstanceType')
if m.get('Memory') is not None:
self.memory = m.get('Memory')
if m.get('Password') is not None:
self.password = m.get('Password')
if m.get('ResourceType') is not None:
self.resource_type = m.get('ResourceType')
if m.get('SpotPriceLimit') is not None:
self.spot_price_limit = m.get('SpotPriceLimit')
if m.get('SpotStrategy') is not None:
self.spot_strategy = m.get('SpotStrategy')
if m.get('SystemDiskSize') is not None:
self.system_disk_size = m.get('SystemDiskSize')
if m.get('SystemDiskType') is not None:
self.system_disk_type = m.get('SystemDiskType')
if m.get('VMImage') is not None:
self.vmimage = m.get('VMImage')
if m.get('ZoneId') is not None:
self.zone_id = m.get('ZoneId')
return self
class GetWorkerResponseBodyStatus(TeaModel):
def __init__(
self,
active_time: str = None,
allocate_time: str = None,
conditions: List[Conditions] = None,
container: GetWorkerResponseBodyStatusContainer = None,
create_time: str = None,
ecs: GetWorkerResponseBodyStatusECS = None,
job_queue: str = None,
network_interface_id: str = None,
pool_worker_id: str = None,
security_group_id: str = None,
state: str = None,
v_switch_id: str = None,
worker_type: int = None,
):
self.active_time = active_time
self.allocate_time = allocate_time
self.conditions = conditions
self.container = container
self.create_time = create_time
self.ecs = ecs
self.job_queue = job_queue
self.network_interface_id = network_interface_id
self.pool_worker_id = pool_worker_id
self.security_group_id = security_group_id
self.state = state
self.v_switch_id = v_switch_id
self.worker_type = worker_type
def validate(self):
if self.conditions:
for k in self.conditions:
if k:
k.validate()
if self.container:
self.container.validate()
if self.ecs:
self.ecs.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.active_time is not None:
result['ActiveTime'] = self.active_time
if self.allocate_time is not None:
result['AllocateTime'] = self.allocate_time
result['Conditions'] = []
if self.conditions is not None:
for k in self.conditions:
result['Conditions'].append(k.to_map() if k else None)
if self.container is not None:
result['Container'] = self.container.to_map()
if self.create_time is not None:
result['CreateTime'] = self.create_time
if self.ecs is not None:
result['ECS'] = self.ecs.to_map()
if self.job_queue is not None:
result['JobQueue'] = self.job_queue
if self.network_interface_id is not None:
result['NetworkInterfaceId'] = self.network_interface_id
if self.pool_worker_id is not None:
result['PoolWorkerId'] = self.pool_worker_id
if self.security_group_id is not None:
result['SecurityGroupId'] = self.security_group_id
if self.state is not None:
result['State'] = self.state
if self.v_switch_id is not None:
result['VSwitchId'] = self.v_switch_id
if self.worker_type is not None:
result['WorkerType'] = self.worker_type
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ActiveTime') is not None:
self.active_time = m.get('ActiveTime')
if m.get('AllocateTime') is not None:
self.allocate_time = m.get('AllocateTime')
self.conditions = []
if m.get('Conditions') is not None:
for k in m.get('Conditions'):
temp_model = Conditions()
self.conditions.append(temp_model.from_map(k))
if m.get('Container') is not None:
temp_model = GetWorkerResponseBodyStatusContainer()
self.container = temp_model.from_map(m['Container'])
if m.get('CreateTime') is not None:
self.create_time = m.get('CreateTime')
if m.get('ECS') is not None:
temp_model = GetWorkerResponseBodyStatusECS()
self.ecs = temp_model.from_map(m['ECS'])
if m.get('JobQueue') is not None:
self.job_queue = m.get('JobQueue')
if m.get('NetworkInterfaceId') is not None:
self.network_interface_id = m.get('NetworkInterfaceId')
if m.get('PoolWorkerId') is not None:
self.pool_worker_id = m.get('PoolWorkerId')
if m.get('SecurityGroupId') is not None:
self.security_group_id = m.get('SecurityGroupId')
if m.get('State') is not None:
self.state = m.get('State')
if m.get('VSwitchId') is not None:
self.v_switch_id = m.get('VSwitchId')
if m.get('WorkerType') is not None:
self.worker_type = m.get('WorkerType')
return self
class GetWorkerResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
request_id: str = None,
status: GetWorkerResponseBodyStatus = None,
worker_id: str = None,
):
self.host_id = host_id
self.request_id = request_id
self.status = status
self.worker_id = worker_id
def validate(self):
if self.status:
self.status.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.status is not None:
result['Status'] = self.status.to_map()
if self.worker_id is not None:
result['WorkerId'] = self.worker_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('Status') is not None:
temp_model = GetWorkerResponseBodyStatus()
self.status = temp_model.from_map(m['Status'])
if m.get('WorkerId') is not None:
self.worker_id = m.get('WorkerId')
return self
class GetWorkerResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: GetWorkerResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = GetWorkerResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class KillWorkerRequest(TeaModel):
def __init__(
self,
cluster_id: str = None,
project: str = None,
worker_id: str = None,
):
self.cluster_id = cluster_id
self.project = project
self.worker_id = worker_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cluster_id is not None:
result['ClusterId'] = self.cluster_id
if self.project is not None:
result['Project'] = self.project
if self.worker_id is not None:
result['WorkerId'] = self.worker_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClusterId') is not None:
self.cluster_id = m.get('ClusterId')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('WorkerId') is not None:
self.worker_id = m.get('WorkerId')
return self
class KillWorkerResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
request_id: str = None,
):
self.host_id = host_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class KillWorkerResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: KillWorkerResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = KillWorkerResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class ListClustersRequest(TeaModel):
def __init__(
self,
filter: str = None,
max_results: int = None,
next_token: str = None,
project: str = None,
):
self.filter = filter
self.max_results = max_results
self.next_token = next_token
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.filter is not None:
result['Filter'] = self.filter
if self.max_results is not None:
result['MaxResults'] = self.max_results
if self.next_token is not None:
result['NextToken'] = self.next_token
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Filter') is not None:
self.filter = m.get('Filter')
if m.get('MaxResults') is not None:
self.max_results = m.get('MaxResults')
if m.get('NextToken') is not None:
self.next_token = m.get('NextToken')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class ListClustersResponseBodyClustersStatus(TeaModel):
def __init__(
self,
allocatable_resources: Dict[str, str] = None,
allocated_resources: Dict[str, str] = None,
conditions: List[Conditions] = None,
create_time: str = None,
current_worker_count: int = None,
desired_worker_count: int = None,
state: str = None,
):
self.allocatable_resources = allocatable_resources
self.allocated_resources = allocated_resources
self.conditions = conditions
self.create_time = create_time
self.current_worker_count = current_worker_count
self.desired_worker_count = desired_worker_count
self.state = state
def validate(self):
if self.conditions:
for k in self.conditions:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.allocatable_resources is not None:
result['AllocatableResources'] = self.allocatable_resources
if self.allocated_resources is not None:
result['AllocatedResources'] = self.allocated_resources
result['Conditions'] = []
if self.conditions is not None:
for k in self.conditions:
result['Conditions'].append(k.to_map() if k else None)
if self.create_time is not None:
result['CreateTime'] = self.create_time
if self.current_worker_count is not None:
result['CurrentWorkerCount'] = self.current_worker_count
if self.desired_worker_count is not None:
result['DesiredWorkerCount'] = self.desired_worker_count
if self.state is not None:
result['State'] = self.state
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('AllocatableResources') is not None:
self.allocatable_resources = m.get('AllocatableResources')
if m.get('AllocatedResources') is not None:
self.allocated_resources = m.get('AllocatedResources')
self.conditions = []
if m.get('Conditions') is not None:
for k in m.get('Conditions'):
temp_model = Conditions()
self.conditions.append(temp_model.from_map(k))
if m.get('CreateTime') is not None:
self.create_time = m.get('CreateTime')
if m.get('CurrentWorkerCount') is not None:
self.current_worker_count = m.get('CurrentWorkerCount')
if m.get('DesiredWorkerCount') is not None:
self.desired_worker_count = m.get('DesiredWorkerCount')
if m.get('State') is not None:
self.state = m.get('State')
return self
class ListClustersResponseBodyClusters(TeaModel):
def __init__(
self,
cluster_id: str = None,
definition: ClusterDefinition = None,
description: str = None,
name: str = None,
owner_id: str = None,
project: str = None,
status: ListClustersResponseBodyClustersStatus = None,
):
self.cluster_id = cluster_id
self.definition = definition
self.description = description
self.name = name
self.owner_id = owner_id
self.project = project
self.status = status
def validate(self):
if self.definition:
self.definition.validate()
if self.status:
self.status.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cluster_id is not None:
result['ClusterId'] = self.cluster_id
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.name is not None:
result['Name'] = self.name
if self.owner_id is not None:
result['OwnerId'] = self.owner_id
if self.project is not None:
result['Project'] = self.project
if self.status is not None:
result['Status'] = self.status.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClusterId') is not None:
self.cluster_id = m.get('ClusterId')
if m.get('Definition') is not None:
temp_model = ClusterDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('OwnerId') is not None:
self.owner_id = m.get('OwnerId')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('Status') is not None:
temp_model = ListClustersResponseBodyClustersStatus()
self.status = temp_model.from_map(m['Status'])
return self
class ListClustersResponseBody(TeaModel):
def __init__(
self,
clusters: List[ListClustersResponseBodyClusters] = None,
host_id: str = None,
next_token: str = None,
request_id: str = None,
total_count: int = None,
):
self.clusters = clusters
self.host_id = host_id
self.next_token = next_token
self.request_id = request_id
self.total_count = total_count
def validate(self):
if self.clusters:
for k in self.clusters:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
result['Clusters'] = []
if self.clusters is not None:
for k in self.clusters:
result['Clusters'].append(k.to_map() if k else None)
if self.host_id is not None:
result['HostId'] = self.host_id
if self.next_token is not None:
result['NextToken'] = self.next_token
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.total_count is not None:
result['TotalCount'] = self.total_count
return result
def from_map(self, m: dict = None):
m = m or dict()
self.clusters = []
if m.get('Clusters') is not None:
for k in m.get('Clusters'):
temp_model = ListClustersResponseBodyClusters()
self.clusters.append(temp_model.from_map(k))
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('NextToken') is not None:
self.next_token = m.get('NextToken')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('TotalCount') is not None:
self.total_count = m.get('TotalCount')
return self
class ListClustersResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: ListClustersResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = ListClustersResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class ListJobQueuesRequest(TeaModel):
def __init__(
self,
label_selector: str = None,
max_results: int = None,
next_token: str = None,
order_by: str = None,
order_reverse: bool = None,
project: str = None,
state: str = None,
):
self.label_selector = label_selector
self.max_results = max_results
self.next_token = next_token
self.order_by = order_by
self.order_reverse = order_reverse
self.project = project
self.state = state
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.label_selector is not None:
result['LabelSelector'] = self.label_selector
if self.max_results is not None:
result['MaxResults'] = self.max_results
if self.next_token is not None:
result['NextToken'] = self.next_token
if self.order_by is not None:
result['OrderBy'] = self.order_by
if self.order_reverse is not None:
result['OrderReverse'] = self.order_reverse
if self.project is not None:
result['Project'] = self.project
if self.state is not None:
result['State'] = self.state
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('LabelSelector') is not None:
self.label_selector = m.get('LabelSelector')
if m.get('MaxResults') is not None:
self.max_results = m.get('MaxResults')
if m.get('NextToken') is not None:
self.next_token = m.get('NextToken')
if m.get('OrderBy') is not None:
self.order_by = m.get('OrderBy')
if m.get('OrderReverse') is not None:
self.order_reverse = m.get('OrderReverse')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('State') is not None:
self.state = m.get('State')
return self
class ListJobQueuesResponseBodyJobQueues(TeaModel):
def __init__(
self,
definition: JobQueueDefinition = None,
description: str = None,
name: str = None,
next_token: str = None,
owner_id: str = None,
project: str = None,
status: JobQueueStatus = None,
total_count: int = None,
):
self.definition = definition
self.description = description
self.name = name
self.next_token = next_token
self.owner_id = owner_id
self.project = project
self.status = status
self.total_count = total_count
def validate(self):
if self.definition:
self.definition.validate()
if self.status:
self.status.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.name is not None:
result['Name'] = self.name
if self.next_token is not None:
result['NextToken'] = self.next_token
if self.owner_id is not None:
result['OwnerId'] = self.owner_id
if self.project is not None:
result['Project'] = self.project
if self.status is not None:
result['Status'] = self.status.to_map()
if self.total_count is not None:
result['TotalCount'] = self.total_count
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Definition') is not None:
temp_model = JobQueueDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('NextToken') is not None:
self.next_token = m.get('NextToken')
if m.get('OwnerId') is not None:
self.owner_id = m.get('OwnerId')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('Status') is not None:
temp_model = JobQueueStatus()
self.status = temp_model.from_map(m['Status'])
if m.get('TotalCount') is not None:
self.total_count = m.get('TotalCount')
return self
class ListJobQueuesResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
job_queues: List[ListJobQueuesResponseBodyJobQueues] = None,
request_id: str = None,
):
self.host_id = host_id
self.job_queues = job_queues
self.request_id = request_id
def validate(self):
if self.job_queues:
for k in self.job_queues:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
result['JobQueues'] = []
if self.job_queues is not None:
for k in self.job_queues:
result['JobQueues'].append(k.to_map() if k else None)
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
self.job_queues = []
if m.get('JobQueues') is not None:
for k in m.get('JobQueues'):
temp_model = ListJobQueuesResponseBodyJobQueues()
self.job_queues.append(temp_model.from_map(k))
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class ListJobQueuesResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: ListJobQueuesResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = ListJobQueuesResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class ListJobsRequest(TeaModel):
def __init__(
self,
cluster_id: str = None,
label_selector: str = None,
max_results: int = None,
name: str = None,
next_token: str = None,
order_by: str = None,
order_reverse: bool = None,
project: str = None,
state: str = None,
):
self.cluster_id = cluster_id
self.label_selector = label_selector
self.max_results = max_results
self.name = name
self.next_token = next_token
self.order_by = order_by
self.order_reverse = order_reverse
self.project = project
self.state = state
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cluster_id is not None:
result['ClusterId'] = self.cluster_id
if self.label_selector is not None:
result['LabelSelector'] = self.label_selector
if self.max_results is not None:
result['MaxResults'] = self.max_results
if self.name is not None:
result['Name'] = self.name
if self.next_token is not None:
result['NextToken'] = self.next_token
if self.order_by is not None:
result['OrderBy'] = self.order_by
if self.order_reverse is not None:
result['OrderReverse'] = self.order_reverse
if self.project is not None:
result['Project'] = self.project
if self.state is not None:
result['State'] = self.state
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClusterId') is not None:
self.cluster_id = m.get('ClusterId')
if m.get('LabelSelector') is not None:
self.label_selector = m.get('LabelSelector')
if m.get('MaxResults') is not None:
self.max_results = m.get('MaxResults')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('NextToken') is not None:
self.next_token = m.get('NextToken')
if m.get('OrderBy') is not None:
self.order_by = m.get('OrderBy')
if m.get('OrderReverse') is not None:
self.order_reverse = m.get('OrderReverse')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('State') is not None:
self.state = m.get('State')
return self
class ListJobsResponseBodyJobsStatus(TeaModel):
def __init__(
self,
attempts: List[Attempt] = None,
create_time: str = None,
end_time: str = None,
exit_code: int = None,
pid: int = None,
reason: str = None,
start_time: str = None,
state: str = None,
worker: str = None,
):
self.attempts = attempts
self.create_time = create_time
self.end_time = end_time
self.exit_code = exit_code
self.pid = pid
self.reason = reason
self.start_time = start_time
self.state = state
self.worker = worker
def validate(self):
if self.attempts:
for k in self.attempts:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
result['Attempts'] = []
if self.attempts is not None:
for k in self.attempts:
result['Attempts'].append(k.to_map() if k else None)
if self.create_time is not None:
result['CreateTime'] = self.create_time
if self.end_time is not None:
result['EndTime'] = self.end_time
if self.exit_code is not None:
result['ExitCode'] = self.exit_code
if self.pid is not None:
result['Pid'] = self.pid
if self.reason is not None:
result['Reason'] = self.reason
if self.start_time is not None:
result['StartTime'] = self.start_time
if self.state is not None:
result['State'] = self.state
if self.worker is not None:
result['Worker'] = self.worker
return result
def from_map(self, m: dict = None):
m = m or dict()
self.attempts = []
if m.get('Attempts') is not None:
for k in m.get('Attempts'):
temp_model = Attempt()
self.attempts.append(temp_model.from_map(k))
if m.get('CreateTime') is not None:
self.create_time = m.get('CreateTime')
if m.get('EndTime') is not None:
self.end_time = m.get('EndTime')
if m.get('ExitCode') is not None:
self.exit_code = m.get('ExitCode')
if m.get('Pid') is not None:
self.pid = m.get('Pid')
if m.get('Reason') is not None:
self.reason = m.get('Reason')
if m.get('StartTime') is not None:
self.start_time = m.get('StartTime')
if m.get('State') is not None:
self.state = m.get('State')
if m.get('Worker') is not None:
self.worker = m.get('Worker')
return self
class ListJobsResponseBodyJobs(TeaModel):
def __init__(
self,
definition: JobDefinition = None,
description: str = None,
job_id: str = None,
name: str = None,
owner_id: str = None,
project: str = None,
status: ListJobsResponseBodyJobsStatus = None,
):
self.definition = definition
self.description = description
self.job_id = job_id
self.name = name
self.owner_id = owner_id
self.project = project
self.status = status
def validate(self):
if self.definition:
self.definition.validate()
if self.status:
self.status.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.job_id is not None:
result['JobId'] = self.job_id
if self.name is not None:
result['Name'] = self.name
if self.owner_id is not None:
result['OwnerId'] = self.owner_id
if self.project is not None:
result['Project'] = self.project
if self.status is not None:
result['Status'] = self.status.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Definition') is not None:
temp_model = JobDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('JobId') is not None:
self.job_id = m.get('JobId')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('OwnerId') is not None:
self.owner_id = m.get('OwnerId')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('Status') is not None:
temp_model = ListJobsResponseBodyJobsStatus()
self.status = temp_model.from_map(m['Status'])
return self
class ListJobsResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
jobs: List[ListJobsResponseBodyJobs] = None,
next_token: str = None,
request_id: str = None,
total_count: int = None,
):
self.host_id = host_id
self.jobs = jobs
self.next_token = next_token
self.request_id = request_id
self.total_count = total_count
def validate(self):
if self.jobs:
for k in self.jobs:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
result['Jobs'] = []
if self.jobs is not None:
for k in self.jobs:
result['Jobs'].append(k.to_map() if k else None)
if self.next_token is not None:
result['NextToken'] = self.next_token
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.total_count is not None:
result['TotalCount'] = self.total_count
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
self.jobs = []
if m.get('Jobs') is not None:
for k in m.get('Jobs'):
temp_model = ListJobsResponseBodyJobs()
self.jobs.append(temp_model.from_map(k))
if m.get('NextToken') is not None:
self.next_token = m.get('NextToken')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('TotalCount') is not None:
self.total_count = m.get('TotalCount')
return self
class ListJobsResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: ListJobsResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = ListJobsResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class ListProjectsRequest(TeaModel):
def __init__(
self,
label_selector: str = None,
max_results: int = None,
next_token: str = None,
order_by: str = None,
order_reverse: bool = None,
):
self.label_selector = label_selector
self.max_results = max_results
self.next_token = next_token
self.order_by = order_by
self.order_reverse = order_reverse
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.label_selector is not None:
result['LabelSelector'] = self.label_selector
if self.max_results is not None:
result['MaxResults'] = self.max_results
if self.next_token is not None:
result['NextToken'] = self.next_token
if self.order_by is not None:
result['OrderBy'] = self.order_by
if self.order_reverse is not None:
result['OrderReverse'] = self.order_reverse
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('LabelSelector') is not None:
self.label_selector = m.get('LabelSelector')
if m.get('MaxResults') is not None:
self.max_results = m.get('MaxResults')
if m.get('NextToken') is not None:
self.next_token = m.get('NextToken')
if m.get('OrderBy') is not None:
self.order_by = m.get('OrderBy')
if m.get('OrderReverse') is not None:
self.order_reverse = m.get('OrderReverse')
return self
class ListProjectsResponseBodyProjectsStatus(TeaModel):
def __init__(
self,
create_time: str = None,
last_modified_time: str = None,
):
self.create_time = create_time
self.last_modified_time = last_modified_time
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.create_time is not None:
result['CreateTime'] = self.create_time
if self.last_modified_time is not None:
result['LastModifiedTime'] = self.last_modified_time
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('CreateTime') is not None:
self.create_time = m.get('CreateTime')
if m.get('LastModifiedTime') is not None:
self.last_modified_time = m.get('LastModifiedTime')
return self
class ListProjectsResponseBodyProjects(TeaModel):
def __init__(
self,
definition: ProjectDefinition = None,
description: str = None,
project: str = None,
status: ListProjectsResponseBodyProjectsStatus = None,
):
self.definition = definition
self.description = description
self.project = project
self.status = status
def validate(self):
if self.definition:
self.definition.validate()
if self.status:
self.status.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.project is not None:
result['Project'] = self.project
if self.status is not None:
result['Status'] = self.status.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Definition') is not None:
temp_model = ProjectDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('Status') is not None:
temp_model = ListProjectsResponseBodyProjectsStatus()
self.status = temp_model.from_map(m['Status'])
return self
class ListProjectsResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
max_results: int = None,
next_token: str = None,
projects: List[ListProjectsResponseBodyProjects] = None,
request_id: str = None,
total_count: int = None,
):
self.host_id = host_id
self.max_results = max_results
self.next_token = next_token
self.projects = projects
self.request_id = request_id
self.total_count = total_count
def validate(self):
if self.projects:
for k in self.projects:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.max_results is not None:
result['MaxResults'] = self.max_results
if self.next_token is not None:
result['NextToken'] = self.next_token
result['Projects'] = []
if self.projects is not None:
for k in self.projects:
result['Projects'].append(k.to_map() if k else None)
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.total_count is not None:
result['TotalCount'] = self.total_count
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('MaxResults') is not None:
self.max_results = m.get('MaxResults')
if m.get('NextToken') is not None:
self.next_token = m.get('NextToken')
self.projects = []
if m.get('Projects') is not None:
for k in m.get('Projects'):
temp_model = ListProjectsResponseBodyProjects()
self.projects.append(temp_model.from_map(k))
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('TotalCount') is not None:
self.total_count = m.get('TotalCount')
return self
class ListProjectsResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: ListProjectsResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = ListProjectsResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class ListRegionsRequest(TeaModel):
def __init__(
self,
accept_language: str = None,
):
self.accept_language = accept_language
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.accept_language is not None:
result['AcceptLanguage'] = self.accept_language
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('AcceptLanguage') is not None:
self.accept_language = m.get('AcceptLanguage')
return self
class ListRegionsResponseBodyRegions(TeaModel):
def __init__(
self,
local_name: str = None,
region_id: str = None,
):
self.local_name = local_name
self.region_id = region_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.local_name is not None:
result['LocalName'] = self.local_name
if self.region_id is not None:
result['RegionId'] = self.region_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('LocalName') is not None:
self.local_name = m.get('LocalName')
if m.get('RegionId') is not None:
self.region_id = m.get('RegionId')
return self
class ListRegionsResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
regions: List[ListRegionsResponseBodyRegions] = None,
request_id: str = None,
):
self.host_id = host_id
self.regions = regions
self.request_id = request_id
def validate(self):
if self.regions:
for k in self.regions:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
result['Regions'] = []
if self.regions is not None:
for k in self.regions:
result['Regions'].append(k.to_map() if k else None)
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
self.regions = []
if m.get('Regions') is not None:
for k in m.get('Regions'):
temp_model = ListRegionsResponseBodyRegions()
self.regions.append(temp_model.from_map(k))
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class ListRegionsResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: ListRegionsResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = ListRegionsResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class ListWorkersRequest(TeaModel):
def __init__(
self,
cluster_id: str = None,
max_results: int = None,
next_token: str = None,
project: str = None,
):
self.cluster_id = cluster_id
self.max_results = max_results
self.next_token = next_token
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cluster_id is not None:
result['ClusterId'] = self.cluster_id
if self.max_results is not None:
result['MaxResults'] = self.max_results
if self.next_token is not None:
result['NextToken'] = self.next_token
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClusterId') is not None:
self.cluster_id = m.get('ClusterId')
if m.get('MaxResults') is not None:
self.max_results = m.get('MaxResults')
if m.get('NextToken') is not None:
self.next_token = m.get('NextToken')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class ListWorkersResponseBodyWorkersStatusContainer(TeaModel):
def __init__(
self,
cpu: int = None,
memory: int = None,
):
self.cpu = cpu
self.memory = memory
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cpu is not None:
result['Cpu'] = self.cpu
if self.memory is not None:
result['Memory'] = self.memory
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Cpu') is not None:
self.cpu = m.get('Cpu')
if m.get('Memory') is not None:
self.memory = m.get('Memory')
return self
class ListWorkersResponseBodyWorkersStatusECS(TeaModel):
def __init__(
self,
cpu: int = None,
endpoint: str = None,
hostname: str = None,
instance_id: str = None,
instance_type: str = None,
memory: int = None,
password: str = None,
resource_type: str = None,
spot_price_limit: str = None,
spot_strategy: str = None,
system_disk_size: int = None,
system_disk_type: str = None,
vmimage: str = None,
zone_id: str = None,
):
self.cpu = cpu
self.endpoint = endpoint
self.hostname = hostname
self.instance_id = instance_id
self.instance_type = instance_type
self.memory = memory
self.password = password
self.resource_type = resource_type
self.spot_price_limit = spot_price_limit
self.spot_strategy = spot_strategy
self.system_disk_size = system_disk_size
self.system_disk_type = system_disk_type
self.vmimage = vmimage
self.zone_id = zone_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cpu is not None:
result['Cpu'] = self.cpu
if self.endpoint is not None:
result['Endpoint'] = self.endpoint
if self.hostname is not None:
result['Hostname'] = self.hostname
if self.instance_id is not None:
result['InstanceId'] = self.instance_id
if self.instance_type is not None:
result['InstanceType'] = self.instance_type
if self.memory is not None:
result['Memory'] = self.memory
if self.password is not None:
result['Password'] = self.password
if self.resource_type is not None:
result['ResourceType'] = self.resource_type
if self.spot_price_limit is not None:
result['SpotPriceLimit'] = self.spot_price_limit
if self.spot_strategy is not None:
result['SpotStrategy'] = self.spot_strategy
if self.system_disk_size is not None:
result['SystemDiskSize'] = self.system_disk_size
if self.system_disk_type is not None:
result['SystemDiskType'] = self.system_disk_type
if self.vmimage is not None:
result['VMImage'] = self.vmimage
if self.zone_id is not None:
result['ZoneId'] = self.zone_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Cpu') is not None:
self.cpu = m.get('Cpu')
if m.get('Endpoint') is not None:
self.endpoint = m.get('Endpoint')
if m.get('Hostname') is not None:
self.hostname = m.get('Hostname')
if m.get('InstanceId') is not None:
self.instance_id = m.get('InstanceId')
if m.get('InstanceType') is not None:
self.instance_type = m.get('InstanceType')
if m.get('Memory') is not None:
self.memory = m.get('Memory')
if m.get('Password') is not None:
self.password = m.get('Password')
if m.get('ResourceType') is not None:
self.resource_type = m.get('ResourceType')
if m.get('SpotPriceLimit') is not None:
self.spot_price_limit = m.get('SpotPriceLimit')
if m.get('SpotStrategy') is not None:
self.spot_strategy = m.get('SpotStrategy')
if m.get('SystemDiskSize') is not None:
self.system_disk_size = m.get('SystemDiskSize')
if m.get('SystemDiskType') is not None:
self.system_disk_type = m.get('SystemDiskType')
if m.get('VMImage') is not None:
self.vmimage = m.get('VMImage')
if m.get('ZoneId') is not None:
self.zone_id = m.get('ZoneId')
return self
class ListWorkersResponseBodyWorkersStatus(TeaModel):
def __init__(
self,
active_time: str = None,
allocate_time: str = None,
conditions: List[Conditions] = None,
container: ListWorkersResponseBodyWorkersStatusContainer = None,
create_time: str = None,
ecs: ListWorkersResponseBodyWorkersStatusECS = None,
job_queue: str = None,
network_interface_id: str = None,
pool_worker_id: str = None,
security_group_id: str = None,
state: str = None,
v_switch_id: str = None,
worker_type: int = None,
):
self.active_time = active_time
self.allocate_time = allocate_time
self.conditions = conditions
self.container = container
self.create_time = create_time
self.ecs = ecs
self.job_queue = job_queue
self.network_interface_id = network_interface_id
self.pool_worker_id = pool_worker_id
self.security_group_id = security_group_id
self.state = state
self.v_switch_id = v_switch_id
self.worker_type = worker_type
def validate(self):
if self.conditions:
for k in self.conditions:
if k:
k.validate()
if self.container:
self.container.validate()
if self.ecs:
self.ecs.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.active_time is not None:
result['ActiveTime'] = self.active_time
if self.allocate_time is not None:
result['AllocateTime'] = self.allocate_time
result['Conditions'] = []
if self.conditions is not None:
for k in self.conditions:
result['Conditions'].append(k.to_map() if k else None)
if self.container is not None:
result['Container'] = self.container.to_map()
if self.create_time is not None:
result['CreateTime'] = self.create_time
if self.ecs is not None:
result['ECS'] = self.ecs.to_map()
if self.job_queue is not None:
result['JobQueue'] = self.job_queue
if self.network_interface_id is not None:
result['NetworkInterfaceId'] = self.network_interface_id
if self.pool_worker_id is not None:
result['PoolWorkerId'] = self.pool_worker_id
if self.security_group_id is not None:
result['SecurityGroupId'] = self.security_group_id
if self.state is not None:
result['State'] = self.state
if self.v_switch_id is not None:
result['VSwitchId'] = self.v_switch_id
if self.worker_type is not None:
result['WorkerType'] = self.worker_type
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ActiveTime') is not None:
self.active_time = m.get('ActiveTime')
if m.get('AllocateTime') is not None:
self.allocate_time = m.get('AllocateTime')
self.conditions = []
if m.get('Conditions') is not None:
for k in m.get('Conditions'):
temp_model = Conditions()
self.conditions.append(temp_model.from_map(k))
if m.get('Container') is not None:
temp_model = ListWorkersResponseBodyWorkersStatusContainer()
self.container = temp_model.from_map(m['Container'])
if m.get('CreateTime') is not None:
self.create_time = m.get('CreateTime')
if m.get('ECS') is not None:
temp_model = ListWorkersResponseBodyWorkersStatusECS()
self.ecs = temp_model.from_map(m['ECS'])
if m.get('JobQueue') is not None:
self.job_queue = m.get('JobQueue')
if m.get('NetworkInterfaceId') is not None:
self.network_interface_id = m.get('NetworkInterfaceId')
if m.get('PoolWorkerId') is not None:
self.pool_worker_id = m.get('PoolWorkerId')
if m.get('SecurityGroupId') is not None:
self.security_group_id = m.get('SecurityGroupId')
if m.get('State') is not None:
self.state = m.get('State')
if m.get('VSwitchId') is not None:
self.v_switch_id = m.get('VSwitchId')
if m.get('WorkerType') is not None:
self.worker_type = m.get('WorkerType')
return self
class ListWorkersResponseBodyWorkers(TeaModel):
def __init__(
self,
status: ListWorkersResponseBodyWorkersStatus = None,
worker_id: str = None,
):
self.status = status
self.worker_id = worker_id
def validate(self):
if self.status:
self.status.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.status is not None:
result['Status'] = self.status.to_map()
if self.worker_id is not None:
result['WorkerId'] = self.worker_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Status') is not None:
temp_model = ListWorkersResponseBodyWorkersStatus()
self.status = temp_model.from_map(m['Status'])
if m.get('WorkerId') is not None:
self.worker_id = m.get('WorkerId')
return self
class ListWorkersResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
next_token: str = None,
request_id: str = None,
total_count: int = None,
workers: List[ListWorkersResponseBodyWorkers] = None,
):
self.host_id = host_id
self.next_token = next_token
self.request_id = request_id
self.total_count = total_count
self.workers = workers
def validate(self):
if self.workers:
for k in self.workers:
if k:
k.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.next_token is not None:
result['NextToken'] = self.next_token
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.total_count is not None:
result['TotalCount'] = self.total_count
result['Workers'] = []
if self.workers is not None:
for k in self.workers:
result['Workers'].append(k.to_map() if k else None)
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('NextToken') is not None:
self.next_token = m.get('NextToken')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('TotalCount') is not None:
self.total_count = m.get('TotalCount')
self.workers = []
if m.get('Workers') is not None:
for k in m.get('Workers'):
temp_model = ListWorkersResponseBodyWorkers()
self.workers.append(temp_model.from_map(k))
return self
class ListWorkersResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: ListWorkersResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = ListWorkersResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class OpenBatchComputeServiceResponseBody(TeaModel):
def __init__(
self,
order_id: str = None,
request_id: str = None,
):
self.order_id = order_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.order_id is not None:
result['OrderId'] = self.order_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('OrderId') is not None:
self.order_id = m.get('OrderId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class OpenBatchComputeServiceResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: OpenBatchComputeServiceResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = OpenBatchComputeServiceResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class PollCmdRequest(TeaModel):
def __init__(
self,
queue: str = None,
wait_seconds: str = None,
worker_id: str = None,
):
self.queue = queue
self.wait_seconds = wait_seconds
self.worker_id = worker_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.queue is not None:
result['Queue'] = self.queue
if self.wait_seconds is not None:
result['WaitSeconds'] = self.wait_seconds
if self.worker_id is not None:
result['WorkerId'] = self.worker_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Queue') is not None:
self.queue = m.get('Queue')
if m.get('WaitSeconds') is not None:
self.wait_seconds = m.get('WaitSeconds')
if m.get('WorkerId') is not None:
self.worker_id = m.get('WorkerId')
return self
class PollCmdResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
message: str = None,
request_id: str = None,
):
self.host_id = host_id
self.message = message
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.message is not None:
result['Message'] = self.message
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('Message') is not None:
self.message = m.get('Message')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class PollCmdResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: PollCmdResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = PollCmdResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class RecreateWorkerRequest(TeaModel):
def __init__(
self,
cluster_id: str = None,
project: str = None,
worker_id: str = None,
):
self.cluster_id = cluster_id
self.project = project
self.worker_id = worker_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cluster_id is not None:
result['ClusterId'] = self.cluster_id
if self.project is not None:
result['Project'] = self.project
if self.worker_id is not None:
result['WorkerId'] = self.worker_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClusterId') is not None:
self.cluster_id = m.get('ClusterId')
if m.get('Project') is not None:
self.project = m.get('Project')
if m.get('WorkerId') is not None:
self.worker_id = m.get('WorkerId')
return self
class RecreateWorkerResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
request_id: str = None,
):
self.host_id = host_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class RecreateWorkerResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: RecreateWorkerResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = RecreateWorkerResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class RunJobRequest(TeaModel):
def __init__(
self,
client_token: str = None,
definition: JobDefinition = None,
description: str = None,
name: str = None,
project: str = None,
):
self.client_token = client_token
self.definition = definition
self.description = description
self.name = name
self.project = project
def validate(self):
if self.definition:
self.definition.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.client_token is not None:
result['ClientToken'] = self.client_token
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.name is not None:
result['Name'] = self.name
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClientToken') is not None:
self.client_token = m.get('ClientToken')
if m.get('Definition') is not None:
temp_model = JobDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class RunJobShrinkRequest(TeaModel):
def __init__(
self,
client_token: str = None,
definition_shrink: str = None,
description: str = None,
name: str = None,
project: str = None,
):
self.client_token = client_token
self.definition_shrink = definition_shrink
self.description = description
self.name = name
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.client_token is not None:
result['ClientToken'] = self.client_token
if self.definition_shrink is not None:
result['Definition'] = self.definition_shrink
if self.description is not None:
result['Description'] = self.description
if self.name is not None:
result['Name'] = self.name
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClientToken') is not None:
self.client_token = m.get('ClientToken')
if m.get('Definition') is not None:
self.definition_shrink = m.get('Definition')
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class RunJobResponseBody(TeaModel):
def __init__(
self,
create_time: str = None,
end_time: str = None,
exit_code: int = None,
host_id: str = None,
pid: int = None,
reason: str = None,
request_id: str = None,
start_time: str = None,
state: str = None,
worker: str = None,
):
self.create_time = create_time
self.end_time = end_time
self.exit_code = exit_code
self.host_id = host_id
self.pid = pid
self.reason = reason
self.request_id = request_id
self.start_time = start_time
self.state = state
self.worker = worker
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.create_time is not None:
result['CreateTime'] = self.create_time
if self.end_time is not None:
result['EndTime'] = self.end_time
if self.exit_code is not None:
result['ExitCode'] = self.exit_code
if self.host_id is not None:
result['HostId'] = self.host_id
if self.pid is not None:
result['Pid'] = self.pid
if self.reason is not None:
result['Reason'] = self.reason
if self.request_id is not None:
result['RequestId'] = self.request_id
if self.start_time is not None:
result['StartTime'] = self.start_time
if self.state is not None:
result['State'] = self.state
if self.worker is not None:
result['Worker'] = self.worker
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('CreateTime') is not None:
self.create_time = m.get('CreateTime')
if m.get('EndTime') is not None:
self.end_time = m.get('EndTime')
if m.get('ExitCode') is not None:
self.exit_code = m.get('ExitCode')
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('Pid') is not None:
self.pid = m.get('Pid')
if m.get('Reason') is not None:
self.reason = m.get('Reason')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
if m.get('StartTime') is not None:
self.start_time = m.get('StartTime')
if m.get('State') is not None:
self.state = m.get('State')
if m.get('Worker') is not None:
self.worker = m.get('Worker')
return self
class RunJobResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: RunJobResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = RunJobResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class UpdateClusterRequest(TeaModel):
def __init__(
self,
cluster_id: str = None,
definition: ClusterDefinition = None,
project: str = None,
):
self.cluster_id = cluster_id
self.definition = definition
self.project = project
def validate(self):
if self.definition:
self.definition.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cluster_id is not None:
result['ClusterId'] = self.cluster_id
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClusterId') is not None:
self.cluster_id = m.get('ClusterId')
if m.get('Definition') is not None:
temp_model = ClusterDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class UpdateClusterShrinkRequest(TeaModel):
def __init__(
self,
cluster_id: str = None,
definition_shrink: str = None,
project: str = None,
):
self.cluster_id = cluster_id
self.definition_shrink = definition_shrink
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cluster_id is not None:
result['ClusterId'] = self.cluster_id
if self.definition_shrink is not None:
result['Definition'] = self.definition_shrink
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClusterId') is not None:
self.cluster_id = m.get('ClusterId')
if m.get('Definition') is not None:
self.definition_shrink = m.get('Definition')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class UpdateClusterResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
request_id: str = None,
):
self.host_id = host_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class UpdateClusterResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: UpdateClusterResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = UpdateClusterResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class UpdateJobQueueRequest(TeaModel):
def __init__(
self,
definition: JobQueueDefinition = None,
name: str = None,
project: str = None,
):
self.definition = definition
self.name = name
self.project = project
def validate(self):
if self.definition:
self.definition.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.name is not None:
result['Name'] = self.name
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Definition') is not None:
temp_model = JobQueueDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class UpdateJobQueueShrinkRequest(TeaModel):
def __init__(
self,
definition_shrink: str = None,
name: str = None,
project: str = None,
):
self.definition_shrink = definition_shrink
self.name = name
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.definition_shrink is not None:
result['Definition'] = self.definition_shrink
if self.name is not None:
result['Name'] = self.name
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Definition') is not None:
self.definition_shrink = m.get('Definition')
if m.get('Name') is not None:
self.name = m.get('Name')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class UpdateJobQueueResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
request_id: str = None,
):
self.host_id = host_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class UpdateJobQueueResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: UpdateJobQueueResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = UpdateJobQueueResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class UpdateProjectRequest(TeaModel):
def __init__(
self,
definition: ProjectDefinition = None,
description: str = None,
project: str = None,
):
self.definition = definition
self.description = description
self.project = project
def validate(self):
if self.definition:
self.definition.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.definition is not None:
result['Definition'] = self.definition.to_map()
if self.description is not None:
result['Description'] = self.description
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Definition') is not None:
temp_model = ProjectDefinition()
self.definition = temp_model.from_map(m['Definition'])
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class UpdateProjectShrinkRequest(TeaModel):
def __init__(
self,
definition_shrink: str = None,
description: str = None,
project: str = None,
):
self.definition_shrink = definition_shrink
self.description = description
self.project = project
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.definition_shrink is not None:
result['Definition'] = self.definition_shrink
if self.description is not None:
result['Description'] = self.description
if self.project is not None:
result['Project'] = self.project
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('Definition') is not None:
self.definition_shrink = m.get('Definition')
if m.get('Description') is not None:
self.description = m.get('Description')
if m.get('Project') is not None:
self.project = m.get('Project')
return self
class UpdateProjectResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
request_id: str = None,
):
self.host_id = host_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class UpdateProjectResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: UpdateProjectResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = UpdateProjectResponseBody()
self.body = temp_model.from_map(m['body'])
return self
class UpdateWorkerStatusRequest(TeaModel):
def __init__(
self,
cluster_id: str = None,
status: str = None,
worker_id: str = None,
):
self.cluster_id = cluster_id
self.status = status
self.worker_id = worker_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.cluster_id is not None:
result['ClusterId'] = self.cluster_id
if self.status is not None:
result['Status'] = self.status
if self.worker_id is not None:
result['WorkerId'] = self.worker_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('ClusterId') is not None:
self.cluster_id = m.get('ClusterId')
if m.get('Status') is not None:
self.status = m.get('Status')
if m.get('WorkerId') is not None:
self.worker_id = m.get('WorkerId')
return self
class UpdateWorkerStatusResponseBody(TeaModel):
def __init__(
self,
host_id: str = None,
request_id: str = None,
):
self.host_id = host_id
self.request_id = request_id
def validate(self):
pass
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.host_id is not None:
result['HostId'] = self.host_id
if self.request_id is not None:
result['RequestId'] = self.request_id
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('HostId') is not None:
self.host_id = m.get('HostId')
if m.get('RequestId') is not None:
self.request_id = m.get('RequestId')
return self
class UpdateWorkerStatusResponse(TeaModel):
def __init__(
self,
headers: Dict[str, str] = None,
body: UpdateWorkerStatusResponseBody = None,
):
self.headers = headers
self.body = body
def validate(self):
self.validate_required(self.headers, 'headers')
self.validate_required(self.body, 'body')
if self.body:
self.body.validate()
def to_map(self):
_map = super().to_map()
if _map is not None:
return _map
result = dict()
if self.headers is not None:
result['headers'] = self.headers
if self.body is not None:
result['body'] = self.body.to_map()
return result
def from_map(self, m: dict = None):
m = m or dict()
if m.get('headers') is not None:
self.headers = m.get('headers')
if m.get('body') is not None:
temp_model = UpdateWorkerStatusResponseBody()
self.body = temp_model.from_map(m['body'])
return self