TaskAddParameter Класс
Добавляемая задача пакетная служба Azure.
Пакетная служба будет повторять задачи при запуске операции восстановления на узле. Примеры операций восстановления включают (но не ограничиваются ими), когда неработоспособный узел перезагружается или вычислительный узел исчез из-за сбоя узла. Повторные попытки из-за операций восстановления не зависят от maxTaskRetryCount и не учитываются. Даже если maxTaskRetryCount равно 0, может произойти внутренняя повторная попытка из-за операции восстановления. Поэтому все задачи должны быть идемпотентными. Это означает, что задачи должны допускать прерывание и перезапуск без повреждения или дублирования данных. Для длительных задач рекомендуется использовать определенную форму создания контрольных точек.
Для отправки в Azure необходимо заполнить все необходимые параметры.
- Наследование
-
TaskAddParameter
Конструктор
TaskAddParameter(*, id: str, command_line: str, display_name: str = None, container_settings=None, exit_conditions=None, resource_files=None, output_files=None, environment_settings=None, affinity_info=None, constraints=None, required_slots: int = None, user_identity=None, multi_instance_settings=None, depends_on=None, application_package_references=None, authentication_token_settings=None, **kwargs)
Параметры
- id
- str
Обязательный. Идентификатор может содержать любое сочетание буквенно-цифровых символов, включая дефисы и символы подчеркивания, и не может содержать более 64 символов. Идентификатор сохраняет регистр и не учитывает регистр (то есть в задании может не быть двух идентификаторов, которые отличаются только по регистру).
- display_name
- str
Отображаемое имя не должно быть уникальным и может содержать любые символы Юникода длиной до 1024.
- command_line
- str
Обязательный. Для задач с несколькими экземплярами командная строка выполняется как основная задача после завершения выполнения командной строки координации основной задачи и всех подзадач. Командная строка не выполняется в оболочке и поэтому не может использовать преимущества таких функций оболочки, как расширение переменной среды. Если вы хотите воспользоваться преимуществами таких функций, следует вызвать оболочку в командной строке, например с помощью cmd /c MyCommand в Windows или /bin/sh -c MyCommand в Linux. Если командная строка ссылается на пути к файлам, она должна использовать относительный путь (относительно рабочего каталога задачи) или переменную среды, предоставленную пакетной службой (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).
- container_settings
- TaskContainerSettings
Параметры контейнера, в котором выполняется задача. Если в пуле, в который будет выполняться эта задача, задан параметр containerConfiguration, его также необходимо задать. Если в пуле, в который будет выполняться эта задача, не задан параметр containerConfiguration, его не следует задавать. Если этот параметр указан, все каталоги рекурсивно под AZ_BATCH_NODE_ROOT_DIR (корневой каталог пакетная служба Azure на узле) сопоставляются с контейнером, все переменные среды задач сопоставляются с контейнером, а командная строка задачи выполняется в контейнере. Файлы, созданные в контейнере за пределами AZ_BATCH_NODE_ROOT_DIR, могут не отражаться на диске узла, а это означает, что API пакетной службы не смогут получить доступ к этим файлам.
- exit_conditions
- ExitConditions
Как пакетная служба должна реагировать на выполнение задачи.
- resource_files
- list[ResourceFile]
Для задач с несколькими экземплярами файлы ресурсов будут скачивать только на вычислительный узел, на котором выполняется основная задача. Существует максимальный размер списка файлов ресурсов. При превышении максимального размера запрос завершится ошибкой, а код ошибки ответа — RequestEntityTooLarge. В этом случае необходимо уменьшить размер коллекции ResourceFiles. Это можно сделать с помощью .zip файлов, пакетов приложений или контейнеров Docker.
- output_files
- list[OutputFile]
Для задач с несколькими экземплярами файлы будут отправляться только с вычислительного узла, на котором выполняется основная задача.
- environment_settings
- list[EnvironmentSetting]
- affinity_info
- AffinityInformation
Указание о локальности, которое может использоваться пакетной службой для выбора вычислительного узла, на котором будет запущена новая задача.
- constraints
- TaskConstraints
Ограничения выполнения, применяемые к этой задаче. Если ограничения не указаны, параметр maxTaskRetryCount будет параметром maxTaskRetryCount, указанным для задания, maxWallClockTime — бесконечным, а retentionTime — 7 дней.
- required_slots
- int
Количество слотов планирования, необходимых для выполнения задачи. Значение по умолчанию — 1. Задача может быть запланирована на выполнение на вычислительном узле, только если на узле достаточно свободных слотов планирования. Для задач с несколькими экземплярами это значение должно быть 1.
- user_identity
- UserIdentity
Удостоверение пользователя, под которым выполняется задача. Если этот параметр опущен, задача выполняется от имени пользователя, не являющегося административным, уникальным для задачи.
- multi_instance_settings
- MultiInstanceSettings
Объект , указывающий, что задача является задачей с несколькими экземплярами, и содержит сведения о том, как выполнить задачу с несколькими экземплярами.
- depends_on
- TaskDependencies
Задачи, от которые зависит эта задача. Эта задача не будет запланирована до тех пор, пока все задачи, от которых она зависит, не будут успешно завершены. Если какая-либо из этих задач завершается сбоем и исчерпывает количество повторных попыток, эта задача никогда не будет запланирована. Если для задания не задано значение true для объекта usingTaskDependencies и этот элемент присутствует, запрос завершается ошибкой с кодом TaskDependenciesNotSpecifiedOnJob.
- application_package_references
- list[ApplicationPackageReference]
Пакеты приложений скачиваются и развертываются в общем каталоге, а не в рабочий каталог задачи. Таким образом, если пакет, на который указан ссылка, уже находится на узле и обновлен, он не скачивается повторно; Используется существующая копия на вычислительном узле. Если не удается установить указанный пакет, например из-за удаления пакета или из-за сбоя скачивания, задача завершается сбоем.
- authentication_token_settings
- AuthenticationTokenSettings
Параметры маркера проверки подлинности, который задача может использовать для выполнения операций пакетной службы. Если это свойство задано, пакетная служба предоставляет задаче маркер проверки подлинности, который можно использовать для проверки подлинности операций пакетной службы без необходимости ключа доступа учетной записи. Маркер предоставляется с помощью переменной среды AZ_BATCH_AUTHENTICATION_TOKEN. Операции, которые задача может выполнять с помощью маркера, зависят от параметров. Например, задача может запрашивать разрешения задания для добавления других задач в задание или проверка состояние задания или других задач в задании.
Методы
as_dict |
Возвращает диктовку, которая может иметь значение JSONify с помощью json.dump. При дополнительном использовании можно использовать обратный вызов в качестве параметра: Ключ — это имя атрибута, используемого в Python. Attr_desc — это диктовка метаданных. В настоящее время содержит тип с типом msrest и key с ключом в кодировке RestAPI. Значение — это текущее значение в этом объекте. Возвращаемая строка будет использоваться для сериализации ключа. Если тип возвращаемого значения является списком, это считается иерархическим результирующим диктом. См. три примера в этом файле:
Если требуется сериализация XML, можно передать kwargs is_xml=True. |
deserialize |
Выполните синтаксический анализ str с помощью синтаксиса RestAPI и верните модель. |
enable_additional_properties_sending | |
from_dict |
Синтаксический анализ диктовки с помощью заданного средства извлечения ключей возвращает модель. По умолчанию рекомендуется использовать средства извлечения ключей (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor и last_rest_key_case_insensitive_extractor). |
is_xml_model | |
serialize |
Возвращает json, который будет отправлен в Azure из этой модели. Это псевдоним для as_dict(full_restapi_key_transformer, keep_readonly=False). Если требуется сериализация XML, можно передать kwargs is_xml=True. |
validate |
Рекурсивная проверка модели и возврат списка ValidationError. |
as_dict
Возвращает диктовку, которая может иметь значение JSONify с помощью json.dump.
При дополнительном использовании можно использовать обратный вызов в качестве параметра:
Ключ — это имя атрибута, используемого в Python. Attr_desc — это диктовка метаданных. В настоящее время содержит тип с типом msrest и key с ключом в кодировке RestAPI. Значение — это текущее значение в этом объекте.
Возвращаемая строка будет использоваться для сериализации ключа. Если тип возвращаемого значения является списком, это считается иерархическим результирующим диктом.
См. три примера в этом файле:
attribute_transformer
full_restapi_key_transformer
last_restapi_key_transformer
Если требуется сериализация XML, можно передать kwargs is_xml=True.
as_dict(keep_readonly=True, key_transformer=<function attribute_transformer>, **kwargs)
Параметры
- key_transformer
- <xref:function>
Функция преобразователя ключей.
- keep_readonly
Возвращаемое значение
Объект, совместимый с JSON для диктовки
Возвращаемый тип
deserialize
Выполните синтаксический анализ str с помощью синтаксиса RestAPI и верните модель.
deserialize(data, content_type=None)
Параметры
- content_type
- str
JSON по умолчанию задайте значение application/xml, если XML.
Возвращаемое значение
Экземпляр этой модели
Исключения
enable_additional_properties_sending
enable_additional_properties_sending()
from_dict
Синтаксический анализ диктовки с помощью заданного средства извлечения ключей возвращает модель.
По умолчанию рекомендуется использовать средства извлечения ключей (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor и last_rest_key_case_insensitive_extractor).
from_dict(data, key_extractors=None, content_type=None)
Параметры
- content_type
- str
JSON по умолчанию задайте значение application/xml, если XML.
- key_extractors
Возвращаемое значение
Экземпляр этой модели
Исключения
is_xml_model
is_xml_model()
serialize
Возвращает json, который будет отправлен в Azure из этой модели.
Это псевдоним для as_dict(full_restapi_key_transformer, keep_readonly=False).
Если требуется сериализация XML, можно передать kwargs is_xml=True.
serialize(keep_readonly=False, **kwargs)
Параметры
- keep_readonly
- bool
Если вы хотите сериализовать атрибуты только для чтения
Возвращаемое значение
Объект, совместимый с JSON для диктовки
Возвращаемый тип
validate
Рекурсивная проверка модели и возврат списка ValidationError.
validate()
Возвращаемое значение
Список ошибок проверки
Возвращаемый тип
Azure SDK for Python