Task - Add Collection

Добавляет коллекцию задач в указанное задание.
Обратите внимание, что каждая задача должна иметь уникальный идентификатор. Пакетная служба может не возвращать результаты для каждой задачи в том же порядке, что и задачи, отправленные в этом запросе. Если время ожидания сервера истекает или соединение закрывается во время запроса, запрос может быть частично или полностью обработан или вообще не обработан. В таких случаях пользователю следует повторно выдать запрос. Обратите внимание, что пользователь может правильно обрабатывать сбои при повторном выполнении запроса. Например, во время повтора следует использовать те же идентификаторы задач, чтобы в случае успешной предыдущей операции повторные попытки не создавали непредвиденных дополнительных задач. Если ответ содержит все задачи, которые не удалось добавить, клиент может повторить запрос. В повторных попытках наиболее эффективно повторно отправить только задачи, которые не удалось добавить, и опустить задачи, которые были успешно добавлены при первой попытке. Максимальное время существования задачи от добавления к завершению составляет 180 дней. Если задача не завершена в течение 180 дней после добавления, она будет завершена пакетной службой и оставлена в том состоянии, в каком бы состоянии она находилась в то время.

POST {batchUrl}/jobs/{jobId}/addtaskcollection?api-version=2022-01-01.15.0
POST {batchUrl}/jobs/{jobId}/addtaskcollection?timeout={timeout}&api-version=2022-01-01.15.0

Параметры URI

Name In Required Type Description
batchUrl
path True
  • string

Базовый URL-адрес для всех запросов на обслуживание пакетная служба Azure.

jobId
path True
  • string

Идентификатор задания, к которому добавляется коллекция задач.

api-version
query True
  • string

Версия API клиента.

timeout
query
  • integer
int32

Максимальное время, которое сервер может потратить на обработку запроса в секундах. По умолчанию это 30 секунд.

Заголовок запроса

Media Types: "application/json; odata=minimalmetadata"

Name Required Type Description
client-request-id
  • string
uuid

Удостоверение запроса, созданное вызывающим абонентом, в виде GUID без оформления, например фигурных скобок, например 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.

return-client-request-id
  • boolean

Должен ли сервер возвращать идентификатор client-request-id в ответе.

ocp-date
  • string
date-time-rfc1123

Время выдачи запроса. Клиентские библиотеки обычно задают для текущего системного времени часов; задайте его явным образом, если вы вызываете REST API напрямую.

Текст запроса

Media Types: "application/json; odata=minimalmetadata"

Name Required Type Description
value True

Коллекция задач для добавления. Максимальное число задач — 100.
Общий сериализованный размер этой коллекции должен быть меньше 1 МБ. Если оно больше 1 МБ (например, если каждая задача имеет 100 файлов ресурсов или переменных среды), запрос завершится ошибкой с кодом RequestBodyTooLarge и повторно будет выполнен повторно с меньшим количеством задач.

Ответы

Name Type Description
200 OK

Ответ, содержащий результаты операции добавления коллекции задач.

Headers

  • client-request-id: string
  • request-id: string
Other Status Codes

Непредвиденная ошибка.

Безопасность

azure_auth

Flow OAuth2 Azure Active Directory

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation Олицетворение учетной записи пользователя

Authorization

Type: apiKey
In: header

Примеры

Add a basic collection of tasks
Add a complex collection of tasks

Add a basic collection of tasks

Sample Request

POST account.region.batch.azure.com/jobs/jobId/addtaskcollection?api-version=2022-01-01.15.0



{
  "value": [
    {
      "id": "simple1",
      "commandLine": "cmd /c dir /s"
    },
    {
      "id": "simple2",
      "commandLine": "cmd /c dir /s"
    }
  ]
}

Sample Response

{
  "value": [
    {
      "status": "success",
      "taskId": "simple1",
      "eTag": "0x8D3D623CD661246",
      "lastModified": "2016-09-06T07:02:44.7589958Z",
      "location": "https://account.region.batch.azure.com/jobs/jobId/tasks/simple1"
    },
    {
      "status": "success",
      "taskId": "simple2",
      "eTag": "0x8D3D623CD7072CC",
      "lastModified": "2016-09-06T07:02:44.8270028Z",
      "location": "https://account.region.batch.azure.com/jobs/jobId/tasks/simple2"
    }
  ]
}

Add a complex collection of tasks

Sample Request

POST account.region.batch.azure.com/jobs/jobId/addtaskcollection?api-version=2022-01-01.15.0



{
  "value": [
    {
      "id": "complex1",
      "commandLine": "cmd /c dir /s",
      "resourceFiles": [
        {
          "autoStorageContainerName": "containerName",
          "filePath": "data"
        }
      ],
      "environmentSettings": [
        {
          "name": "env1",
          "value": "value1"
        },
        {
          "name": "env2",
          "value": "value2"
        }
      ],
      "affinityInfo": {
        "affinityId": "affinityId"
      },
      "constraints": {
        "maxWallClockTime": "P1D",
        "retentionTime": "P2D",
        "maxTaskRetryCount": 5
      },
      "requiredSlots": 2,
      "multiInstanceSettings": {
        "numberOfInstances": 3,
        "coordinationCommandLine": "cmd /c echo coordinating",
        "commonResourceFiles": [
          {
            "httpUrl": "https://common.blob.core.windows.net/",
            "filePath": "common.exe"
          }
        ]
      }
    },
    {
      "id": "simple3",
      "commandLine": "cmd /c dir /s"
    }
  ]
}

Sample Response

{
  "value": [
    {
      "taskId": "simple3",
      "status": "success",
      "eTag": "0x8D3D623CE295629",
      "lastModified": "2016-09-06T07:02:46.0386857Z",
      "location": "https://account.region.batch.azure.com/jobs/jobId/tasks/simple3"
    },
    {
      "taskId": "complex1",
      "status": "success",
      "eTag": "0x8D3D623CE29A412",
      "lastModified": "2016-09-06T07:02:46.0406802Z",
      "location": "https://account.region.batch.azure.com/jobs/jobId/tasks/complex1"
    }
  ]
}

Определения

AffinityInformation

Указание локальности, которое может использоваться пакетной службой для выбора вычислительного узла, на котором нужно запустить задачу.

ApplicationPackageReference

Ссылка на пакет для развертывания на вычислительных узлах.

AuthenticationTokenSettings

Параметры маркера проверки подлинности, которые задача может использовать для выполнения операций пакетной службы.

AutoUserScope

Область для автоматического пользователя

AutoUserSpecification

Задает параметры для автоматического пользователя, выполняющего задачу в пакетной службе.

BatchError

Ответ об ошибке, полученный от службы пакетная служба Azure.

BatchErrorDetail

Элемент дополнительных сведений, включенных в ответ на ошибку пакетная служба Azure.

ComputeNodeIdentityReference

Ссылка на назначенное пользователем удостоверение, связанное с пулом пакетной службы, который будет использовать вычислительный узел.

ContainerRegistry

Частный реестр контейнеров.

ContainerWorkingDirectory

Расположение рабочего каталога задачи контейнера.

DependencyAction

Действие, выполняемое пакетной службой для задач, зависящих от этой задачи.

ElevationLevel

Уровень повышения прав пользователя.

EnvironmentSetting

Переменная среды, устанавливаемая в процессе задачи.

ErrorMessage

Сообщение об ошибке, полученное в ответе на ошибку пакетная служба Azure.

ExitCodeMapping

Как пакетная служба должна реагировать, если задача завершает работу с определенным кодом выхода.

ExitCodeRangeMapping

Диапазон кодов выхода и способ реагирования пакетной службы на коды выхода в этом диапазоне.

ExitConditions

Указывает, как пакетная служба должна реагировать при завершении задачи.

ExitOptions

Указывает, как пакетная служба реагирует на определенное условие выхода.

HttpHeader

Пара "Имя-значение" заголовка HTTP

JobAction

Действие, выполняемое для задания, содержащего задачу, если задача завершается с заданным условием выхода и свойством Job onTaskFailed является "performExitOptionsJobAction".

MultiInstanceSettings

Параметры, которые указывают, как выполнять задачу с несколькими экземплярами.

OutputFile

Спецификация отправки файлов из вычислительного узла пакетная служба Azure в другое расположение после завершения выполнения процесса задачи пакетной службой.

OutputFileBlobContainerDestination

Указывает назначение отправки файлов в контейнере хранилища BLOB-объектов Azure.

OutputFileDestination

Место назначения, в которое следует отправить файл.

OutputFileUploadCondition

Условия, при которых должен быть отправлен выходной файл задачи или набор файлов.

OutputFileUploadOptions

Сведения об операции отправки выходного файла, включая условия выполнения отправки.

ResourceFile

Один файл или несколько файлов, которые необходимо скачать на вычислительный узел.

TaskAddCollectionParameter

Коллекция добавляемых пакетная служба Azure Tasks.

TaskAddCollectionResult

Результат добавления коллекции задач в задание.

TaskAddParameter

Добавляемая задача пакетная служба Azure.

TaskAddResult

Результат для одной задачи, добавленной в рамках операции добавления коллекции задач.

TaskAddStatus

Состояние запроса на добавление задачи.

TaskConstraints

Ограничения выполнения, применяемые к задаче.

TaskContainerSettings

Параметры контейнера для задачи.

TaskDependencies

Указывает все зависимости задачи. Любая задача, которая явно указана или находится в диапазоне зависимостей, должна быть завершена до планирования зависимой задачи.

TaskIdRange

Диапазон идентификаторов задач, от которые может зависеть задача. Все задачи с идентификаторами в диапазоне должны быть успешно завершены, прежде чем можно будет запланировать зависимые задачи.

UserIdentity

Определение удостоверения пользователя, под которым выполняется задача.

AffinityInformation

Указание локальности, которое может использоваться пакетной службой для выбора вычислительного узла, на котором нужно запустить задачу.

Name Type Description
affinityId
  • string

Непрозрачная строка, представляющая расположение вычислительного узла или задачи, которая выполнялась ранее.
Вы можете передать affinityId узла, чтобы указать, что эта задача должна выполняться на этом вычислительном узле. Обратите внимание, что это просто мягкое сходство. Если целевой вычислительный узел занят или недоступен во время планирования задачи, задача будет запланирована в другом месте.

ApplicationPackageReference

Ссылка на пакет для развертывания на вычислительных узлах.

Name Type Description
applicationId
  • string

Идентификатор развертываемого приложения.

version
  • string

Версия развертываемого приложения. Если этот параметр опущен, будет развернута версия по умолчанию.
Если это опущено в пуле и для этого приложения версия по умолчанию не указана, запрос завершается ошибкой с кодом invalidApplicationPackageReferences и кодом состояния HTTP 409. Если эта ошибка опущена в задаче и для этого приложения не указана версия по умолчанию, задача завершается ошибкой предварительной обработки.

AuthenticationTokenSettings

Параметры маркера проверки подлинности, которые задача может использовать для выполнения операций пакетной службы.

Name Type Description
access
  • string[]

Ресурсы пакетной службы, к которым маркер предоставляет доступ.
Маркер проверки подлинности предоставляет доступ к ограниченному набору операций пакетной службы. В настоящее время единственным поддерживаемым значением свойства доступа является job, которое предоставляет доступ ко всем операциям, связанным с заданием, содержащим задачу.

AutoUserScope

Область для автоматического пользователя

Name Type Description
pool
  • string

Указывает, что задача выполняется в качестве общей автоматической учетной записи пользователя, созданной на каждом вычислительном узле в пуле.

task
  • string

Указывает, что служба должна создать нового пользователя для задачи.

AutoUserSpecification

Задает параметры для автоматического пользователя, выполняющего задачу в пакетной службе.

Name Type Description
elevationLevel

Уровень повышения прав автоматического пользователя.
Значение по умолчанию — nonAdmin.

scope

Область для автоматического пользователя
Значение по умолчанию — пул. Если пул выполняется Windows необходимо указать значение задачи, если требуется более жесткая изоляция между задачами. Например, если задача изменяет реестр таким образом, что может повлиять на другие задачи или сертификаты были указаны в пуле, которые не должны быть доступны обычным задачам, но должны быть доступны startTasks.

BatchError

Ответ об ошибке, полученный от службы пакетная служба Azure.

Name Type Description
code
  • string

Идентификатор ошибки. Коды инвариантны и предназначены для программного использования.

message

Сообщение, описывающее ошибку, предназначенное для отображения в пользовательском интерфейсе.

values

Коллекция пар "ключ-значение", содержащая дополнительные сведения об ошибке.

BatchErrorDetail

Элемент дополнительных сведений, включенных в ответ на ошибку пакетная служба Azure.

Name Type Description
key
  • string

Идентификатор, указывающий значение свойства Value.

value
  • string

Дополнительные сведения, включенные в ответ на ошибку.

ComputeNodeIdentityReference

Ссылка на назначенное пользователем удостоверение, связанное с пулом пакетной службы, который будет использовать вычислительный узел.

Name Type Description
resourceId
  • string

Идентификатор ресурса ARM удостоверения, назначаемого пользователем.

ContainerRegistry

Частный реестр контейнеров.

Name Type Description
identityReference

Ссылка на назначенное пользователем удостоверение для доступа к Реестр контейнеров Azure вместо имени пользователя и пароля.
Ссылка на назначенное пользователем удостоверение, связанное с пулом пакетной службы, который будет использовать вычислительный узел.

password
  • string

Пароль для входа на сервер реестра.

registryServer
  • string

URL-адрес реестра.
Если этот параметр опущен, значение по умолчанию — "docker.io".

username
  • string

Имя пользователя для входа на сервер реестра.

ContainerWorkingDirectory

Расположение рабочего каталога задачи контейнера.

Name Type Description
containerImageDefault
  • string

Используйте рабочий каталог, определенный в образе контейнера. Убедитесь, что этот каталог не будет содержать файлы ресурсов, скачанные пакетной службой.

taskWorkingDirectory
  • string

Используйте стандартный рабочий каталог задачи пакетной службы, который будет содержать файлы ресурсов задач, заполненные пакетной службой.

DependencyAction

Действие, выполняемое пакетной службой для задач, зависящих от этой задачи.

Name Type Description
block
  • string

Блокирует задачи, ожидающие выполнения этой задачи, предотвращая их планирование.

satisfy
  • string

Выполнение задач, ожидающих выполнения этой задачи; После выполнения всех зависимостей задача будет запланирована.

ElevationLevel

Уровень повышения прав пользователя.

Name Type Description
admin
  • string

Пользователь является пользователем с повышенными правами доступа и работает с полными разрешениями администратора.

nonadmin
  • string

Пользователь является стандартным пользователем без повышенного доступа.

EnvironmentSetting

Переменная среды, устанавливаемая в процессе задачи.

Name Type Description
name
  • string

Имя переменной среды.

value
  • string

Значение переменной среды.

ErrorMessage

Сообщение об ошибке, полученное в ответе на ошибку пакетная служба Azure.

Name Type Description
lang
  • string

Код языка сообщения об ошибке

value
  • string

Текст сообщения.

ExitCodeMapping

Как пакетная служба должна реагировать, если задача завершает работу с определенным кодом выхода.

Name Type Description
code
  • integer

Код выхода процесса.

exitOptions

Как пакетная служба должна реагировать, если задача завершает работу с этим кодом выхода.

ExitCodeRangeMapping

Диапазон кодов выхода и способ реагирования пакетной службы на коды выхода в этом диапазоне.

Name Type Description
end
  • integer

Последний код выхода в диапазоне.

exitOptions

Как пакетная служба должна реагировать, если задача завершается с кодом выхода из диапазона в диапазоне (включительно).

start
  • integer

Первый код выхода в диапазоне.

ExitConditions

Указывает, как пакетная служба должна реагировать при завершении задачи.

Name Type Description
default

Как пакетная служба должна реагировать, если задача завершается сбоем с условием выхода, не охваченным никакими другими свойствами.
Это значение используется, если задача завершает работу с любым ненулевым кодом выхода, не указанным в коллекции exitCodes или exitCodeRanges, с ошибкой предварительной обработки, если свойство preProcessingError отсутствует или ошибка отправки файла, если свойство fileUploadError отсутствует. Если для кода выхода 0 требуется поведение, отличное от используемого по умолчанию, необходимо явно перечислить его с помощью коллекции exitCodes или exitCodeRanges.

exitCodeRanges

Список диапазонов кода выхода задачи и способ реагирования пакетной службы на них.

exitCodes

Список отдельных кодов выхода задачи и способ реагирования пакетной службы на них.

fileUploadError

Как пакетная служба должна реагировать на ошибку отправки файла.
Если задача завершилась с кодом выхода, который был указан через exitCodes или exitCodeRanges, а затем столкнулся с ошибкой отправки файла, то действие, указанное в коде выхода, имеет приоритет.

preProcessingError

Как пакетная служба должна реагировать, если задача не запускается из-за ошибки.

ExitOptions

Указывает, как пакетная служба реагирует на определенное условие выхода.

Name Type Description
dependencyAction

Действие, выполняемое пакетной службой для задач, зависящих от этой задачи.
Возможные значения: "удовлетворить" (позволяет выполнять зависимые задачи) и "блокировать" (зависимые задачи продолжают ждать). Пакетная служба пока не поддерживает отмену зависимых задач.

jobAction

Действие, выполняемое для задания, содержащего задачу, если задача завершается с заданным условием выхода и свойством Job onTaskFailed является "performExitOptionsJobAction".
Значение по умолчанию не используется для кода выхода 0 и завершается для всех остальных условий выхода. Если свойство Job onTaskFailed является noaction, то задание этого свойства возвращает ошибку, и запрос на добавление задачи завершается ошибкой с ошибкой недопустимого значения свойства; Если вы вызываете REST API напрямую, код состояния HTTP — 400 (недопустимый запрос).

HttpHeader

Пара "Имя-значение" заголовка HTTP

Name Type Description
name
  • string

Имя заголовка без учета регистра, которое будет использоваться при отправке выходных файлов

value
  • string

Значение заголовка, используемого при отправке выходных файлов

JobAction

Действие, выполняемое для задания, содержащего задачу, если задача завершается с заданным условием выхода и свойством Job onTaskFailed является "performExitOptionsJobAction".

Name Type Description
disable
  • string

Отключите задание. Это эквивалентно вызову API отключения задания с значением disableTasks для повторного запроса.

none
  • string

Не предпринимать никаких действий.

terminate
  • string

Завершение задания. Параметр terminateReason в задании executionInfo имеет значение TaskFailed.

MultiInstanceSettings

Параметры, которые указывают, как выполнять задачу с несколькими экземплярами.

Name Type Description
commonResourceFiles

Список файлов, скачиваемых пакетной службой перед запуском командной строки координации.
Разница между общими файлами ресурсов и файлами ресурсов задачи заключается в том, что общие файлы ресурсов загружаются для всех подзадач, включая основные, тогда как файлы ресурсов задачи загружаются только для основного. Также обратите внимание, что эти файлы ресурсов не скачиваются в рабочий каталог задач, а скачиваются в корневой каталог задачи (один каталог над рабочим каталогом). Максимальный размер списка файлов ресурсов. При превышении максимального размера запрос завершится ошибкой, и код ошибки ответа будет RequestEntityTooLarge. В этом случае необходимо уменьшить размер коллекции ResourceFiles. Это можно сделать с помощью .zip файлов, пакетов приложений или контейнеров Docker.

coordinationCommandLine
  • string

Командная строка, выполняемая на всех вычислительных узлах, чтобы они могли координироваться при выполнении основной команды задачи.
Типичная командная строка координации запускает фоновую службу и проверяет готовность службы к обработке сообщений между узлами.

numberOfInstances
  • integer

Количество вычислительных узлов, необходимых задаче.
Если этот параметр опущен, значение по умолчанию равно 1.

OutputFile

Спецификация отправки файлов из вычислительного узла пакетная служба Azure в другое расположение после завершения выполнения процесса задачи пакетной службой.

Name Type Description
destination

Назначение для выходных файлов.

filePattern
  • string

Шаблон, указывающий, какие файлы следует отправить.
Поддерживаются относительные и абсолютные пути. Относительные пути относятся к рабочему каталогу задачи. Поддерживаются следующие подстановочные знаки: * соответствует 0 или более символов (например, шаблон abc* будет соответствовать abc или abcdef), ** соответствует любому каталогу, ? соответствует любому одному символу, [abc] соответствует одному символу в квадратных скобках, а [a-c] соответствует одному символу в диапазоне. Квадратные скобки могут содержать отрицание для соответствия любому символу, не указанному (например, [!abc] соответствует любому символу, но a, b или c). Если имя файла начинается с ".", оно игнорируется по умолчанию, но может быть сопоставлено явным образом (например ,.gif не будет соответствовать .a.gif, но ..gif будет). Простой пример: ***.txt соответствует любому файлу, который не запускается в "." и заканчивается .txt в рабочем каталоге задач или любом подкаталоге. Если имя файла содержит подстановочный знак, его можно экранировать с помощью квадратных скобок (например, abc[] будет соответствовать файлу с именем abc). Обратите внимание, что оба и / обрабатываются как разделители каталогов в Windows, но только / находится в Linux. Переменные среды (%var% на Windows или $var в Linux) расширяются до применения шаблона.

uploadOptions

Дополнительные параметры для операции отправки, включая условия выполнения отправки.

OutputFileBlobContainerDestination

Указывает назначение отправки файлов в контейнере хранилища BLOB-объектов Azure.

Name Type Description
containerUrl
  • string

URL-адрес контейнера в Хранилище BLOB-объектов Azure, в который нужно отправить файлы.
Если не используется управляемое удостоверение, URL-адрес должен содержать подписанный URL-адрес (SAS), предоставляющий разрешения на запись для контейнера.

identityReference

Ссылка на назначенное пользователем удостоверение, используемое для доступа к Хранилище BLOB-объектов Azure, заданному containerUrl
Удостоверение должно иметь доступ на запись в контейнер Хранилище BLOB-объектов Azure

path
  • string

Целевой большой двоичный объект или виртуальный каталог в контейнере служба хранилища Azure.
Если filePattern ссылается на определенный файл (т. е. не содержит подстановочных знаков), путь — это имя большого двоичного объекта, в который нужно отправить этот файл. Если filePattern содержит один или несколько подстановочных знаков (и, следовательно, может совпадать с несколькими файлами), путь — это имя виртуального каталога большого двоичного объекта (который добавляется к каждому имени большого двоичного объекта), в который нужно передать файлы. Если этот параметр опущен, файлы отправляются в корень контейнера с именем большого двоичного объекта, соответствующим их имени файла.

uploadHeaders

Список пар "имя-значение" для заголовков, используемых при отправке выходных файлов
Эти заголовки будут указаны при отправке файлов в служба хранилища Azure. Дополнительные сведения см. в разделе "Заголовки запросов " (все типы BLOB-объектов)".

OutputFileDestination

Место назначения, в которое следует отправить файл.

Name Type Description
container

Расположение в хранилище BLOB-объектов Azure, в которое отправляются файлы.

OutputFileUploadCondition

Условия, при которых должен быть отправлен выходной файл задачи или набор файлов.

Name Type Description
taskcompletion
  • string

Отправьте файлы после завершения процесса задачи независимо от того, какой код выхода был.

taskfailure
  • string

Отправьте файлы только после завершения процесса задачи с ненулевым кодом выхода.

tasksuccess
  • string

Отправьте файлы только после завершения процесса задачи с кодом выхода 0.

OutputFileUploadOptions

Сведения об операции отправки выходного файла, включая условия выполнения отправки.

Name Type Description
uploadCondition

Условия отправки выходного файла задачи или набора файлов.
Значение по умолчанию — taskcompletion.

ResourceFile

Один файл или несколько файлов, которые необходимо скачать на вычислительный узел.

Name Type Description
autoStorageContainerName
  • string

Имя контейнера хранилища в учетной записи автоматического хранения.
Свойства autoStorageContainerName, storageContainerUrl и httpUrl являются взаимоисключающими, и их необходимо указать.

blobPrefix
  • string

Префикс большого двоичного объекта, используемый при скачивании больших двоичных объектов из контейнера служба хранилища Azure. Будут загружены только большие двоичные объекты, имена которых начинаются с указанного префикса.
Свойство допустимо только при использовании autoStorageContainerName или storageContainerUrl. Этот префикс может быть частичным именем файла или подкаталогом. Если префикс не указан, скачиваются все файлы в контейнере.

fileMode
  • string

Атрибут режима разрешений файла в восьмеричном формате.
Это свойство применяется только к файлам, скачиваемых на вычислительные узлы Linux. Он будет игнорироваться, если он указан для resourceFile, который будет скачан на вычислительный узел Windows. Если это свойство не указано для вычислительного узла Linux, к файлу применяется значение по умолчанию 0770.

filePath
  • string

Расположение на вычислительном узле, на который нужно скачать файлы, относительно рабочего каталога задачи.
Если задано свойство httpUrl, параметр filePath является обязательным и описывает путь, в который будет скачан файл, включая имя файла. В противном случае, если указано свойство autoStorageContainerName или storageContainerUrl, filePath является необязательным и является каталогом для скачивания файлов. Если filePath используется в качестве каталога, любая структура каталогов, уже связанная с входными данными, будет сохранена в полном объеме и добавлена в указанный каталог filePath. Указанный относительный путь не может выйти из рабочего каталога задачи (например, с помощью "..").

httpUrl
  • string

URL-адрес для скачивания файла.
Свойства autoStorageContainerName, storageContainerUrl и httpUrl являются взаимоисключающими, и их необходимо указать. Если URL-адрес указывает на Хранилище BLOB-объектов Azure, он должен быть доступен для чтения с вычислительных узлов. Существует три способа получить такой URL-адрес для большого двоичного объекта в службе хранилища Azure: включить подписанный URL-адрес (SAS), предоставляющий разрешения на чтение большого двоичного объекта, использовать управляемое удостоверение с разрешением на чтение или задать ACL для большого двоичного объекта или его контейнера, чтобы разрешить общий доступ.

identityReference

Ссылка на назначенное пользователем удостоверение, используемое для доступа к Хранилище BLOB-объектов Azure, заданному storageContainerUrl или httpUrl.
Ссылка на назначенное пользователем удостоверение, связанное с пулом пакетной службы, который будет использовать вычислительный узел.

storageContainerUrl
  • string

URL-адрес контейнера больших двоичных объектов в Хранилище BLOB-объектов Azure.
Свойства autoStorageContainerName, storageContainerUrl и httpUrl являются взаимоисключающими, и их необходимо указать. Этот URL-адрес должен быть доступен для чтения и перечисления из вычислительных узлов. Существует три способа получить такой URL-адрес для контейнера в службе хранилища Azure: включить подписанный URL-адрес (SAS), предоставляющий разрешения на чтение и список для контейнера, использовать управляемое удостоверение с разрешениями на чтение и список или задать список ACL для контейнера, чтобы разрешить общий доступ.

TaskAddCollectionParameter

Коллекция добавляемых пакетная служба Azure Tasks.

Name Type Description
value

Коллекция задач для добавления. Максимальное число задач — 100.
Общий сериализованный размер этой коллекции должен быть меньше 1 МБ. Если оно больше 1 МБ (например, если каждая задача имеет 100 файлов ресурсов или переменных среды), запрос завершится ошибкой с кодом RequestBodyTooLarge и повторно будет выполнен повторно с меньшим количеством задач.

TaskAddCollectionResult

Результат добавления коллекции задач в задание.

Name Type Description
value

Результаты операции добавления коллекции задач.

TaskAddParameter

Добавляемая задача пакетная служба Azure.

Name Type Description
affinityInfo

Указание локальности, которое может использоваться пакетной службой для выбора вычислительного узла, на котором будет запущена новая задача.

applicationPackageReferences

Список пакетов, которые пакетная служба будет развертывать на вычислительном узле перед выполнением командной строки.
Пакеты приложений загружаются и развертываются в общем каталоге, а не в рабочем каталоге задачи. Таким образом, если указанный пакет уже находится на узле и находится в актуальном состоянии, он не скачан повторно; Используется существующая копия на вычислительном узле. Если не удается установить указанный пакет, например из-за того, что пакет был удален или сбой загрузки, задача завершается сбоем.

authenticationTokenSettings

Параметры маркера проверки подлинности, который задача может использовать для выполнения операций пакетной службы.
Если это свойство задано, пакетная служба предоставляет задачу с маркером проверки подлинности, который можно использовать для проверки подлинности операций пакетной службы, не требуя ключа доступа к учетной записи. Маркер предоставляется через переменную среды AZ_BATCH_AUTHENTICATION_TOKEN. Операции, которые задача может выполнять с помощью маркера, зависят от параметров. Например, задача может запрашивать разрешения задания, чтобы добавить другие задачи в задание, или проверить состояние задания или других задач в задании.

commandLine
  • string

Командная строка задачи.
Для задач с несколькими экземплярами командная строка выполняется в качестве основной задачи после завершения выполнения командной строки координации. Командная строка не выполняется под оболочкой и поэтому не может воспользоваться преимуществами функций оболочки, таких как расширение переменной среды. Если вы хотите воспользоваться такими функциями, необходимо вызвать оболочку в командной строке, например с помощью cmd /c MyCommand в Windows или "/bin/sh -c MyCommand" в Linux. Если командная строка ссылается на пути к файлам, она должна использовать относительный путь (относительно рабочего каталога задачи) или использовать предоставленную пакетную переменную среды (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).

constraints

Ограничения выполнения, применяемые к этой задаче.
Если ограничения не указаны, maxTaskRetryCount — это maxTaskRetryCount, указанный для задания, значение maxWallClockTime бесконечно, а время хранения — 7 дней.

containerSettings

Параметры контейнера, под которым выполняется задача.
Если пул, который будет выполнять эту задачу, имеет набор containerConfiguration, его также необходимо задать. Если пул, который будет выполнять эту задачу, не имеет набора containerConfiguration, это не должно быть установлено. Если этот параметр указан, все каталоги рекурсивно под AZ_BATCH_NODE_ROOT_DIR (корень каталогов пакетная служба Azure на узле) сопоставляются с контейнером, все переменные среды задач сопоставляются с контейнером, а командная строка задачи выполняется в контейнере. Файлы, созданные в контейнере за пределами AZ_BATCH_NODE_ROOT_DIR, могут не отражаться на диске узла, то есть API пакетной службы не смогут получить доступ к этим файлам.

dependsOn

Задачи, от которые зависит эта задача.
Эта задача не будет запланирована до тех пор, пока не будут успешно завершены все задачи, от которых она зависит. Если какие-либо из этих задач завершаются сбоем и исчерпаны их количество повторных попыток, эта задача никогда не будет запланирована. Если в задании не задано значение true, а этот элемент имеет значение true, запрос завершается ошибкой с кодом TaskDependenciesNotSpecifiedOnJob.

displayName
  • string

Отображаемое имя задачи.
Отображаемое имя не должно быть уникальным и может содержать любые символы Юникода до максимальной длины 1024.

environmentSettings

Список параметров переменной среды для задачи.

exitConditions

Указывает, как пакетная служба должна реагировать при завершении задачи.
Как пакетная служба должна реагировать после завершения задачи.

id
  • string

Строка, однозначно идентифицирующая задачу в задании.
Идентификатор может содержать любое сочетание буквенно-цифровых символов, включая дефисы и символы подчеркивания, и не может содержать более 64 символов. Идентификатор является сохранением регистра и без учета регистра (т. е. у вас может не быть двух идентификаторов в задании, которые отличаются только по регистру).

multiInstanceSettings

Объект, указывающий, что задача является задачей с несколькими экземплярами и содержит сведения о выполнении задачи с несколькими экземплярами.
Задачи с несколькими экземплярами обычно используются для поддержки задач MPI. В случае MPI, если какая-либо из подзадач завершается сбоем (например, из-за выхода с кодом выхода без нуля) происходит сбой всей задачи с несколькими экземплярами. Затем задача с несколькими экземплярами завершается и повторно выполняется до ограничения повторных попыток.

outputFiles

Список файлов, которые пакетная служба отправит с вычислительного узла после выполнения командной строки.
Для задач с несколькими экземплярами файлы будут отправляться только с вычислительного узла, на котором выполняется основная задача.

requiredSlots
  • integer

Количество слотов планирования, необходимых для выполнения задачи.
Значение по умолчанию — 1. Задача может выполняться только на вычислительном узле, если на узле достаточно свободных слотов планирования. Для задач с несколькими экземплярами это должно быть 1.

resourceFiles

Список файлов, скачиваемых пакетной службой на вычислительный узел перед выполнением командной строки.
Для задач с несколькими экземплярами файлы ресурсов будут загружены только на вычислительный узел, на котором выполняется основная задача. Максимальный размер списка файлов ресурсов. При превышении максимального размера запрос завершится ошибкой, и код ошибки ответа будет RequestEntityTooLarge. В этом случае необходимо уменьшить размер коллекции ResourceFiles. Это можно сделать с помощью .zip файлов, пакетов приложений или контейнеров Docker.

userIdentity

Удостоверение пользователя, под которым выполняется задача.
Если этот параметр опущен, задача выполняется как пользователь без прав администратора, уникальный для задачи.

TaskAddResult

Результат для одной задачи, добавленной в рамках операции добавления коллекции задач.

Name Type Description
eTag
  • string

ETag задачи, если задача успешно добавлена.
Это можно использовать для определения того, изменилась ли задача между запросами. В частности, вы можете передать ETag с запросом на обновление задачи, чтобы указать, что изменения вступают в силу только в том случае, если никто другой не изменил задание в то же время.

error

При попытке добавить задачу произошла ошибка.

lastModified
  • string

Время последнего изменения задачи.

location
  • string

URL-адрес задачи, если задача успешно добавлена.

status

Состояние запроса на добавление задачи.

taskId
  • string

Идентификатор задачи, для которой это результат.

TaskAddStatus

Состояние запроса на добавление задачи.

Name Type Description
clienterror
  • string

Задача не удалось добавить из-за ошибки клиента и не должна выполняться повторно, не изменяя запрос соответствующим образом.

servererror
  • string

Не удалось добавить задачу из-за ошибки сервера и ее можно повторить без изменения.

success
  • string

Задача успешно добавлена.

TaskConstraints

Ограничения выполнения, применяемые к задаче.

Name Type Description
maxTaskRetryCount
  • integer

Максимальное число повторных попыток задачи. Пакетная служба повторяет задачу, если ее код выхода не является нулевым.
Обратите внимание, что это значение определяет количество повторных попыток для исполняемого файла Task из-за ненулевого кода выхода. Пакетная служба попытается выполнить задачу один раз, а затем может повторить попытку до этого ограничения. Например, если максимальное число повторных попыток равно 3, пакетная служба пытается выполнить задачу до 4 раз (одна начальная попытка и 3 повторных попытки). Если максимальное число повторных попыток равно 0, пакетная служба не повторяет задачу после первой попытки. Если максимальное число повторных попыток равно –1, пакетная служба повторяет задачу без ограничения, однако это не рекомендуется для задачи запуска или любой задачи. Значение по умолчанию — 0 (без повторных попыток)

maxWallClockTime
  • string

Максимальное затраченное время выполнения задачи, измеряемое с момента запуска задачи. Если задача не завершается в течение срока, пакетная служба завершает ее.
Если это не указано, не существует ограничений на продолжительность выполнения задачи.

retentionTime
  • string

Минимальное время хранения каталога задач на вычислительном узле, где он выполнялся, с момента завершения выполнения. После этого пакетная служба может удалить каталог задач и все его содержимое.
Значение по умолчанию — 7 дней, т. е. каталог задач будет храниться в течение 7 дней, если вычислительный узел не удален или задание не будет удалено.

TaskContainerSettings

Параметры контейнера для задачи.

Name Type Description
containerRunOptions
  • string

Дополнительные параметры для команды создания контейнера.
Эти дополнительные параметры предоставляются в качестве аргументов для команды docker create, в дополнение к тем, которые управляются пакетной службой.

imageName
  • string

Образ, используемый для создания контейнера, в котором будет выполняться задача.
Это полная ссылка на образ, как указано в "docker pull". Если тег не указан как часть имени изображения, тег ":latest" используется в качестве значения по умолчанию.

registry

Частный реестр, содержащий образ контейнера.
Этот параметр можно опустить, если он уже был указан при создании пула.

workingDirectory

Расположение рабочего каталога задачи контейнера.
Значение по умолчанию — taskWorkingDirectory.

TaskDependencies

Указывает все зависимости задачи. Любая задача, которая явно указана или находится в диапазоне зависимостей, должна быть завершена до планирования зависимой задачи.

Name Type Description
taskIdRanges

Список диапазонов идентификаторов задач, от которые зависит эта задача. Перед планированием зависимой задачи все задачи во всех диапазонах должны быть выполнены успешно.

taskIds
  • string[]

Список идентификаторов задач, от которые зависит эта задача. Все задачи в этом списке должны быть успешно завершены до того, как зависимая задача может быть запланирована.
Коллекция taskIds ограничена 64000 символами (т. е. объединенной длиной всех идентификаторов задач). Если коллекция taskIds превышает максимальную длину, запрос add Task завершается ошибкой с кодом TaskDependencyListTooLong. В этом случае рекомендуется использовать диапазоны идентификаторов задач.

TaskIdRange

Диапазон идентификаторов задач, от которые может зависеть задача. Все задачи с идентификаторами в диапазоне должны быть успешно завершены, прежде чем можно будет запланировать зависимые задачи.

Name Type Description
end
  • integer

Последний идентификатор задачи в диапазоне.

start
  • integer

Первый идентификатор задачи в диапазоне.

UserIdentity

Определение удостоверения пользователя, под которым выполняется задача.

Name Type Description
autoUser

Автоматический пользователь, под которым выполняется задача.
Свойства userName и autoUser являются взаимоисключающими; Необходимо указать один, но не оба.

username
  • string

Имя удостоверения пользователя, под которым выполняется задача.
Свойства userName и autoUser являются взаимоисключающими; Необходимо указать один, но не оба.