你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

JobReleaseTask 类

在作业运行的任何计算节点上的作业完成时运行的作业释放任务。

作业释放任务在作业结束时运行,原因如下:用户调用终止作业 API,或在作业仍然处于活动状态时调用删除作业 API,达到作业的最大时钟时间限制,作业仍然处于活动状态,或作业的作业管理器任务已完成,作业配置为在作业管理器完成时终止。 作业发布任务在作业的任务已运行且作业准备任务运行并完成的每个节点上运行。 如果在节点运行作业准备任务后重置映像,并且作业结束时没有在该节点上运行的任何进一步任务 (因此作业准备任务不会) 重新运行,则作业释放任务不会在该计算节点上运行。 如果某个节点在作业发布任务仍在运行时重新启动,作业释放任务将在计算节点启动时再次运行。 在完成所有作业发布任务之前,作业不会标记为完成。 作业发布任务在后台运行。 它不占用计划槽位;也就是说,它不计入池中指定的 taskSlotsPerNode 限制。

必须填充所有必需的参数才能发送到 Azure。

继承
JobReleaseTask

构造函数

JobReleaseTask(*, command_line: str, id: str = None, container_settings=None, resource_files=None, environment_settings=None, max_wall_clock_time=None, retention_time=None, user_identity=None, **kwargs)

参数

id
str
必需

ID 可以包含字母数字字符(包括连字符和下划线)的任意组合,并且不能包含超过 64 个字符。 如果未指定此属性,Batch 服务将分配默认值“jobrelease”。 作业中的其他任务不能具有与作业发布任务相同的 ID。 如果尝试提交 ID 相同的任务,Batch 服务会拒绝请求,错误代码为 TaskIdSameAsJobReleaseTask;如果直接调用 REST API,则 HTTP 状态代码为 409 (冲突) 。

command_line
str
必需

必需。 命令行不在 shell 下运行,因此无法利用 shell 功能,例如环境变量扩展。 如果要利用此类功能,则应在命令行中调用 shell,例如在 Windows 中使用“cmd /c MyCommand”或在 Linux 中使用“/bin/sh -c MyCommand”。 如果命令行引用文件路径,则应使用相对于 Task 工作目录) (相对路径,或使用 Batch 提供的环境变量 (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables) 。

container_settings
TaskContainerSettings
必需

运行作业发布任务的容器的设置。 指定此项后,AZ_BATCH_NODE_ROOT_DIR (节点上 Azure Batch) 目录的根目录以递归方式映射到容器中,所有 Task 环境变量都映射到容器中,并在容器中执行 Task 命令行。 AZ_BATCH_NODE_ROOT_DIR 之外的容器中生成的文件可能不会反映在主机磁盘上,这意味着 Batch 文件 API 无法访问这些文件。

resource_files
list[ResourceFile]
必需

此元素下列出的文件位于任务的工作目录中。

environment_settings
list[EnvironmentSetting]
必需
max_wall_clock_time
<xref:timedelta>
必需
retention_time
<xref:timedelta>
必需

默认值为 7 天,即任务目录将保留 7 天,除非删除计算节点或删除作业。

user_identity
UserIdentity
必需

运行作业发布任务的用户标识。 如果省略,则任务将作为 Task 唯一的非管理用户运行。

方法

as_dict

使用 json.dump 返回可以是 JSONify 的 dict。

高级用法可以选择使用回调作为参数:

Key 是 Python 中使用的属性名称。 Attr_desc是元数据的一个听写。 当前包含具有 msrest 类型的“type”和包含 RestAPI 编码密钥的“key”。 Value 是此 对象中的当前值。

返回的字符串将用于序列化密钥。 如果返回类型是列表,则这被视为分层结果 dict。

请参阅此文件中的三个示例:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

如果需要 XML 序列化,可以传递 kwargs is_xml=True。

deserialize

使用 RestAPI 语法分析 str 并返回模型。

enable_additional_properties_sending
from_dict

使用给定的键提取程序分析 dict 会返回模型。

默认情况下,请考虑密钥提取程序 (rest_key_case_insensitive_extractor、attribute_key_case_insensitive_extractor和last_rest_key_case_insensitive_extractor)

is_xml_model
serialize

返回将从此模型发送到 Azure 的 JSON。

这是 as_dict (full_restapi_key_transformer 的别名 ,keep_readonly=False)

如果需要 XML 序列化,可以传递 kwargs is_xml=True。

validate

以递归方式验证此模型,并返回 ValidationError 列表。

as_dict

使用 json.dump 返回可以是 JSONify 的 dict。

高级用法可以选择使用回调作为参数:

Key 是 Python 中使用的属性名称。 Attr_desc是元数据的一个听写。 当前包含具有 msrest 类型的“type”和包含 RestAPI 编码密钥的“key”。 Value 是此 对象中的当前值。

返回的字符串将用于序列化密钥。 如果返回类型是列表,则这被视为分层结果 dict。

请参阅此文件中的三个示例:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

如果需要 XML 序列化,可以传递 kwargs is_xml=True。

as_dict(keep_readonly=True, key_transformer=<function attribute_transformer>, **kwargs)

参数

key_transformer
<xref:function>

密钥转换器函数。

keep_readonly
默认值: True

返回

与 dict JSON 兼容的对象

返回类型

deserialize

使用 RestAPI 语法分析 str 并返回模型。

deserialize(data, content_type=None)

参数

data
str
必需

使用 RestAPI 结构的 str。 默认情况下为 JSON。

content_type
str
默认值: None

默认情况下,如果为 XML,则设置 application/xml。

返回

此模型的实例

例外

DeserializationError if something went wrong

enable_additional_properties_sending

enable_additional_properties_sending()

from_dict

使用给定的键提取程序分析 dict 会返回模型。

默认情况下,请考虑密钥提取程序 (rest_key_case_insensitive_extractor、attribute_key_case_insensitive_extractor和last_rest_key_case_insensitive_extractor)

from_dict(data, key_extractors=None, content_type=None)

参数

data
dict
必需

使用 RestAPI 结构的 dict

content_type
str
默认值: None

默认情况下,如果为 XML,则设置 application/xml。

key_extractors
默认值: None

返回

此模型的实例

例外

DeserializationError if something went wrong

is_xml_model

is_xml_model()

serialize

返回将从此模型发送到 Azure 的 JSON。

这是 as_dict (full_restapi_key_transformer 的别名 ,keep_readonly=False)

如果需要 XML 序列化,可以传递 kwargs is_xml=True。

serialize(keep_readonly=False, **kwargs)

参数

keep_readonly
bool
默认值: False

如果要序列化只读属性

返回

与 dict JSON 兼容的对象

返回类型

validate

以递归方式验证此模型,并返回 ValidationError 列表。

validate()

返回

验证错误列表

返回类型