Поделиться через


StartTask interface

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

Свойства

commandLine

Командная строка не выполняется под оболочкой и поэтому не может воспользоваться преимуществами функций оболочки, таких как расширение переменной среды. Если вы хотите воспользоваться такими функциями, необходимо вызвать оболочку в командной строке, например с помощью cmd /c MyCommand в Windows или "/bin/sh -c MyCommand" в Linux. Требуется, если указаны другие свойства startTask.

containerSettings

При указании все каталоги рекурсивно под AZ_BATCH_NODE_ROOT_DIR (корнем каталогов пакетной службы Azure на узле) сопоставляются с контейнером, все переменные среды задач сопоставляются с контейнером, а командная строка задачи выполняется в контейнере.

environmentSettings

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

maxTaskRetryCount

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

resourceFiles

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

userIdentity

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

waitForSuccess

Если значение true и задача запуска завершается сбоем на вычислительном узле, пакетная служба повторяет задачу запуска до максимального количества повторных попыток (maxTaskRetryCount). Если задача по-прежнему не выполнена успешно после всех повторных попыток, служба пакетной службы помечает вычислительный узел неиспользуемым и не запланирует задачи. Это условие можно обнаружить с помощью состояния узла и подробных сведений об ошибке планирования. Если значение false, служба пакетной службы не ожидает завершения начальной задачи. В этом случае другие задачи могут запускаться на вычислительном узле, пока задача запуска по-прежнему выполняется; и даже если задача запуска завершается сбоем, новые задачи будут продолжать планироваться на узле. Значение по умолчанию — true.

Сведения о свойстве

commandLine

Командная строка не выполняется под оболочкой и поэтому не может воспользоваться преимуществами функций оболочки, таких как расширение переменной среды. Если вы хотите воспользоваться такими функциями, необходимо вызвать оболочку в командной строке, например с помощью cmd /c MyCommand в Windows или "/bin/sh -c MyCommand" в Linux. Требуется, если указаны другие свойства startTask.

commandLine?: string

Значение свойства

string

containerSettings

При указании все каталоги рекурсивно под AZ_BATCH_NODE_ROOT_DIR (корнем каталогов пакетной службы Azure на узле) сопоставляются с контейнером, все переменные среды задач сопоставляются с контейнером, а командная строка задачи выполняется в контейнере.

containerSettings?: TaskContainerSettings

Значение свойства

environmentSettings

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

environmentSettings?: EnvironmentSetting[]

Значение свойства

maxTaskRetryCount

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

maxTaskRetryCount?: number

Значение свойства

number

resourceFiles

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

resourceFiles?: ResourceFile[]

Значение свойства

userIdentity

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

userIdentity?: UserIdentity

Значение свойства

waitForSuccess

Если значение true и задача запуска завершается сбоем на вычислительном узле, пакетная служба повторяет задачу запуска до максимального количества повторных попыток (maxTaskRetryCount). Если задача по-прежнему не выполнена успешно после всех повторных попыток, служба пакетной службы помечает вычислительный узел неиспользуемым и не запланирует задачи. Это условие можно обнаружить с помощью состояния узла и подробных сведений об ошибке планирования. Если значение false, служба пакетной службы не ожидает завершения начальной задачи. В этом случае другие задачи могут запускаться на вычислительном узле, пока задача запуска по-прежнему выполняется; и даже если задача запуска завершается сбоем, новые задачи будут продолжать планироваться на узле. Значение по умолчанию — true.

waitForSuccess?: boolean

Значение свойства

boolean