Task - Add Collection

Ajoute une collection de Tâches au travail spécifié.
Notez que chaque tâche doit avoir un ID unique. Le service Batch peut ne pas retourner les résultats de chaque tâche dans le même ordre que les tâches ont été envoyées dans cette demande. Si le serveur expire ou si la connexion est fermée pendant la demande, la demande peut avoir été partiellement ou entièrement traitée, ou pas du tout. Dans ce cas, l'utilisateur doit renouveler la demande. Notez qu’il appartient à l’utilisateur de gérer correctement les échecs lors de la réécriture d’une demande. Par exemple, vous devez utiliser les mêmes ID de tâche lors d’une nouvelle tentative afin que si l’opération précédente a réussi, la nouvelle tentative ne crée pas de tâches supplémentaires de manière inattendue. Si la réponse contient des tâches qui n’ont pas pu être ajoutées, un client peut réessayer la demande. Dans une nouvelle tentative, il est plus efficace de soumettre à nouveau uniquement les tâches qui n’ont pas pu être ajoutées et d’omettre les tâches qui ont été ajoutées avec succès lors de la première tentative. La durée de vie maximale d’une tâche de l’ajout à l’achèvement est de 180 jours. Si une tâche n’est pas terminée dans les 180 jours suivant son ajout, elle est arrêtée par le service Batch et laissée dans l’état dans lequel elle se trouvait à ce moment-là.

POST {batchUrl}/jobs/{jobId}/addtaskcollection?api-version=2023-11-01.18.0
POST {batchUrl}/jobs/{jobId}/addtaskcollection?timeout={timeout}&api-version=2023-11-01.18.0

Paramètres URI

Nom Dans Obligatoire Type Description
batchUrl
path True

string

URL de base pour toutes les demandes de service Azure Batch.

jobId
path True

string

ID du travail auquel la collection De tâches doit être ajoutée.

api-version
query True

string

Version de l’API cliente.

timeout
query

integer

int32

Durée maximale que le serveur peut consacrer au traitement de la demande, en secondes. La valeur par défaut est 30 secondes.

En-tête de la demande

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

Nom Obligatoire Type Description
client-request-id

string

uuid

Identité de requête générée par l’appelant, sous la forme d’un GUID sans décoration telle que des accolades, par exemple 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.

return-client-request-id

boolean

Indique si le serveur doit retourner le client-request-id dans la réponse.

ocp-date

string

date-time-rfc1123

Heure à laquelle la demande a été émise. Les bibliothèques clientes définissent généralement cette valeur sur l’heure d’horloge système actuelle ; définissez-la explicitement si vous appelez l’API REST directement.

Corps de la demande

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

Nom Obligatoire Type Description
value True

TaskAddParameter[]

Collection de tâches à ajouter. Le nombre maximal de tâches est de 100.
La taille sérialisée totale de cette collection doit être inférieure à 1 Mo. Si elle est supérieure à 1 Mo (par exemple, si chaque tâche a 100 de fichiers de ressources ou de variables d’environnement), la demande échoue avec le code « RequestBodyTooLarge » et doit être retentée à nouveau avec moins de tâches.

Réponses

Nom Type Description
200 OK

TaskAddCollectionResult

Réponse contenant les résultats de l’opération d’ajout d’une collection de tâches.

Headers

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

BatchError

Erreur inattendue

Sécurité

azure_auth

Microsoft Entra flux de code d’authentification OAuth 2.0

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

Scopes

Nom Description
user_impersonation Emprunter l’identité de votre compte d’utilisateur

Authorization

Type: apiKey
In: header

Exemples

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=2023-11-01.18.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=2023-11-01.18.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"
    }
  ]
}

Définitions

Nom Description
AccessScope

Ressources Batch auxquelles le jeton accorde l’accès.

AffinityInformation

Indicateur de localisation qui peut être utilisé par le service Batch pour sélectionner un nœud de calcul sur lequel démarrer une tâche.

ApplicationPackageReference

Référence à un package à déployer sur les nœuds de calcul.

AuthenticationTokenSettings

Paramètres d’un jeton d’authentification que la tâche peut utiliser pour effectuer des opérations de service Batch.

AutoUserScope

Étendue de l’utilisateur automatique

AutoUserSpecification

Spécifie les paramètres de l’utilisateur automatique qui exécute une tâche sur le service Batch.

BatchError

Réponse d’erreur reçue du service Azure Batch.

BatchErrorDetail

Élément d’informations supplémentaires incluses dans une réponse d’erreur Azure Batch.

ComputeNodeIdentityReference

Référence à une identité affectée par l’utilisateur associée au pool Batch qu’un nœud de calcul utilisera.

ContainerRegistry

Registre de conteneurs privé.

ContainerWorkingDirectory

Emplacement du répertoire de travail de la tâche du conteneur.

DependencyAction

Action que le service Batch effectue sur les tâches qui dépendent de cette tâche.

ElevationLevel

Niveau d’élévation de l’utilisateur.

EnvironmentSetting

Variable d’environnement à définir sur un processus Task.

ErrorMessage

Message d’erreur reçu dans une réponse d’erreur Azure Batch.

ExitCodeMapping

Comment le service Batch doit répondre si une tâche se termine avec un code de sortie particulier.

ExitCodeRangeMapping

Plage de codes de sortie et comment le service Batch doit répondre aux codes de sortie dans cette plage.

ExitConditions

Spécifie la façon dont le service Batch doit répondre une fois la tâche terminée.

ExitOptions

Spécifie la façon dont le service Batch répond à une condition de sortie particulière.

HttpHeader

Paire nom-valeur d’en-tête HTTP

JobAction

Action à entreprendre sur le travail contenant la tâche, si la tâche se termine avec la condition de sortie donnée et si la propriété onTaskFailed du travail est « performExitOptionsJobAction ».

MultiInstanceSettings

Paramètres qui spécifient comment exécuter une tâche multi-instance.

OutputFile

Spécification pour le chargement de fichiers à partir d’un nœud de calcul Azure Batch vers un autre emplacement une fois que le service Batch a terminé l’exécution du processus Task.

OutputFileBlobContainerDestination

Spécifie une destination de chargement de fichier dans un conteneur de stockage d’objets blob Azure.

OutputFileDestination

Destination vers laquelle un fichier doit être chargé.

OutputFileUploadCondition

Conditions dans lesquelles un fichier de sortie de tâche ou un ensemble de fichiers doit être chargé.

OutputFileUploadOptions

Détails sur une opération de chargement de fichier de sortie, notamment dans quelles conditions effectuer le chargement.

ResourceFile

Fichier unique ou plusieurs fichiers à télécharger sur un nœud de calcul.

TaskAddCollectionParameter

Collection de tâches Azure Batch à ajouter.

TaskAddCollectionResult

Résultat de l’ajout d’une collection de tâches à un travail.

TaskAddParameter

Tâche Azure Batch à ajouter.

TaskAddResult

Résultat d’une tâche unique ajoutée dans le cadre d’une opération d’ajout d’une collection de tâches.

TaskAddStatus

Status de la demande d’ajout de tâche.

TaskConstraints

Contraintes d’exécution à appliquer à une tâche.

TaskContainerSettings

Paramètres de conteneur d’une tâche.

TaskDependencies

Spécifie toutes les dépendances d’une tâche. Toute tâche spécifiée explicitement ou dans une plage de dépendances doit se terminer avant que la tâche dépendante soit planifiée.

TaskIdRange

Plage d’ID de tâche dont une tâche peut dépendre. Toutes les tâches avec ID dans la plage doivent se terminer correctement avant que la tâche dépendante puisse être planifiée.

UserIdentity

Définition de l’identité utilisateur sous laquelle la tâche est exécutée.

AccessScope

Ressources Batch auxquelles le jeton accorde l’accès.

Nom Type Description
job

string

Octroie l’accès pour effectuer toutes les opérations sur le travail contenant la tâche.

AffinityInformation

Indicateur de localisation qui peut être utilisé par le service Batch pour sélectionner un nœud de calcul sur lequel démarrer une tâche.

Nom Type Description
affinityId

string

Chaîne opaque représentant l’emplacement d’un nœud de calcul ou d’une tâche exécutée précédemment.
Vous pouvez transmettre l’affinityId d’un nœud pour indiquer que cette tâche doit s’exécuter sur ce nœud de calcul. Notez qu’il s’agit simplement d’une affinité douce. Si le nœud de calcul cible est occupé ou indisponible au moment de la planification de la tâche, la tâche est planifiée ailleurs.

ApplicationPackageReference

Référence à un package à déployer sur les nœuds de calcul.

Nom Type Description
applicationId

string

ID de l’application à déployer.
Lors de la création d’un pool, l’ID d’application du package doit être complet (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}).

version

string

Version de l’application à déployer. En cas d’omission, la version par défaut est déployée.
Si cette valeur est omise sur un pool et qu’aucune version par défaut n’est spécifiée pour cette application, la demande échoue avec le code d’erreur InvalidApplicationPackageReferences et le code HTTP status 409. Si cela est omis sur une tâche et qu’aucune version par défaut n’est spécifiée pour cette application, la tâche échoue avec une erreur de prétraitement.

AuthenticationTokenSettings

Paramètres d’un jeton d’authentification que la tâche peut utiliser pour effectuer des opérations de service Batch.

Nom Type Description
access

AccessScope[]

Ressources Batch auxquelles le jeton accorde l’accès.
Le jeton d’authentification accorde l’accès à un ensemble limité d’opérations de service Batch. Actuellement, la seule valeur prise en charge pour la propriété d’accès est « job », qui accorde l’accès à toutes les opérations liées au travail qui contient la tâche.

AutoUserScope

Étendue de l’utilisateur automatique

Nom Type Description
pool

string

Spécifie que la tâche s’exécute en tant que compte d’utilisateur automatique commun créé sur chaque nœud de calcul d’un pool.

task

string

Spécifie que le service doit créer un utilisateur pour la tâche.

AutoUserSpecification

Spécifie les paramètres de l’utilisateur automatique qui exécute une tâche sur le service Batch.

Nom Type Description
elevationLevel

ElevationLevel

Niveau d’élévation de l’utilisateur automatique.
La valeur par défaut est nonAdmin.

scope

AutoUserScope

Étendue de l’utilisateur automatique
La valeur par défaut est pool. Si le pool exécute Windows, une valeur de Tâche doit être spécifiée si une isolation plus stricte entre les tâches est requise. Par exemple, si la tâche mute le Registre d’une manière susceptible d’avoir un impact sur d’autres tâches, ou si des certificats ont été spécifiés sur le pool qui ne doit pas être accessible par les tâches normales, mais doit être accessible par StartTasks.

BatchError

Réponse d’erreur reçue du service Azure Batch.

Nom Type Description
code

string

Identificateur de l'erreur. Les codes sont invariants et sont destinés à être consommés par programmation.

message

ErrorMessage

Message décrivant l’erreur, destiné à être affiché dans une interface utilisateur.

values

BatchErrorDetail[]

Collection de paires clé-valeur contenant des détails supplémentaires sur l’erreur.

BatchErrorDetail

Élément d’informations supplémentaires incluses dans une réponse d’erreur Azure Batch.

Nom Type Description
key

string

Identificateur spécifiant la signification de la propriété Value.

value

string

Informations supplémentaires incluses dans la réponse d’erreur.

ComputeNodeIdentityReference

Référence à une identité affectée par l’utilisateur associée au pool Batch qu’un nœud de calcul utilisera.

Nom Type Description
resourceId

string

ID de ressource ARM de l’identité affectée par l’utilisateur.

ContainerRegistry

Registre de conteneurs privé.

Nom Type Description
identityReference

ComputeNodeIdentityReference

Référence à l’identité affectée par l’utilisateur à utiliser pour accéder à un Azure Container Registry au lieu du nom d’utilisateur et du mot de passe.
Référence à une identité affectée par l’utilisateur associée au pool Batch qu’un nœud de calcul utilisera.

password

string

Mot de passe pour se connecter au serveur de Registre.

registryServer

string

L’URL du registre.
En cas d’omission, la valeur par défaut est « docker.io ».

username

string

Nom d’utilisateur à connecter au serveur du Registre.

ContainerWorkingDirectory

Emplacement du répertoire de travail de la tâche du conteneur.

Nom Type Description
containerImageDefault

string

Utilisez le répertoire de travail défini dans l’image conteneur. Veillez à ce que ce répertoire ne contienne pas les fichiers de ressources téléchargés par Batch.

taskWorkingDirectory

string

Utilisez le répertoire de travail des tâches du service Batch standard, qui contiendra les fichiers de ressources des tâches renseignés par Batch.

DependencyAction

Action que le service Batch effectue sur les tâches qui dépendent de cette tâche.

Nom Type Description
block

string

Bloque les tâches en attente de cette tâche, empêchant leur planification.

satisfy

string

Satisfaire les tâches en attente de cette tâche ; une fois que toutes les dépendances sont satisfaites, l’exécution de la tâche est planifiée.

ElevationLevel

Niveau d’élévation de l’utilisateur.

Nom Type Description
admin

string

L’utilisateur est un utilisateur disposant d’un accès élevé et fonctionne avec des autorisations d’administrateur complètes.

nonadmin

string

L’utilisateur est un utilisateur standard sans accès élevé.

EnvironmentSetting

Variable d’environnement à définir sur un processus Task.

Nom Type Description
name

string

Nom de la variable d’environnement.

value

string

Valeur de la variable d’environnement.

ErrorMessage

Message d’erreur reçu dans une réponse d’erreur Azure Batch.

Nom Type Description
lang

string

Code de langue du message d’erreur

value

string

Texte du message.

ExitCodeMapping

Comment le service Batch doit répondre si une tâche se termine avec un code de sortie particulier.

Nom Type Description
code

integer

Code de sortie de processus.

exitOptions

ExitOptions

Comment le service Batch doit répondre si la tâche se termine avec ce code de sortie.

ExitCodeRangeMapping

Plage de codes de sortie et comment le service Batch doit répondre aux codes de sortie dans cette plage.

Nom Type Description
end

integer

Dernier code de sortie de la plage.

exitOptions

ExitOptions

Comment le service Batch doit répondre si la tâche se termine avec un code de sortie dans la plage de début à fin (inclus).

start

integer

Premier code de sortie de la plage.

ExitConditions

Spécifie la façon dont le service Batch doit répondre une fois la tâche terminée.

Nom Type Description
default

ExitOptions

Comment le service Batch doit répondre en cas d’échec de la tâche avec une condition de sortie non couverte par l’une des autres propriétés.
Cette valeur est utilisée si la tâche se termine avec un code de sortie différent de zéro qui n’est pas répertorié dans la collection exitCodes ou exitCodeRanges, avec une erreur de prétraitement si la propriété preProcessingError n’est pas présente, ou avec une erreur de chargement de fichier si la propriété fileUploadError n’est pas présente. Si vous souhaitez un comportement autre que celui par défaut sur le code de sortie 0, vous devez le répertorier explicitement à l’aide de la collection exitCodes ou exitCodeRanges.

exitCodeRanges

ExitCodeRangeMapping[]

Liste des plages de code de sortie des tâches et de la façon dont le service Batch doit y répondre.

exitCodes

ExitCodeMapping[]

Liste des codes de sortie de tâche individuels et de la façon dont le service Batch doit y répondre.

fileUploadError

ExitOptions

Comment le service Batch doit répondre si une erreur de chargement de fichier se produit.
Si la tâche s’est terminée avec un code de sortie spécifié via exitCodes ou exitCodeRanges, puis a rencontré une erreur de chargement de fichier, l’action spécifiée par le code de sortie est prioritaire.

preProcessingError

ExitOptions

Comment le service Batch doit répondre si la tâche ne parvient pas à démarrer en raison d’une erreur.

ExitOptions

Spécifie la façon dont le service Batch répond à une condition de sortie particulière.

Nom Type Description
dependencyAction

DependencyAction

Action que le service Batch effectue sur les tâches qui dépendent de cette tâche.
Les valeurs possibles sont « satisfaire » (permettant aux tâches dépendantes de progresser) et « bloquer » (les tâches dépendantes continuent d’attendre). Batch ne prend pas encore en charge l’annulation des tâches dépendantes.

jobAction

JobAction

Action à entreprendre sur le travail contenant la tâche, si la tâche se termine avec la condition de sortie donnée et si la propriété onTaskFailed du travail est « performExitOptionsJobAction ».
La valeur par défaut est none pour le code de sortie 0 et se termine pour toutes les autres conditions de sortie. Si la propriété onTaskFailed du travail est noaction, la spécification de cette propriété renvoie une erreur et la demande d’ajout de tâche échoue avec une erreur de valeur de propriété non valide ; si vous appelez l’API REST directement, le code http status est 400 (requête incorrecte).

HttpHeader

Paire nom-valeur d’en-tête HTTP

Nom Type Description
name

string

Nom non sensible à la casse de l’en-tête à utiliser lors du chargement des fichiers de sortie

value

string

Valeur de l’en-tête à utiliser lors du chargement des fichiers de sortie

JobAction

Action à entreprendre sur le travail contenant la tâche, si la tâche se termine avec la condition de sortie donnée et si la propriété onTaskFailed du travail est « performExitOptionsJobAction ».

Nom Type Description
disable

string

Désactivez le travail. Cela équivaut à appeler l’API disable Job, avec la valeur disableTasks requeue.

none

string

N’effectuez aucune action.

terminate

string

Terminez le travail. La valeur terminateReason dans l’objet executionInfo du travail est définie sur « TaskFailed ».

MultiInstanceSettings

Paramètres qui spécifient comment exécuter une tâche multi-instance.

Nom Type Description
commonResourceFiles

ResourceFile[]

Liste des fichiers que le service Batch téléchargera avant d’exécuter la ligne de commande de coordination.
La différence entre les fichiers de ressources courants et les fichiers de ressources de tâche est que les fichiers de ressources courants sont téléchargés pour toutes les tâches secondaires, y compris le fichier principal, tandis que les fichiers de ressources de tâche sont téléchargés uniquement pour le fichier principal. Notez également que ces fichiers de ressources ne sont pas téléchargés dans le répertoire de travail des tâches, mais sont téléchargés dans le répertoire racine de la tâche (un répertoire au-dessus du répertoire de travail). Il existe une taille maximale pour la liste des fichiers de ressources. Lorsque la taille maximale est dépassée, la demande échoue et le code d’erreur de réponse est RequestEntityTooLarge. Si cela se produit, la taille de la collection resourceFiles doit être réduite. Pour ce faire, vous pouvez utiliser des fichiers .zip, des packages d’application ou des conteneurs Docker.

coordinationCommandLine

string

Ligne de commande à exécuter sur tous les nœuds de calcul pour leur permettre de se coordonner lorsque le principal exécute la commande main Task.
Une ligne de commande de coordination classique lance un service en arrière-plan et vérifie que le service est prêt à traiter les messages inter-nœuds.

numberOfInstances

integer

Nombre de nœuds de calcul requis par la tâche.
En cas d’omission, la valeur par défaut est 1.

OutputFile

Spécification pour le chargement de fichiers à partir d’un nœud de calcul Azure Batch vers un autre emplacement une fois que le service Batch a terminé l’exécution du processus Task.

Nom Type Description
destination

OutputFileDestination

Destination des fichiers de sortie.

filePattern

string

Modèle indiquant le ou les fichiers à charger.
Les chemins relatifs et absolus sont pris en charge. Les chemins d’accès relatifs sont relatifs au répertoire de travail task. Les caractères génériques suivants sont pris en charge : * correspond à 0 caractères ou plus (par exemple, le modèle abc* correspondrait à abc ou abcdef), ** correspond à n’importe quel répertoire , ? correspond à n’importe quel caractère unique, [abc] correspond à un caractère entre crochets et [a-c] correspond à un caractère dans la plage. Les crochets peuvent inclure une négation pour correspondre à n’importe quel caractère non spécifié (par exemple, [ !abc] correspond à n’importe quel caractère, sauf a, b ou c). Si un nom de fichier commence par « ». il est ignoré par défaut, mais peut être mis en correspondance en le spécifiant explicitement (par exemple ,.gif ne correspondra pas à .a.gif, mais ..gif le fera). Un exemple simple : ***.txt correspond à n’importe quel fichier qui ne commence pas dans « . » et se termine par .txt dans le répertoire de travail de la tâche ou dans n’importe quel sous-répertoire. Si le nom de fichier contient un caractère générique, il peut être placé dans une séquence d’échappement entre crochets (par exemple abc[] correspond à un fichier nommé abc). Notez que \ et / sont traités comme des séparateurs de répertoires sur Windows, mais uniquement / est sur Linux. Les variables d’environnement (%var% sur Windows ou $var sur Linux) sont développées avant l’application du modèle.

uploadOptions

OutputFileUploadOptions

Options supplémentaires pour l’opération de chargement, notamment dans quelles conditions effectuer le chargement.

OutputFileBlobContainerDestination

Spécifie une destination de chargement de fichier dans un conteneur de stockage d’objets blob Azure.

Nom Type Description
containerUrl

string

URL du conteneur dans Stockage Blob Azure dans lequel charger le ou les fichiers.
Si vous n’utilisez pas d’identité managée, l’URL doit inclure une signature d’accès partagé (SAP) accordant des autorisations d’écriture au conteneur.

identityReference

ComputeNodeIdentityReference

Référence à l’identité affectée par l’utilisateur à utiliser pour accéder à Stockage Blob Azure spécifiée par containerUrl
L’identité doit avoir un accès en écriture au conteneur Stockage Blob Azure

path

string

Objet blob de destination ou répertoire virtuel dans le conteneur Stockage Azure.
Si filePattern fait référence à un fichier spécifique (c’est-à-dire qu’il ne contient pas de caractères génériques), le chemin d’accès est le nom de l’objet blob dans lequel charger ce fichier. Si filePattern contient un ou plusieurs caractères génériques (et peut donc correspondre à plusieurs fichiers), le chemin d’accès est le nom du répertoire virtuel de l’objet blob (qui est ajouté à chaque nom d’objet blob) dans lequel charger le ou les fichiers. En cas d’omission, les fichiers sont chargés à la racine du conteneur avec un nom d’objet blob correspondant à leur nom de fichier.

uploadHeaders

HttpHeader[]

Liste de paires nom-valeur pour les en-têtes à utiliser dans le chargement des fichiers de sortie
Ces en-têtes seront spécifiés lors du chargement de fichiers dans stockage Azure. Document officiel sur les en-têtes autorisés lors du chargement d’objets blob : https://docs.microsoft.com/en-us/rest/api/storageservices/put-blob#request-headers-all-blob-types

OutputFileDestination

Destination vers laquelle un fichier doit être chargé.

Nom Type Description
container

OutputFileBlobContainerDestination

Emplacement dans stockage d’objets blob Azure dans lequel les fichiers sont chargés.

OutputFileUploadCondition

Conditions dans lesquelles un fichier de sortie de tâche ou un ensemble de fichiers doit être chargé.

Nom Type Description
taskcompletion

string

Chargez le ou les fichiers une fois le processus de tâche terminé, quel que soit le code de sortie.

taskfailure

string

Chargez le ou les fichiers uniquement après la fin du processus Task avec un code de sortie différent de zéro.

tasksuccess

string

Chargez le ou les fichiers uniquement après la fin du processus Task avec un code de sortie 0.

OutputFileUploadOptions

Détails sur une opération de chargement de fichier de sortie, notamment dans quelles conditions effectuer le chargement.

Nom Type Description
uploadCondition

OutputFileUploadCondition

Conditions dans lesquelles le fichier de sortie de tâche ou l’ensemble de fichiers doivent être chargés.
La valeur par défaut est taskcompletion.

ResourceFile

Fichier unique ou plusieurs fichiers à télécharger sur un nœud de calcul.

Nom Type Description
autoStorageContainerName

string

Nom du conteneur de stockage dans le compte de stockage automatique.
Les propriétés autoStorageContainerName, storageContainerUrl et httpUrl s’excluent mutuellement et l’une d’elles doit être spécifiée.

blobPrefix

string

Préfixe d’objet blob à utiliser lors du téléchargement d’objets blob à partir d’un conteneur stockage Azure. Seuls les objets blob dont le nom commence par le préfixe spécifié sont téléchargés.
La propriété est valide uniquement quand autoStorageContainerName ou storageContainerUrl est utilisé. Ce préfixe peut être un nom de fichier partiel ou un sous-répertoire. Si aucun préfixe n’est spécifié, tous les fichiers du conteneur sont téléchargés.

fileMode

string

Attribut du mode d’autorisation de fichier au format octal.
Cette propriété s’applique uniquement aux fichiers téléchargés sur les nœuds de calcul Linux. Il sera ignoré s’il est spécifié pour un resourceFile qui sera téléchargé sur un nœud de calcul Windows. Si cette propriété n’est pas spécifiée pour un nœud de calcul Linux, la valeur par défaut 0770 est appliquée au fichier.

filePath

string

Emplacement sur le nœud de calcul vers lequel télécharger le ou les fichiers, par rapport au répertoire de travail de la tâche.
Si la propriété httpUrl est spécifiée, le filePath est obligatoire et décrit le chemin d’accès vers lequel le fichier sera téléchargé, y compris le nom de fichier. Sinon, si la propriété autoStorageContainerName ou storageContainerUrl est spécifiée, filePath est facultatif et est le répertoire vers lequel télécharger les fichiers. Dans le cas où filePath est utilisé comme répertoire, toute structure de répertoires déjà associée aux données d’entrée est conservée dans son intégralité et ajoutée au répertoire filePath spécifié. Le chemin d’accès relatif spécifié ne peut pas sortir du répertoire de travail de la tâche (par exemple, à l’aide de « .. »).

httpUrl

string

URL du fichier à télécharger.
Les propriétés autoStorageContainerName, storageContainerUrl et httpUrl s’excluent mutuellement et l’une d’elles doit être spécifiée. Si l’URL pointe vers Stockage Blob Azure, elle doit être lisible à partir des nœuds de calcul. Il existe trois façons d’obtenir une telle URL pour un objet blob dans le stockage Azure : inclure une signature d’accès partagé (SAP) accordant des autorisations de lecture sur l’objet blob, utiliser une identité managée avec une autorisation de lecture ou définir la liste de contrôle d’accès pour l’objet blob ou son conteneur afin d’autoriser l’accès public.

identityReference

ComputeNodeIdentityReference

Référence à l’identité affectée par l’utilisateur à utiliser pour accéder à Stockage Blob Azure spécifiée par storageContainerUrl ou httpUrl
Référence à une identité affectée par l’utilisateur associée au pool Batch qu’un nœud de calcul utilisera.

storageContainerUrl

string

URL du conteneur d’objets blob dans Stockage Blob Azure.
Les propriétés autoStorageContainerName, storageContainerUrl et httpUrl s’excluent mutuellement et l’une d’elles doit être spécifiée. Cette URL doit être lisible et listable à partir de nœuds de calcul. Il existe trois façons d’obtenir une telle URL pour un conteneur dans le stockage Azure : inclure une signature d’accès partagé (SAP) accordant des autorisations de lecture et de liste sur le conteneur, utiliser une identité managée avec des autorisations de lecture et de liste, ou définir la liste de contrôle d’accès pour le conteneur afin d’autoriser l’accès public.

TaskAddCollectionParameter

Collection de tâches Azure Batch à ajouter.

Nom Type Description
value

TaskAddParameter[]

Collection de tâches à ajouter. Le nombre maximal de tâches est de 100.
La taille totale sérialisée de cette collection doit être inférieure à 1 Mo. Si elle est supérieure à 1 Mo (par exemple, si chaque tâche a 100 de fichiers de ressources ou de variables d’environnement), la requête échoue avec le code « RequestBodyTooLarge » et doit être retentée avec moins de tâches.

TaskAddCollectionResult

Résultat de l’ajout d’une collection de tâches à un travail.

Nom Type Description
value

TaskAddResult[]

Résultats de l’opération d’ajout d’une collection de tâches.

TaskAddParameter

Tâche Azure Batch à ajouter.

Nom Type Description
affinityInfo

AffinityInformation

Indicateur de localité qui peut être utilisé par le service Batch pour sélectionner un nœud de calcul sur lequel démarrer la nouvelle tâche.

applicationPackageReferences

ApplicationPackageReference[]

Liste des packages que le service Batch déploiera sur le nœud de calcul avant d’exécuter la ligne de commande.
Les packages d’application sont téléchargés et déployés dans un répertoire partagé, et non dans le répertoire de travail Task. Par conséquent, si un package référencé se trouve déjà sur le nœud et est à jour, il n’est pas re-téléchargé ; la copie existante sur le nœud de calcul est utilisée. Si un package référencé ne peut pas être installé, par exemple parce que le package a été supprimé ou parce que le téléchargement a échoué, la tâche échoue.

authenticationTokenSettings

AuthenticationTokenSettings

Paramètres d’un jeton d’authentification que la tâche peut utiliser pour effectuer des opérations de service Batch.
Si cette propriété est définie, le service Batch fournit à la tâche un jeton d’authentification qui peut être utilisé pour authentifier les opérations du service Batch sans nécessiter de clé d’accès au compte. Le jeton est fourni via la variable d’environnement AZ_BATCH_AUTHENTICATION_TOKEN. Les opérations que la tâche peut effectuer à l’aide du jeton dépendent des paramètres. Par exemple, une tâche peut demander des autorisations de travail afin d’ajouter d’autres tâches au travail, ou case activée la status du travail ou d’autres tâches sous le travail.

commandLine

string

Ligne de commande de la tâche.
Pour les tâches multi-instance, la ligne de commande est exécutée en tant que tâche principale, une fois que la tâche principale et toutes les tâches subordonnées ont terminé l’exécution de la ligne de commande de coordination. 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).

constraints

TaskConstraints

Contraintes d’exécution qui s’appliquent à cette tâche.
Si vous ne spécifiez pas de contraintes, maxTaskRetryCount est le maxTaskRetryCount spécifié pour le travail, maxWallClockTime est infini et le retentionTime est de 7 jours.

containerSettings

TaskContainerSettings

Paramètres du conteneur sous lequel la tâche s’exécute.
Si le pool qui exécutera cette tâche a containerConfiguration set, celui-ci doit également être défini. Si le pool qui exécutera cette tâche n’a pas de conteneurConfiguration défini, cela ne doit pas être défini. 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.

dependsOn

TaskDependencies

Tâches dont dépend cette tâche.
Cette tâche n’est pas planifiée tant que toutes les tâches dont elle dépend n’ont pas réussi. Si l’une de ces tâches échoue et épuise son nombre de nouvelles tentatives, cette tâche ne sera jamais planifiée. Si le travail n’a pas la valeur true à usesTaskDependencies et que cet élément est présent, la demande échoue avec le code d’erreur TaskDependenciesNotSpecifiedOnJob.

displayName

string

Nom complet de la tâche.
Le nom d’affichage n’a pas besoin d’être unique et peut contenir des caractères Unicode d’une longueur maximale de 1 024.

environmentSettings

EnvironmentSetting[]

Liste des paramètres de variable d’environnement pour la tâche.

exitConditions

ExitConditions

Spécifie la façon dont le service Batch doit répondre une fois la tâche terminée.
Comment le service Batch doit répondre lorsque la tâche est terminée.

id

string

Chaîne qui identifie de manière unique la tâche dans le travail.
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. L’ID est respectant la casse et ne respecte pas la casse (autrement dit, vous n’avez peut-être pas deux ID dans un travail qui diffèrent uniquement par la casse).

multiInstanceSettings

MultiInstanceSettings

Objet qui indique que la tâche est une tâche multi-instance et contient des informations sur l’exécution de la tâche multi-instance.
Les tâches multi instance sont couramment utilisées pour prendre en charge les tâches MPI. Dans le cas de MPI, si l’une des tâches subordonnées échoue (par exemple en raison d’une sortie avec un code de sortie différent de zéro), l’intégralité de la tâche multi-instance échoue. La tâche multi-instance est ensuite arrêtée et retentée, jusqu’à sa limite de nouvelles tentatives.

outputFiles

OutputFile[]

Liste des fichiers que le service Batch chargera à partir du nœud de calcul après l’exécution de la ligne de commande.
Pour les tâches multi-instance, les fichiers sont uniquement chargés à partir du nœud de calcul sur lequel la tâche principale est exécutée.

requiredSlots

integer

Nombre d’emplacements de planification nécessaires à l’exécution de la tâche.
La valeur par défaut est 1. Une tâche peut être planifiée pour s’exécuter sur un nœud de calcul uniquement si le nœud dispose de suffisamment d’emplacements de planification disponibles. Pour les tâches instance multiples, il doit s’agir de 1.

resourceFiles

ResourceFile[]

Liste des fichiers que le service Batch téléchargera sur le nœud de calcul avant d’exécuter la ligne de commande.
Pour les tâches multi-instance, les fichiers de ressources sont uniquement téléchargés sur le nœud de calcul sur lequel la tâche principale est exécutée. Il existe une taille maximale pour la liste des fichiers de ressources. Lorsque la taille maximale est dépassée, la demande échoue et le code d’erreur de réponse est RequestEntityTooLarge. Si cela se produit, la collection de ResourceFiles doit être réduite en taille. Vous pouvez y parvenir à l’aide de fichiers .zip, de packages d’application ou de conteneurs Docker.

userIdentity

UserIdentity

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

TaskAddResult

Résultat d’une tâche unique ajoutée dans le cadre d’une opération d’ajout d’une collection de tâches.

Nom Type Description
eTag

string

ETag de la tâche, si la tâche a été ajoutée avec succès.
Vous pouvez l’utiliser pour détecter si la tâche a changé entre les demandes. En particulier, vous pouvez passer l’ETag avec une demande de tâche de mise à jour pour spécifier que vos modifications ne doivent prendre effet que si personne d’autre n’a modifié le travail entre-temps.

error

BatchError

L’erreur s’est produite lors de la tentative d’ajout de la tâche.

lastModified

string

Heure de la dernière modification de la tâche.

location

string

URL de la tâche, si la tâche a été ajoutée avec succès.

status

TaskAddStatus

Status de la demande d’ajout de tâche.

taskId

string

ID de la tâche dont il s’agit du résultat.

TaskAddStatus

Status de la demande d’ajout de tâche.

Nom Type Description
clienterror

string

La tâche n’a pas pu être ajoutée en raison d’une erreur du client et ne doit pas être retentée sans modifier la demande comme il convient.

servererror

string

La tâche n’a pas pu être ajoutée en raison d’une erreur de serveur et peut être retentée sans modification.

success

string

La tâche a été ajoutée avec succès.

TaskConstraints

Contraintes d’exécution à appliquer à une tâche.

Nom Type Description
maxTaskRetryCount

integer

Nombre maximal de nouvelles tentatives de la tâche. Le service Batch retente une tâche si son code de sortie est différent de zéro.
Notez que cette valeur contrôle spécifiquement le nombre de nouvelles tentatives pour l’exécutable Task en raison d’un code de sortie différent de zéro. Le service Batch essaiera la tâche une fois, puis peut réessayer jusqu’à cette limite. Par exemple, si le nombre maximal de nouvelles tentatives est de 3, Batch tente la tâche jusqu’à 4 fois (une tentative initiale et 3 nouvelles tentatives). Si le nombre maximal de nouvelles tentatives est 0, le service Batch ne réessaye pas la tâche après la première tentative. Si le nombre maximal de nouvelles tentatives est -1, le service Batch retente la tâche sans limite, mais cela n’est pas recommandé pour une tâche de démarrage ou une tâche. La valeur par défaut est 0 (aucune nouvelle tentative).

maxWallClockTime

string

Durée maximale d’exécution de la tâche, mesurée à partir du moment où la tâche démarre. Si la tâche ne se termine pas dans le délai imparti, le service Batch l’arrête.
Si ce n’est pas spécifié, il n’existe aucune limite de temps quant à la durée d’exécution de la tâche.

retentionTime

string

Durée minimale de conservation du répertoire des tâches sur le nœud de calcul sur lequel il s’est exécuté, à partir de la fin de son exécution. Passé ce délai, le service Batch peut supprimer le répertoire Task et tout son contenu.
La valeur par défaut est de 7 jours, c’est-à-dire que le répertoire des tâches est conservé pendant 7 jours, sauf si le nœud de calcul est supprimé ou que le travail est supprimé.

TaskContainerSettings

Paramètres de conteneur d’une tâche.

Nom Type Description
containerRunOptions

string

Options supplémentaires pour la commande de création de conteneur.
Ces options supplémentaires sont fournies en tant qu’arguments de la commande « docker create », en plus de celles contrôlées par le service Batch.

imageName

string

Image à utiliser pour créer le conteneur dans lequel la tâche s’exécutera.
Il s’agit de la référence d’image complète, comme le spécifie « docker pull ». Si aucune balise n’est fournie dans le cadre du nom de l’image, la balise « :latest » est utilisée comme valeur par défaut.

registry

ContainerRegistry

Registre privé qui contient l’image conteneur.
Ce paramètre peut être omis si a déjà été fourni lors de la création du pool.

workingDirectory

ContainerWorkingDirectory

Emplacement du répertoire de travail de la tâche du conteneur.
La valeur par défaut est « taskWorkingDirectory ».

TaskDependencies

Spécifie toutes les dépendances d’une tâche. Toute tâche spécifiée explicitement ou dans une plage de dépendances doit se terminer avant que la tâche dépendante soit planifiée.

Nom Type Description
taskIdRanges

TaskIdRange[]

Liste des plages d’ID de tâche dont dépend cette tâche. Toutes les tâches de toutes les plages doivent se terminer correctement avant que la tâche dépendante puisse être planifiée.

taskIds

string[]

Liste des ID de tâche dont dépend cette tâche. Toutes les tâches de cette liste doivent se terminer correctement avant que la tâche dépendante puisse être planifiée.
La collection taskIds est limitée à 64 000 caractères au total (c’est-à-dire la longueur combinée de tous les ID de tâche). Si la collection taskIds dépasse la longueur maximale, la demande Ajouter une tâche échoue avec le code d’erreur TaskDependencyListTooLong. Dans ce cas, envisagez d’utiliser plutôt des plages d’ID de tâche.

TaskIdRange

Plage d’ID de tâche dont une tâche peut dépendre. Toutes les tâches avec ID dans la plage doivent se terminer correctement avant que la tâche dépendante puisse être planifiée.

Nom Type Description
end

integer

DERNIER ID de tâche dans la plage.

start

integer

Premier ID de tâche dans la plage.

UserIdentity

Définition de l’identité utilisateur sous laquelle la tâche est exécutée.

Nom Type Description
autoUser

AutoUserSpecification

Utilisateur automatique sous lequel la tâche est exécutée.
Les propriétés userName et autoUser s’excluent mutuellement ; vous devez en spécifier un, mais pas les deux.

username

string

Nom de l’identité utilisateur sous laquelle la tâche est exécutée.
Les propriétés userName et autoUser s’excluent mutuellement ; vous devez en spécifier un, mais pas les deux.