Partager via


JobReleaseTask Classe

Tâche de mise en production du travail à exécuter à l’achèvement du travail sur n’importe quel nœud de calcul sur lequel le travail s’est exécuté.

La tâche de mise en production du travail s’exécute lorsque le travail se termine, en raison de l’une des raisons suivantes : l’utilisateur appelle l’API Terminer le travail ou l’API Supprimer le travail pendant que le travail est toujours actif, la contrainte de temps d’horloge maximale du travail est atteinte et le travail est toujours actif, ou la tâche du gestionnaire de travaux terminée, et le travail est configuré pour s’arrêter lorsque le gestionnaire de travaux se termine. La tâche de mise en production du travail s’exécute sur chaque nœud où les tâches du travail ont été exécutées et où la tâche de préparation du travail a été exécutée et terminée. Si vous réimagez un nœud après l’exécution de la tâche de préparation du travail et que le travail se termine sans aucune autre tâche du travail en cours d’exécution sur ce nœud (et que la tâche de préparation du travail ne s’exécute donc pas à nouveau), la tâche de mise en production du travail ne s’exécute pas sur ce nœud de calcul. Si un nœud redémarre alors que la tâche de mise en production du travail est toujours en cours d’exécution, la tâche de mise en production du travail s’exécute à nouveau lorsque le nœud de calcul démarre. Le travail n’est pas marqué comme terminé tant que toutes les tâches de mise en production du travail ne sont pas terminées. La tâche de mise en production du travail s’exécute en arrière-plan. Il n’occupe pas un emplacement de planification ; autrement dit, elle ne compte pas dans la limite taskSlotsPerNode spécifiée sur le pool.

Tous les paramètres requis doivent être renseignés pour pouvoir être envoyés à Azure.

Héritage
JobReleaseTask

Constructeur

JobReleaseTask(*, command_line: str, id: str = None, container_settings=None, resource_files=None, environment_settings=None, max_wall_clock_time=None, retention_time=None, user_identity=None, **kwargs)

Paramètres

id
str
Obligatoire

L’ID peut contenir n’importe quelle combinaison de caractères alphanumériques, y compris des traits d’union et des traits de soulignement, et ne peut pas contenir plus de 64 caractères. Si vous ne spécifiez pas cette propriété, le service Batch affecte la valeur par défaut « jobrelease ». Aucune autre tâche dans le travail ne peut avoir le même ID que la tâche de mise en production du travail. Si vous essayez d’envoyer une tâche avec le même ID, le service Batch rejette la demande avec le code d’erreur TaskIdSameAsJobReleaseTask ; si vous appelez directement l’API REST, le code http status est 409 (conflit).

command_line
str
Obligatoire

Obligatoire. La ligne de commande ne s’exécute pas sous un interpréteur de commandes et ne peut donc pas tirer parti des fonctionnalités de l’interpréteur de commandes telles que l’expansion des variables d’environnement. Si vous souhaitez tirer parti de ces fonctionnalités, vous devez appeler l’interpréteur de commandes dans la ligne de commande, par exemple en utilisant « cmd /c MyCommand » dans Windows ou « /bin/sh -c MyCommand » dans Linux. Si la ligne de commande fait référence à des chemins de fichier, elle doit utiliser un chemin relatif (relatif au répertoire de travail De la tâche) ou utiliser la variable d’environnement fournie par Batch (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).

container_settings
TaskContainerSettings
Obligatoire

Paramètres du conteneur sous lequel la tâche de mise en production du travail s’exécute. Lorsque cela est spécifié, tous les répertoires sous le AZ_BATCH_NODE_ROOT_DIR (la racine des répertoires Azure Batch sur le nœud) sont mappés dans le conteneur, toutes les variables d’environnement de tâche sont mappées dans le conteneur et la ligne de commande Tâche est exécutée dans le conteneur. Les fichiers produits dans le conteneur en dehors de AZ_BATCH_NODE_ROOT_DIR peuvent ne pas être répercutés sur le disque hôte, ce qui signifie que les API de fichiers Batch ne pourront pas accéder à ces fichiers.

resource_files
list[ResourceFile]
Obligatoire

Les fichiers répertoriés sous cet élément se trouvent dans le répertoire de travail de la tâche.

environment_settings
list[EnvironmentSetting]
Obligatoire
max_wall_clock_time
<xref:timedelta>
Obligatoire
retention_time
<xref:timedelta>
Obligatoire

La valeur par défaut est 7 jours, c’est-à-dire que le répertoire task est conservé pendant 7 jours, sauf si le nœud de calcul est supprimé ou que le travail est supprimé.

user_identity
UserIdentity
Obligatoire

Identité de l’utilisateur sous laquelle la tâche de mise en production du travail s’exécute. Si elle est omise, la tâche s’exécute en tant qu’utilisateur non administratif unique à la tâche.

Méthodes

as_dict

Retourne un dictée qui peut être JSONify à l’aide de json.dump.

L’utilisation avancée peut éventuellement utiliser un rappel comme paramètre :

La clé est le nom d’attribut utilisé dans Python. Attr_desc est un dictée de métadonnées. Contient actuellement « type » avec le type msrest et « key » avec la clé encodée RestAPI. Value est la valeur actuelle dans cet objet.

La chaîne retournée sera utilisée pour sérialiser la clé. Si le type de retour est une liste, cela est considéré comme un dicté de résultat hiérarchique.

Consultez les trois exemples de ce fichier :

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Si vous souhaitez une sérialisation XML, vous pouvez passer les kwargs is_xml=True.

deserialize

Analysez un str à l’aide de la syntaxe RestAPI et retournez un modèle.

enable_additional_properties_sending
from_dict

L’analyse d’un dicté à l’aide de l’extracteur de clé donné retourne un modèle.

Par défaut, considérez les extracteurs de clés (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor et last_rest_key_case_insensitive_extractor)

is_xml_model
serialize

Retourne le JSON qui serait envoyé à Azure à partir de ce modèle.

Il s’agit d’un alias pour as_dict(full_restapi_key_transformer, keep_readonly=False).

Si vous souhaitez une sérialisation XML, vous pouvez passer les kwargs is_xml=True.

validate

Validez ce modèle de manière récursive et retournez une liste de ValidationError.

as_dict

Retourne un dictée qui peut être JSONify à l’aide de json.dump.

L’utilisation avancée peut éventuellement utiliser un rappel comme paramètre :

La clé est le nom d’attribut utilisé dans Python. Attr_desc est un dictée de métadonnées. Contient actuellement « type » avec le type msrest et « key » avec la clé encodée RestAPI. Value est la valeur actuelle dans cet objet.

La chaîne retournée sera utilisée pour sérialiser la clé. Si le type de retour est une liste, cela est considéré comme un dicté de résultat hiérarchique.

Consultez les trois exemples de ce fichier :

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Si vous souhaitez une sérialisation XML, vous pouvez passer les kwargs is_xml=True.

as_dict(keep_readonly=True, key_transformer=<function attribute_transformer>, **kwargs)

Paramètres

key_transformer
<xref:function>

Fonction de transformateur de clé.

keep_readonly
valeur par défaut: True

Retours

Objet compatible JSON de dict

Type de retour

deserialize

Analysez un str à l’aide de la syntaxe RestAPI et retournez un modèle.

deserialize(data, content_type=None)

Paramètres

data
str
Obligatoire

Str utilisant la structure RestAPI. JSON par défaut.

content_type
str
valeur par défaut: None

JSON par défaut, définissez application/xml si XML.

Retours

Une instance de ce modèle

Exceptions

DeserializationError if something went wrong

enable_additional_properties_sending

enable_additional_properties_sending()

from_dict

L’analyse d’un dicté à l’aide de l’extracteur de clé donné retourne un modèle.

Par défaut, considérez les extracteurs de clés (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor et last_rest_key_case_insensitive_extractor)

from_dict(data, key_extractors=None, content_type=None)

Paramètres

data
dict
Obligatoire

Dict utilisant la structure RestAPI

content_type
str
valeur par défaut: None

JSON par défaut, définissez application/xml si XML.

key_extractors
valeur par défaut: None

Retours

Une instance de ce modèle

Exceptions

DeserializationError if something went wrong

is_xml_model

is_xml_model()

serialize

Retourne le JSON qui serait envoyé à Azure à partir de ce modèle.

Il s’agit d’un alias pour as_dict(full_restapi_key_transformer, keep_readonly=False).

Si vous souhaitez une sérialisation XML, vous pouvez passer les kwargs is_xml=True.

serialize(keep_readonly=False, **kwargs)

Paramètres

keep_readonly
bool
valeur par défaut: False

Si vous souhaitez sérialiser les attributs readonly

Retours

Objet compatible JSON de dict

Type de retour

validate

Validez ce modèle de manière récursive et retournez une liste de ValidationError.

validate()

Retours

Liste des erreurs de validation

Type de retour