BatchTaskCreateOptions interface
创建 Azure Batch 任务的参数。
属性
| affinity |
一个局部性提示,批处理服务可以用来选择一个计算节点来启动新任务。 |
| application |
批处理服务在运行命令行前将部署到计算节点的包列表。 应用包是下载并部署到共享目录,而不是任务工作目录。 因此,如果引用包已经在节点上且是最新的,则不会重新下载;使用计算节点上的现有副本。 如果引用的包无法安装,例如因为包被删除或下载失败,任务即失败。 |
| command |
任务的命令行。 对于多实例任务,命令行作为主任务执行,前提是主任务和所有子任务都完成协调命令行的执行。 命令行未在 shell 下运行,因此不能利用 shell 功能(如环境变量扩展)。 如果你想利用这些功能,应该在命令行调用 shell,比如在 Windows 中使用“cmd /c MyCommand”,在 Linux 中使用“/bin/sh -c MyCommand”。 如果命令行引用文件路径,则应使用相对路径(相对于任务工作目录),或使用 Batch 提供的环境变量(https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)。 |
| constraints | 适用于该任务的执行约束。 如果你没有指定约束,maxTaskRetryCount 就是为该作业指定的 maxTaskRetryCount,maxWallClockTime 是无限的,retentionTime 是 7 天。 |
| container |
任务运行容器的设置。 如果执行该任务的池设置了containerConfiguration,也必须设置。 如果执行该任务的池没有设置 containerConfiguration ,那么必须不设置。 当指定时,所有位于AZ_BATCH_NODE_ROOT_DIR(节点上Azure Batch目录根)下方的所有目录递归映射到容器中,所有任务环境变量映射到容器中,任务命令行在容器中执行。 容器中AZ_BATCH_NODE_ROOT_DIR外生成的文件可能不会反映到主机磁盘,这意味着批处理文件API无法访问这些文件。 |
| depends |
这项任务所依赖的任务。 该任务在所有依赖任务成功完成后才会被调度。 如果这些任务中的任何一个失败并用尽重试次数,该任务将永远不会被安排。 如果作业没有将 usesTaskDependencies 设置为 true,且该元素存在,则请求将以错误代码 TaskDependenciesNotSpecifiedOnJob 失败。 |
| display |
任务的显示名称。 显示名称不一定是唯一的,可以包含最大长度为 1024 的任何 Unicode 字符。 |
| environment |
任务的环境变量设置列表。 |
| exit |
任务完成时批处理服务应如何响应。 |
| id | 一个唯一标识任务的字符串。 ID 可以包含字母数字字符(包括连字符和下划线)的任意组合,并且不能包含超过 64 个字符。 ID保留大小写且不区分大小写(即你在一个职位内不能有两个仅因大小写不同而异的ID)。 |
| multi |
一个表示任务是多实例任务的对象,包含如何运行多实例任务的信息。 |
| output |
批处理服务运行命令行后,将从计算节点上传的文件列表。 对于多实例任务,文件只会从执行主任务的计算节点上传。 |
| required |
任务运行所需的调度槽数。 默认值为 1。 只有当节点有足够的空闲调度槽时,任务才能被调度到计算节点上运行。 对于多实例任务,这必须是1. |
| resource |
Batch 服务在运行命令行之前将下载到计算节点的文件列表。 对于多实例任务,资源文件只会下载到执行主任务的计算节点。 资源文件列表的最大大小。 超过最大大小时,请求将失败,响应错误代码将为 RequestEntityTooLarge。 如果发生这种情况,则必须减小 ResourceFiles 的集合大小。 这可以使用 .zip 文件、应用程序包或 Docker 容器来实现。 |
| user |
任务运行的用户身份。 如果省略,任务将作为任务独一无二的非管理员用户运行。 |
属性详细信息
affinityInfo
applicationPackageReferences
批处理服务在运行命令行前将部署到计算节点的包列表。 应用包是下载并部署到共享目录,而不是任务工作目录。 因此,如果引用包已经在节点上且是最新的,则不会重新下载;使用计算节点上的现有副本。 如果引用的包无法安装,例如因为包被删除或下载失败,任务即失败。
applicationPackageReferences?: BatchApplicationPackageReference[]
属性值
commandLine
任务的命令行。 对于多实例任务,命令行作为主任务执行,前提是主任务和所有子任务都完成协调命令行的执行。 命令行未在 shell 下运行,因此不能利用 shell 功能(如环境变量扩展)。 如果你想利用这些功能,应该在命令行调用 shell,比如在 Windows 中使用“cmd /c MyCommand”,在 Linux 中使用“/bin/sh -c MyCommand”。 如果命令行引用文件路径,则应使用相对路径(相对于任务工作目录),或使用 Batch 提供的环境变量(https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)。
commandLine: string
属性值
string
constraints
适用于该任务的执行约束。 如果你没有指定约束,maxTaskRetryCount 就是为该作业指定的 maxTaskRetryCount,maxWallClockTime 是无限的,retentionTime 是 7 天。
constraints?: BatchTaskConstraints
属性值
containerSettings
任务运行容器的设置。 如果执行该任务的池设置了containerConfiguration,也必须设置。 如果执行该任务的池没有设置 containerConfiguration ,那么必须不设置。 当指定时,所有位于AZ_BATCH_NODE_ROOT_DIR(节点上Azure Batch目录根)下方的所有目录递归映射到容器中,所有任务环境变量映射到容器中,任务命令行在容器中执行。 容器中AZ_BATCH_NODE_ROOT_DIR外生成的文件可能不会反映到主机磁盘,这意味着批处理文件API无法访问这些文件。
containerSettings?: BatchTaskContainerSettings
属性值
dependsOn
这项任务所依赖的任务。 该任务在所有依赖任务成功完成后才会被调度。 如果这些任务中的任何一个失败并用尽重试次数,该任务将永远不会被安排。 如果作业没有将 usesTaskDependencies 设置为 true,且该元素存在,则请求将以错误代码 TaskDependenciesNotSpecifiedOnJob 失败。
dependsOn?: BatchTaskDependencies
属性值
displayName
任务的显示名称。 显示名称不一定是唯一的,可以包含最大长度为 1024 的任何 Unicode 字符。
displayName?: string
属性值
string
environmentSettings
exitConditions
id
一个唯一标识任务的字符串。 ID 可以包含字母数字字符(包括连字符和下划线)的任意组合,并且不能包含超过 64 个字符。 ID保留大小写且不区分大小写(即你在一个职位内不能有两个仅因大小写不同而异的ID)。
id: string
属性值
string
multiInstanceSettings
一个表示任务是多实例任务的对象,包含如何运行多实例任务的信息。
multiInstanceSettings?: MultiInstanceSettings
属性值
outputFiles
requiredSlots
任务运行所需的调度槽数。 默认值为 1。 只有当节点有足够的空闲调度槽时,任务才能被调度到计算节点上运行。 对于多实例任务,这必须是1.
requiredSlots?: number
属性值
number
resourceFiles
Batch 服务在运行命令行之前将下载到计算节点的文件列表。 对于多实例任务,资源文件只会下载到执行主任务的计算节点。 资源文件列表的最大大小。 超过最大大小时,请求将失败,响应错误代码将为 RequestEntityTooLarge。 如果发生这种情况,则必须减小 ResourceFiles 的集合大小。 这可以使用 .zip 文件、应用程序包或 Docker 容器来实现。
resourceFiles?: ResourceFile[]