New-AzBatchTask
Crée une tâche Batch sous un travail.
Syntaxe
New-AzBatchTask
-JobId <String>
-Id <String>
[-DisplayName <String>]
-CommandLine <String>
[-ResourceFiles <PSResourceFile[]>]
[-EnvironmentSettings <IDictionary>]
[-AuthenticationTokenSettings <PSAuthenticationTokenSettings>]
[-UserIdentity <PSUserIdentity>]
[-AffinityInformation <PSAffinityInformation>]
[-Constraints <PSTaskConstraints>]
[-MultiInstanceSettings <PSMultiInstanceSettings>]
[-DependsOn <TaskDependencies>]
[-ApplicationPackageReferences <PSApplicationPackageReference[]>]
[-OutputFile <PSOutputFile[]>]
[-ExitConditions <PSExitConditions>]
[-ContainerSettings <PSTaskContainerSettings>]
-BatchContext <BatchAccountContext>
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
New-AzBatchTask
-JobId <String>
[-Tasks <PSCloudTask[]>]
-BatchContext <BatchAccountContext>
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
New-AzBatchTask
[-Job <PSCloudJob>]
[-Tasks <PSCloudTask[]>]
-BatchContext <BatchAccountContext>
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
New-AzBatchTask
[-Job <PSCloudJob>]
-Id <String>
[-DisplayName <String>]
-CommandLine <String>
[-ResourceFiles <PSResourceFile[]>]
[-EnvironmentSettings <IDictionary>]
[-AuthenticationTokenSettings <PSAuthenticationTokenSettings>]
[-UserIdentity <PSUserIdentity>]
[-AffinityInformation <PSAffinityInformation>]
[-Constraints <PSTaskConstraints>]
[-MultiInstanceSettings <PSMultiInstanceSettings>]
[-DependsOn <TaskDependencies>]
[-ApplicationPackageReferences <PSApplicationPackageReference[]>]
[-OutputFile <PSOutputFile[]>]
[-ExitConditions <PSExitConditions>]
[-ContainerSettings <PSTaskContainerSettings>]
-BatchContext <BatchAccountContext>
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Description
L’applet de commande New-AzBatchTask crée une tâche Azure Batch sous le travail spécifié par le paramètre JobId ou le paramètre Job.
Exemples
Exemple 1 : Créer une tâche Batch
New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -BatchContext $Context
Cette commande crée une tâche qui a l’ID Task23 sous le travail qui a l’ID Job-000001. La tâche exécute la commande spécifiée. Utilisez l’applet de commande Get-AzBatchAccountKey pour affecter un contexte à la variable $Context.
Exemple 2 : Créer une tâche Batch
$autoUser = New-Object Microsoft.Azure.Commands.Batch.Models.PSAutoUserSpecification -ArgumentList @("Task", "Admin")
$userIdentity = New-Object Microsoft.Azure.Commands.Batch.Models.PSUserIdentity $autoUser
Get-AzBatchJob -Id "Job-000001" -BatchContext $Context | New-AzBatchTask -Id "Task26" -CommandLine "cmd /c echo hello > newFile.txt" -UserIdentity $userIdentity -BatchContext $Context
Cette commande obtient le travail Batch qui a l’ID Job-000001 à l’aide de l’applet de commande Get-AzBatchJob . La commande transmet ce travail à l’applet de commande actuelle à l’aide de l’opérateur de pipeline. La commande crée une tâche qui possède la tâche ID 26 sous ce travail. La tâche exécute la commande spécifiée à l’aide d’autorisations élevées.
Exemple 3 : Ajouter une collection de tâches au travail spécifié à l’aide du pipeline
$Context = Get-AzBatchAccountKey -AccountName "ContosoBatchAccount"
$Task01 = New-Object Microsoft.Azure.Commands.Batch.Models.PSCloudTask("Task23", "cmd /c dir /s")
$Task02 = New-Object Microsoft.Azure.Commands.Batch.Models.PSCloudTask("Task24", "cmd /c dir /s")
Get-AzBatchJob -Id "Job-000001" -BatchContext $Context | New-AzBatchTask -Tasks @($Task01, $Task02) -BatchContext $Context
La première commande crée une référence d’objet aux clés de compte pour le compte batch nommé ContosoBatchAccount à l’aide de Get-AzBatchAccountKey. La commande stocke cette référence d’objet dans la variable $Context. Les deux commandes suivantes créent des objets PSCloudTask à l’aide de l’applet de commande New-Object. Les commandes stockent les tâches dans les variables $Task 01 et $Task 02. La commande finale obtient le travail Batch qui a l’ID Job-000001 à l’aide de Get-AzBatchJob. Ensuite, la commande transmet ce travail à l’applet de commande actuelle à l’aide de l’opérateur de pipeline. La commande ajoute une collection de tâches sous ce travail. La commande utilise le contexte stocké dans $Context.
Exemple 4 : Ajouter une collection de tâches au travail spécifié
$Context = Get-AzBatchAccountKey -AccountName "ContosoBatchAccount"
$Task01 = New-Object Microsoft.Azure.Commands.Batch.Models.PSCloudTask("Task23", "cmd /c dir /s")
$Task02 = New-Object Microsoft.Azure.Commands.Batch.Models.PSCloudTask("Task24", "cmd /c dir /s")
New-AzBatchTask -JobId "Job-000001" -Tasks @($Task01, $Task02) -BatchContext $Context
La première commande crée une référence d’objet aux clés de compte pour le compte batch nommé ContosoBatchAccount à l’aide de Get-AzBatchAccountKey. La commande stocke cette référence d’objet dans la variable $Context. Les deux commandes suivantes créent des objets PSCloudTask à l’aide de l’applet de commande New-Object. Les commandes stockent les tâches dans les variables $Task 01 et $Task 02. La commande finale ajoute les tâches stockées dans $Task 01 et $Task 02 sous le travail qui a l’ID Job-000001.
Exemple 5 : Ajouter une tâche avec des fichiers de sortie
New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -BatchContext $Context
$blobContainerDestination = New-Object Microsoft.Azure.Commands.Batch.Models.PSOutputFileBlobContainerDestination "https://myaccount.blob.core.windows.net/sascontainer?sv=2015-04-05&st=2015-04-29T22%3A18%3A26Z&se=2015-04-30T02%3A23%3A26Z&sr=b&sp=rw&spr=https&sig=Z%2FRHIX5Xcg0Mq2rqI3OlWTjEg2tYkboXr1P9ZUXDtkk%3D"
$destination = New-Object Microsoft.Azure.Commands.Batch.Models.PSOutputFileDestination $blobContainerDestination
$uploadOptions = New-Object Microsoft.Azure.Commands.Batch.Models.PSOutputFileUploadOptions "TaskSuccess"
$outputFile = New-Object Microsoft.Azure.Commands.Batch.Models.PSOutputFile "*.txt", $blobContainerDestination, $uploadOptions
New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -OutputFile $outputFile -BatchContext $Context
Exemple 6 : Ajouter une tâche avec des paramètres de jeton d’authentification
$authSettings = New-Object Microsoft.Azure.Commands.Batch.Models.PSAuthenticationTokenSettings
$authSettings.Access = "Job"
New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -AuthenticationTokenSettings $authSettings -BatchContext $Context
Exemple 7 : Ajouter une tâche qui s’exécute dans un conteneur
$Context = Get-AzBatchAccountKey -AccountName "ContosoBatchAccount"
New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -ContainerSettings (New-Object Microsoft.Azure.Commands.Batch.Models.PSTaskContainerSettings "containerImageName") -BatchContext $Context
Paramètres
-AffinityInformation
Spécifie un indicateur de localité que le service Batch utilise pour sélectionner un nœud sur lequel exécuter la tâche.
Type: | PSAffinityInformation |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ApplicationPackageReferences
Type: | PSApplicationPackageReference[] |
Alias: | ApplicationPackageReference |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-AuthenticationTokenSettings
Paramètres d’un jeton d’authentification que la tâche peut utiliser pour effectuer des opérations de service Batch. S’il est défini, le service Batch fournit la tâche avec un jeton d’authentification qui peut être utilisé pour authentifier les opérations de service Batch sans nécessiter de clé d’accès de 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 pour ajouter d’autres tâches au travail, ou vérifier l’état du travail ou d’autres tâches.
Type: | PSAuthenticationTokenSettings |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-BatchContext
Spécifie l’instance BatchAccountContext utilisée par cette applet de commande pour interagir avec le service Batch. Si vous utilisez l’applet de commande Get-AzBatchAccount pour obtenir votre BatchAccountContext, l’authentification Microsoft Entra sera utilisée lors de l’interaction avec le service Batch. Pour utiliser l’authentification par clé partagée à la place, utilisez l’applet de commande Get-AzBatchAccountKey pour obtenir un objet BatchAccountContext avec ses clés d’accès remplies. Lorsque vous utilisez l’authentification par clé partagée, la clé d’accès primaire est utilisée par défaut. Pour modifier la clé à utiliser, définissez la propriété BatchAccountContext.KeyInUse.
Type: | BatchAccountContext |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-CommandLine
Spécifie la ligne de commande de la tâche.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Constraints
Spécifie les contraintes d’exécution qui s’appliquent à cette tâche.
Type: | PSTaskConstraints |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ContainerSettings
Paramètres du conteneur sous lequel la tâche s’exécute. Si le pool qui exécutera cette tâche a un jeu containerConfiguration, celui-ci doit également être défini. Si le pool qui exécutera cette tâche n’a pas de conteneurConfiguration défini, il ne doit pas être défini. Lorsque cela est spécifié, tous les répertoires sont récursifs sous la 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 de tâche est exécutée dans le conteneur.
Type: | PSTaskContainerSettings |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-DefaultProfile
Informations d’identification, compte, locataire et abonnement utilisés pour la communication avec Azure.
Type: | IAzureContextContainer |
Alias: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-DependsOn
Spécifie que la tâche dépend d’autres tâches. La tâche ne sera pas planifiée tant que toutes les tâches dépendantes n’auront pas abouti.
Type: | TaskDependencies |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-DisplayName
Spécifie le nom complet de la tâche.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-EnvironmentSettings
Spécifie les paramètres d’environnement, en tant que paires clé/valeur, que cette applet de commande ajoute à la tâche. La clé est le nom du paramètre d’environnement. La valeur est le paramètre d’environnement.
Type: | IDictionary |
Alias: | EnvironmentSetting |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ExitConditions
Type: | PSExitConditions |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Id
Spécifie l’ID de la tâche.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Job
Spécifie le travail sous lequel cette applet de commande crée la tâche. Pour obtenir un objet PSCloudJob , utilisez l’applet de commande Get-AzBatchJob.
Type: | PSCloudJob |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-JobId
Spécifie l’ID du travail sous lequel cette applet de commande crée la tâche.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-MultiInstanceSettings
Spécifie des informations sur l’exécution d’une tâche multi-instance.
Type: | PSMultiInstanceSettings |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-OutputFile
Obtient ou définit une liste de fichiers que le service Batch charge à partir du nœud de calcul après avoir exécuté la ligne de commande. Pour les tâches multi-instances, les fichiers seront chargés uniquement à partir du nœud de calcul sur lequel la tâche principale est exécutée.
Type: | PSOutputFile[] |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ResourceFiles
Spécifie les fichiers de ressources, en tant que paires clé/valeur, dont la tâche a besoin. La clé est le chemin du fichier de ressources. La valeur est la source de l’objet blob de fichiers de ressources.
Type: | PSResourceFile[] |
Alias: | ResourceFile |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Tasks
Spécifie la collection de tâches à ajouter. Chaque tâche doit avoir un ID unique.
Type: | PSCloudTask[] |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-UserIdentity
Identité de l’utilisateur sous laquelle la tâche s’exécute.
Type: | PSUserIdentity |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |