Partager via


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.

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.

settableVariablestarget.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

Voir aussi