définition cible
Les tâches s’exécutent dans un contexte d’exécution, qui correspond soit à l’hôte de l’agent, soit à un conteneur.
Définitions qui font référence à cette définition : steps.task, steps.script, steps.powershell, steps.pwsh, steps.bash, steps.checkout, steps.download, steps.downloadBuild, steps.getPackage, steps.publish, steps.reviewApp
Implémentations
Implémentation | Description |
---|---|
cible : chaîne | Environnement dans lequel exécuter cette étape ou cette tâche. |
cible : conteneur, commandes, settableVariables | Configurez la cible d’étape avec l’environnement et la liste autorisée de commandes et de variables. |
Implémentation | Description |
---|---|
cible : chaîne | Environnement dans lequel exécuter cette étape ou cette tâche. |
cible : conteneur, commandes | Configurez la cible d’étape avec l’environnement et la liste autorisée de commandes. |
Remarques
Une étape individuelle peut remplacer son contexte en spécifiant un target
, et éventuellement configurer un conteneur, des commandes et des variables settables.
cible : chaîne
Spécifiez une cible d’étape par nom.
target: string # Environment in which to run this step or task.
target
String.
Les options disponibles sont le mot host
pour cibler l’hôte de l’agent ainsi que tous les conteneurs définis dans le pipeline.
cible : conteneur, commandes, settableVariables
Configurez la cible d’étape à l’aide d’un nom de conteneur, de commandes et de variables settables.
target:
container: string # Container to target (or 'host' for host machine).
commands: string # Set of allowed logging commands ('any' or 'restricted').
settableVariables: none | [ string ] # Restrictions on which variables that can be set.
Propriétés
container
String.
Conteneur à cibler (ou « hôte » pour l’ordinateur hôte).
commands
String.
Ensemble de commandes de journalisation autorisées (« any » ou « restricted »). any | Restreint.
settableVariables
target.settableVariables.
Restrictions sur les variables qui peuvent être définies.
cible : conteneur, commandes
Configurez la cible d’étape avec l’environnement et la liste autorisée de commandes.
target:
container: string # Container to target (or 'host' for host machine).
commands: string # Set of allowed logging commands ('any' or 'restricted').
Propriétés
container
String.
Conteneur à cibler (ou « hôte » pour l’ordinateur hôte).
commands
String.
Ensemble de commandes de journalisation autorisées (« any » ou « restricted »). any | Restreint.
Remarques
Vous n’avez pas besoin de configurer toutes ces propriétés lors de la configuration d’une cible d’étape. Si elle n’est pas spécifiée, la valeur par défaut pour container
est host
, la valeur par défaut de commands
est any
, et la valeur par défaut pour settableVariables
permet à toutes les variables d’être définies par étape.
Ciblage des étapes et isolation des commandes
Azure Pipelines prend en charge l’exécution de travaux dans des conteneurs ou sur l’hôte de l’agent. Auparavant, un travail entier était défini sur l’une de ces deux cibles. À présent, des étapes individuelles (tâches ou scripts) peuvent s’exécuter sur la cible que vous choisissez. Les étapes peuvent également cibler d’autres conteneurs, de sorte qu’un pipeline peut exécuter chaque étape dans un conteneur spécialisé et spécialement conçu.
Notes
Cette fonctionnalité est en version préliminaire publique. Si vous avez des commentaires ou des questions sur cette fonctionnalité, faites-le nous savoir dans le Developer Community.
Les conteneurs peuvent servir de limites d’isolation, empêchant le code d’apporter des modifications inattendues sur l’ordinateur hôte. La façon dont les étapes communiquent avec l’agent et accèdent aux services à partir de l’agent n’est pas affectée par l’isolement des étapes dans un conteneur. Par conséquent, nous introduisons également un mode de restriction de commande que vous pouvez utiliser avec des cibles d’étape. La définition commands
de sur restricted
limite les services qu’une étape peut demander à l’agent. Il ne sera plus en mesure d’attacher des journaux, de charger des artefacts et de certaines autres opérations.
Exemples
L’exemple suivant montre comment exécuter des étapes sur l’hôte dans un conteneur de travaux et dans un autre conteneur.
resources:
containers:
- container: python
image: python:3.8
- container: node
image: node:13.2
jobs:
- job: example
container: python
steps:
- script: echo Running in the job container
- script: echo Running on the host
target: host
- script: echo Running in another container, in restricted commands mode
target:
container: node
commands: restricted