PublishPipelineArtifact@1 - Tâche publier des artefacts de pipeline v1

Utilisez cette tâche pour publier (charger) un fichier ou un répertoire en tant qu’artefact nommé pour l’exécution actuelle.

Utilisez cette tâche pour publier (charger) un fichier ou un répertoire en tant qu’artefact nommé pour l’exécution actuelle.

Important

Cette tâche est prise en charge sur Azure DevOps Services uniquement. Si vous l’utilisez sur Azure DevOps Server, vous recevrez un message d’erreur similaire à Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead. Utiliser publier des artefacts de build si vous utilisez Azure DevOps Server ou TFS 2018.

Syntax

# Publish Pipeline Artifacts v1
# Publish (upload) a file or directory as a named artifact for the current run.
- task: PublishPipelineArtifact@1
  inputs:
    targetPath: '$(Pipeline.Workspace)' # string. Alias: path. Required. File or directory path. Default: $(Pipeline.Workspace).
    #artifact: # string. Alias: artifactName. Artifact name. 
    publishLocation: 'pipeline' # 'pipeline' | 'filepath'. Alias: artifactType. Required. Artifact publish location. Default: pipeline.
    #fileSharePath: # string. Required when artifactType = filepath. File share path. 
    #parallel: false # boolean. Optional. Use when artifactType = filepath. Parallel copy. Default: false.
    #parallelCount: '8' # string. Optional. Use when artifactType = filepath && parallel = true. Parallel count. Default: 8.
    #properties: # string. Custom properties.
# Publish Pipeline Artifacts v1
# Publish (upload) a file or directory as a named artifact for the current run.
- task: PublishPipelineArtifact@1
  inputs:
    targetPath: '$(Pipeline.Workspace)' # string. Alias: path. Required. File or directory path. Default: $(Pipeline.Workspace).
    #artifact: # string. Alias: artifactName. Artifact name. 
    publishLocation: 'pipeline' # 'pipeline' | 'filepath'. Alias: artifactType. Required. Artifact publish location. Default: pipeline.
    #fileSharePath: # string. Required when artifactType = filepath. File share path. 
    #parallel: false # boolean. Optional. Use when artifactType = filepath. Parallel copy. Default: false.
    #parallelCount: '8' # string. Optional. Use when artifactType = filepath && parallel = true. Parallel count. Default: 8.

Entrées

targetPath - Chemin d’accès au fichier ou au répertoire
Alias d’entrée : path. string. Obligatoire. Valeur par défaut : $(Pipeline.Workspace).

Spécifie le chemin d’accès du fichier ou du répertoire à publier. Peut être absolu ou relatif au répertoire de travail par défaut. Peut inclure des variables, mais les caractères génériques ne sont pas pris en charge. Pour plus d’informations, consultez Artefacts dans Azure Pipelines .


artifact - Nom de l’artefact
Alias d’entrée : artifactName. string.

Spécifie le nom de l’artefact à publier. Il peut s’agir de n’importe quel nom que vous choisissez, par exemple drop. Si elle n’est pas définie, la valeur par défaut est un ID unique délimité au travail.

Important

Le nom de l’artefact ne peut pas contenir \, "/, :, ><, |, *, ou ?.


publishLocation - Emplacement de publication de l’artefact
Alias d’entrée : artifactType. string. Obligatoire. Valeurs autorisées : pipeline (Azure Pipelines), filepath (partage de fichiers A). Valeur par défaut : pipeline.

Spécifie s’il faut stocker l’artefact dans Azure Pipelines ou le copier dans un partage de fichiers qui doit être accessible à partir de l’agent de pipeline.


fileSharePath - Chemin d’accès au partage de fichiers
string. Nécessaire lorsque artifactType = filepath.

Spécifie le partage de fichiers dans lequel les fichiers d’artefact sont copiés. Cela peut inclure des variables, par exemple \\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber). La publication d’artefacts à partir d’un agent Linux ou macOS dans un partage de fichiers n’est pas prise en charge, par exemple \\server\folderName.


parallel - Copie parallèle
boolean. facultatif. Utilisez quand artifactType = filepath. Valeur par défaut : false.

Spécifie s’il faut copier des fichiers en parallèle à l’aide de plusieurs threads pour un débit potentiel plus élevé. Si ce paramètre n’est pas activé, un thread est utilisé.


parallelCount - Nombre parallèle
string. facultatif. Utilisez quand artifactType = filepath && parallel = true. Valeur par défaut : 8.

Spécifie le degré de parallélisme, ou le nombre de threads utilisés, pour effectuer la copie. La valeur doit être comprise entre 1 et 128.


properties - Propriétés personnalisées
string.

Spécifie les propriétés personnalisées à associer à l’artefact. Utilisez une chaîne JSON valide avec le préfixe user- sur toutes les clés.


Options de contrôle de la tâche

Toutes les tâches ont des options de contrôle en plus de leurs entrées de tâches. Pour plus d’informations, consultez Options de contrôle et propriétés de tâche courantes.

Variables de sortie

Aucun.

Notes

La publication n’est pas prise en charge dans les pipelines de mise en production classiques.

Notes

La tâche Publier des artefacts de pipeline n’est pas prise en charge localement. Utilisez Publier des artefacts de build si vous utilisez Azure DevOps Server ou TFS 2018. Si vous l’utilisez sur Azure DevOps Server, vous recevrez un message d’erreur similaire à Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead..

Les mots clés publish et download sont des raccourcis pour les tâches PublishPipelineArtifact@1 et DownloadPipelineArtifact@2. Pour plus d’informations, consultez steps.publish et steps.download.

Conseil

Vous pouvez utiliser le fichier .artifactignore pour contrôler les fichiers qui seront publiés.

Je rencontre des problèmes avec la publication de mes artefacts. Comment voir les journaux détaillés ?

Pour activer les journaux détaillés pour votre pipeline :

  1. Modifiez votre pipeline et sélectionnez Variables
  2. Ajoutez une nouvelle variable avec le nom System.Debug et la valeur true
  3. Save

Quelles variables sont disponibles ?

R : $(Build.SourcesDirectory) et $(Agent.BuildDirectory) sont des exemples de variables que vous pouvez utiliser dans votre pipeline. Les variables sont disponibles sous forme d’expressions ou de scripts.

Consultez Définir des variables, Variables prédéfinies et Variables de mise en production et d’artefacts classiques pour en savoir plus sur les différents types de variables.

La tâche me permet de publier des artefacts dans le travail de déploiement dans le pipeline yaml, mais je ne suis pas en mesure de l’utiliser dans le pipeline en aval ?

R : Les travaux de déploiement n’ont pas le contexte des branches sources et ne sont donc pas appropriés pour la publication d’artefacts. Ils ont été principalement conçus pour consommer des artefacts. Une solution de contournement est d’isoler cette logique dans un travail distinct (avec des dépendances sur vos travaux de déploiement).

Configuration requise

Condition requise Description
Types de pipelines YAML, build classique, version classique
S’exécute sur Agent, DeploymentGroup
Demandes None
Capabilities Cette tâche ne répond à aucune demande pour les tâches suivantes dans le travail.
Restrictions de commande Quelconque
Variables paramétrables Quelconque
Version de l’agent 2.199.0 ou version ultérieure
Catégorie de la tâche Utilitaire
Condition requise Description
Types de pipelines YAML, build classique, version classique
S’exécute sur Agent, DeploymentGroup
Demandes None
Capabilities Cette tâche ne répond à aucune demande pour les tâches suivantes dans le travail.
Restrictions de commandes Quelconque
Variables settables Quelconque
Version de l’agent 2.199 ou supérieur
Catégorie de la tâche Utilitaire
Condition requise Description
Types de pipelines YAML, build classique, version classique
S’exécute sur Agent, DeploymentGroup
Demandes None
Capabilities Cette tâche ne répond à aucune demande pour les tâches suivantes dans le travail.
Restrictions de commandes Quelconque
Variables settables Quelconque
Version de l’agent 2.159.2 ou version ultérieure
Catégorie de la tâche Utilitaire

Voir aussi