Sdílet prostřednictvím


PublishPipelineArtifact@1 – Úloha Publikování artefaktů kanálu v1

Tuto úlohu použijte k publikování (nahrání) souboru nebo adresáře jako pojmenovaného artefaktu pro aktuální spuštění.

Tuto úlohu použijte k publikování (nahrání) souboru nebo adresáře jako pojmenovaného artefaktu pro aktuální spuštění.

Důležité

Tato úloha je podporována pouze v Azure DevOps Services. Pokud ji použijete na Azure DevOps Serveru, zobrazí se chybová zpráva podobná Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead. Použít Publikovat artefakty sestavení, pokud používáte Azure DevOps Server nebo TFS 2018.

Syntaxe

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

Vstupy

targetPath - cesta k souboru nebo adresáři
Vstupní alias: path. string. Povinné. Výchozí hodnota: $(Pipeline.Workspace).

Určuje cestu k souboru nebo adresáři k publikování. Může být absolutní nebo relativní vzhledem k výchozímu pracovnímu adresáři. Může obsahovat proměnné, ale zástupné cardy nejsou podporovány. Další informace najdete v tématu Artefakty ve službě Azure Pipelines.


artifact - název artefaktu
Vstupní alias: artifactName. string.

Určuje název artefaktu, který se má publikovat. Může to být libovolný název, který zvolíte, například drop. Pokud není nastavená, výchozí hodnota je jedinečné ID vymezené pro úlohu.

Důležité

Název artefaktu nemůže obsahovat \, /, ", :, <, >, |, *nebo ?.


publishLocation - umístění publikování artefaktů
Vstupní alias: artifactType. string. Povinné. Povolené hodnoty: pipeline (Azure Pipelines), filepath (sdílená složka A). Výchozí hodnota: pipeline.

Určuje, jestli se má artefakt uložit ve službě Azure Pipelines, nebo ho zkopírovat do sdílené složky, která musí být přístupná z agenta kanálu.


cesta ke sdílené složce fileSharePath -
string. Požadováno při artifactType = filepath.

Určuje sdílenou složku, do které se kopírují soubory artefaktů. To může zahrnovat proměnné, například \\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber). Publikování artefaktů z agenta Linuxu nebo macOS do sdílené složky se nepodporuje, například \\server\folderName.


parallel - paralelní kopírování
boolean. Volitelný. Používá se při artifactType = filepath. Výchozí hodnota: false.

Určuje, jestli se mají soubory kopírovat paralelně pomocí více vláken pro větší možnou propustnost. Pokud toto nastavení není povolené, použije se jedno vlákno.


parallelCount - paralelní počet
string. Volitelný. Používá se při artifactType = filepath && parallel = true. Výchozí hodnota: 8.

Určuje stupeň paralelismu nebo počet vláken použitých k provedení kopírování. Hodnota musí být v rozmezí od 1 do 128.


properties - vlastních vlastností
string.

Určuje vlastní vlastnosti, které se mají přidružit k artefaktu. Použijte platný řetězec JSON s předponou user- u všech klíčů.


Možnosti ovládání úloh

Všechny úlohy mají kromě vstupů také možnosti ovládání. Další informace naleznete v tématu Možnosti ovládacího prvku a běžné vlastnosti úloh.

Výstupní proměnné

Žádné.

Poznámky

Publikování není podporováno v klasických kanálech verze.

Poznámka:

Artefakty kanálu publikování se v místním prostředí nepodporují. Pokud používáte Azure DevOps Server nebo TFS 2018, použijte publikovat artefakty sestavení. Pokud ji použijete na Azure DevOps Serveru, zobrazí se chybová zpráva podobná Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead..

Klíčová slova publish a download jsou zkratkami pro úkoly PublishPipelineArtifact@1 a DownloadPipelineArtifact@2. Další podrobnosti najdete v steps.publish a steps.download.

Návod

Pomocí souboru .artifactignore můžete určit, které soubory budou publikovány.

Mám problémy s publikováním artefaktů. Jak zobrazím podrobné protokoly?

Povolení podrobných protokolů pro váš kanál:

  1. Upravte kanál a vyberte proměnných
  2. Přidání nové proměnné s názvem System.Debug a hodnotou true
  3. Uložit

Které proměnné jsou pro mě k dispozici?

A: $(Build.SourcesDirectory) a $(Agent.BuildDirectory) jsou jen některé proměnné, které můžete v kanálu použít. Proměnné jsou k dispozici jako výrazy nebo skripty.

Informace o různých typech proměnných najdete v tématu Definování proměnných, předdefinovaných proměnnýcha proměnných klasické verze a artefaktů.

Úloha mi umožňuje publikovat artefakty v úloze nasazení v kanálu yaml, ale nemůžu ho použít v podřízených kanálech?

A: Úlohy nasazení nemají kontext zdrojových větví a proto nejsou vhodné pro publikování artefaktů. Byly primárně navrženy tak, aby spotřebovávali artefakty. Alternativním řešením je izolovat tuto logiku do samostatné úlohy (se závislostmi na úlohách nasazení).

Požadavky

Požadavek Popis
Typy kanálů YAML, klasické sestavení, klasická verze
Běží na Agent, DeploymentGroup
požadavky Žádný
možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
omezení příkazů Jakýkoliv
nastavitelné proměnné Jakýkoliv
Verze agenta 2.199.0 nebo novější
Kategorie úkolu Užitnost
Požadavek Popis
Typy kanálů YAML, klasické sestavení, klasická verze
Běží na Agent, DeploymentGroup
požadavky Žádný
možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
omezení příkazů Jakýkoliv
nastavitelné proměnné Jakýkoliv
Verze agenta 2.199 nebo vyšší
Kategorie úkolu Užitnost
Požadavek Popis
Typy kanálů YAML, klasické sestavení, klasická verze
Běží na Agent, DeploymentGroup
požadavky Žádný
možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
omezení příkazů Jakýkoliv
nastavitelné proměnné Jakýkoliv
Verze agenta 2.159.2 nebo novější
Kategorie úkolu Užitnost

Viz také