StartTask interface
В некоторых случаях начальная задача может выполняться повторно, даже если узел не был перезагружен. Из-за этого задачи запуска должны быть идемпотентными и завершаются корректно, если программа установки уже выполнена. Следует учитывать, чтобы избежать запуска задач, которые создают отсортовый процесс или устанавливают или запуска служб из рабочего каталога начальной задачи, так как это приведет к тому, что пакетная служба сможет повторно запустить начальную задачу.
Свойства
| command |
Командная строка не выполняется под оболочкой и поэтому не может воспользоваться преимуществами функций оболочки, таких как расширение переменной среды. Если вы хотите воспользоваться такими функциями, необходимо вызвать оболочку в командной строке, например с помощью cmd /c MyCommand в Windows или "/bin/sh -c MyCommand" в Linux. Требуется, если указаны другие свойства startTask. |
| container |
При указании все каталоги рекурсивно под AZ_BATCH_NODE_ROOT_DIR (корнем каталогов пакетной службы Azure на узле) сопоставляются с контейнером, все переменные среды задач сопоставляются с контейнером, а командная строка задачи выполняется в контейнере. |
| environment |
Список параметров переменной среды для начальной задачи. |
| max |
Пакетная служба повторяет задачу, если его код выхода не является ненулевой. Обратите внимание, что это значение специально управляет числом повторных попыток. Пакетная служба попытается выполнить задачу один раз, а затем повторите попытку до этого ограничения. Например, если максимальное число повторных попыток равно 3, пакетная служба пытается выполнить задачу до 4 раз (одна начальная попытка и 3 повторные попытки). Если максимальное число повторных попыток равно 0, пакетная служба не повторяет задачу. Если максимальное число повторных попыток равно -1, пакетная служба повторяет задачу без ограничения. Значение по умолчанию — 0 |
| resource |
Список файлов, которые служба пакетной службы скачивает на вычислительный узел перед выполнением командной строки. |
| user |
Если этот параметр не указан, задача выполняется как пользователь, не являющийся администратором, уникальным для задачи. |
| wait |
Если значение 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