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

TaskAddParameter interface

在节点上触发恢复操作时,Batch 将重试任务。 恢复操作的示例包括 (但不限于重新启动不正常的节点或计算节点因主机故障而消失时) 。 由于恢复操作导致的重试独立于 ,并且不计入 maxTaskRetryCount。 即使 maxTaskRetryCount 为 0,也可能发生由于恢复操作而导致的内部重试。 因此,所有任务都应是幂等的。 这意味着任务需要容忍中断和重启,而不会导致任何损坏或重复数据。 对于长时间运行的任务,最佳做法是使用某种形式的检查点。

属性

affinityInfo

Batch 服务可以使用该提示来选择要启动新任务的计算节点。

applicationPackageReferences

Batch 服务在运行命令行之前将部署到计算节点的包列表。 应用程序包下载并部署到共享目录,而不是 Task 工作目录。 因此,如果引用的包已在节点上,并且是最新的,则不会重新下载;使用计算节点上的现有副本。 如果无法安装引用的包,例如,因为包已被删除或下载失败,则任务将失败。

authenticationTokenSettings

任务可用于执行 Batch 服务操作的身份验证令牌的设置。 如果设置了此属性,Batch 服务将为 Task 提供一个身份验证令牌,该令牌可用于对 Batch 服务操作进行身份验证,而无需帐户访问密钥。 令牌通过 AZ_BATCH_AUTHENTICATION_TOKEN 环境变量提供。 任务可以使用令牌执行的操作取决于设置。 例如,任务可以请求作业权限,以便将其他任务添加到作业,或检查作业下作业或其他任务的状态。

commandLine

Task 的命令行。 对于多实例任务,在主任务和所有子任务执行完协调命令行后,命令行将作为主任务执行。 命令行不在 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) 。

constraints

适用于此任务的执行约束。 如果未指定约束,则 maxTaskRetryCount 是为作业指定的 maxTaskRetryCount,maxWallClockTime 为无限期,retentionTime 为 7 天。

containerSettings

运行 Task 的容器的设置。 如果将运行此任务的池具有 containerConfiguration 集,则还必须设置此设置。 如果将运行此任务的池未设置 containerConfiguration,则不得设置此设置。 指定此项后,所有目录以递归方式AZ_BATCH_NODE_ROOT_DIR (节点上Azure Batch目录的根目录) 映射到容器中,所有 Task 环境变量都映射到容器中,任务命令行在容器中执行。 AZ_BATCH_NODE_ROOT_DIR 外部容器中生成的文件可能不会反映到主机磁盘,这意味着 Batch 文件 API 将无法访问这些文件。

dependsOn

此任务所依赖的任务。 除非它所依赖的所有任务都成功完成,否则不会计划此任务。 如果其中任一任务失败并耗尽其重试计数,则永远不会计划此任务。 如果作业未将 usesTaskDependencies 设置为 true,并且存在此元素,则请求将失败并显示错误代码 TaskDependenciesNotSpecifiedOnJob。

displayName

任务的显示名称。 显示名称不一定是唯一的,可以包含最大长度为 1024 的任何 Unicode 字符。

environmentSettings

任务环境变量设置的列表。

exitConditions

Batch 服务在任务完成时应如何响应。

id

唯一标识作业中的 Task 的字符串。 ID 可以包含字母数字字符(包括连字符和下划线)的任意组合,并且不能包含超过 64 个字符。 ID 保留大小写且不区分大小写 (也就是说,作业中可能没有两个 ID,这些 ID 仅因大小写) 不同。

multiInstanceSettings

一个 对象,指示 Task 是多实例 Task,并包含有关如何运行多实例 Task 的信息。

outputFiles

运行命令行后 Batch 服务将从计算节点上传的文件列表。 对于多实例任务,文件将仅从执行主任务的计算节点上传。

requiredSlots

任务运行所需的计划槽数。 默认值为 1。 如果节点有足够的可用计划槽,则只能将任务计划为在计算节点上运行。 对于多实例任务,这必须为 1。

resourceFiles

运行命令行之前 Batch 服务将下载到计算节点的文件列表。 对于多实例任务,资源文件将仅下载到执行主任务的计算节点。 资源文件列表有最大大小。 超过最大大小时,请求将失败,响应错误代码为 RequestEntityTooLarge。 如果发生这种情况,必须减小 ResourceFiles 集合的大小。 这可以通过.zip文件、应用程序包或 Docker 容器来实现。

userIdentity

运行任务时所依据的用户标识。 如果省略,则任务将作为任务唯一的非管理用户运行。

属性详细信息

affinityInfo

Batch 服务可以使用该提示来选择要启动新任务的计算节点。

affinityInfo?: AffinityInformation

属性值

applicationPackageReferences

Batch 服务在运行命令行之前将部署到计算节点的包列表。 应用程序包下载并部署到共享目录,而不是 Task 工作目录。 因此,如果引用的包已在节点上,并且是最新的,则不会重新下载;使用计算节点上的现有副本。 如果无法安装引用的包,例如,因为包已被删除或下载失败,则任务将失败。

applicationPackageReferences?: ApplicationPackageReference[]

属性值

authenticationTokenSettings

任务可用于执行 Batch 服务操作的身份验证令牌的设置。 如果设置了此属性,Batch 服务将为 Task 提供一个身份验证令牌,该令牌可用于对 Batch 服务操作进行身份验证,而无需帐户访问密钥。 令牌通过 AZ_BATCH_AUTHENTICATION_TOKEN 环境变量提供。 任务可以使用令牌执行的操作取决于设置。 例如,任务可以请求作业权限,以便将其他任务添加到作业,或检查作业下作业或其他任务的状态。

authenticationTokenSettings?: AuthenticationTokenSettings

属性值

commandLine

Task 的命令行。 对于多实例任务,在主任务和所有子任务执行完协调命令行后,命令行将作为主任务执行。 命令行不在 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) 。

commandLine: string

属性值

string

constraints

适用于此任务的执行约束。 如果未指定约束,则 maxTaskRetryCount 是为作业指定的 maxTaskRetryCount,maxWallClockTime 为无限期,retentionTime 为 7 天。

constraints?: TaskConstraints

属性值

containerSettings

运行 Task 的容器的设置。 如果将运行此任务的池具有 containerConfiguration 集,则还必须设置此设置。 如果将运行此任务的池未设置 containerConfiguration,则不得设置此设置。 指定此项后,所有目录以递归方式AZ_BATCH_NODE_ROOT_DIR (节点上Azure Batch目录的根目录) 映射到容器中,所有 Task 环境变量都映射到容器中,任务命令行在容器中执行。 AZ_BATCH_NODE_ROOT_DIR 外部容器中生成的文件可能不会反映到主机磁盘,这意味着 Batch 文件 API 将无法访问这些文件。

containerSettings?: TaskContainerSettings

属性值

dependsOn

此任务所依赖的任务。 除非它所依赖的所有任务都成功完成,否则不会计划此任务。 如果其中任一任务失败并耗尽其重试计数,则永远不会计划此任务。 如果作业未将 usesTaskDependencies 设置为 true,并且存在此元素,则请求将失败并显示错误代码 TaskDependenciesNotSpecifiedOnJob。

dependsOn?: TaskDependencies

属性值

displayName

任务的显示名称。 显示名称不一定是唯一的,可以包含最大长度为 1024 的任何 Unicode 字符。

displayName?: string

属性值

string

environmentSettings

任务环境变量设置的列表。

environmentSettings?: EnvironmentSetting[]

属性值

exitConditions

Batch 服务在任务完成时应如何响应。

exitConditions?: ExitConditions

属性值

id

唯一标识作业中的 Task 的字符串。 ID 可以包含字母数字字符(包括连字符和下划线)的任意组合,并且不能包含超过 64 个字符。 ID 保留大小写且不区分大小写 (也就是说,作业中可能没有两个 ID,这些 ID 仅因大小写) 不同。

id: string

属性值

string

multiInstanceSettings

一个 对象,指示 Task 是多实例 Task,并包含有关如何运行多实例 Task 的信息。

multiInstanceSettings?: MultiInstanceSettings

属性值

outputFiles

运行命令行后 Batch 服务将从计算节点上传的文件列表。 对于多实例任务,文件将仅从执行主任务的计算节点上传。

outputFiles?: OutputFile[]

属性值

requiredSlots

任务运行所需的计划槽数。 默认值为 1。 如果节点有足够的可用计划槽,则只能将任务计划为在计算节点上运行。 对于多实例任务,这必须为 1。

requiredSlots?: number

属性值

number

resourceFiles

运行命令行之前 Batch 服务将下载到计算节点的文件列表。 对于多实例任务,资源文件将仅下载到执行主任务的计算节点。 资源文件列表有最大大小。 超过最大大小时,请求将失败,响应错误代码为 RequestEntityTooLarge。 如果发生这种情况,必须减小 ResourceFiles 集合的大小。 这可以通过.zip文件、应用程序包或 Docker 容器来实现。

resourceFiles?: ResourceFile[]

属性值

userIdentity

运行任务时所依据的用户标识。 如果省略,则任务将作为任务唯一的非管理用户运行。

userIdentity?: UserIdentity

属性值