PublishPipelineArtifact@1 – Úloha Publikování artefaktů kanálu v1
Tato úloha slouží k publikování (nahrání) souboru nebo adresáře jako pojmenovaného artefaktu pro aktuální spuštění.
Tato úloha slouží k publikování (nahrání) souboru nebo adresáře jako pojmenovaného artefaktu pro aktuální spuštění.
Důležité
Tento úkol je podporován pouze v Azure DevOps Services. Pokud ho použijete na Azure DevOps Server, zobrazí se chybová zpráva podobná Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead.
jako Použití publikování artefaktů sestavení, pokud používáte Azure DevOps Server nebo 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.
Vstupy
targetPath
- Cesta k souboru nebo adresáři
Vstupní alias: path
. string
. Povinná hodnota. Výchozí hodnota: $(Pipeline.Workspace)
.
Určuje cestu k souboru nebo adresáři, který se má publikovat. 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 v 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 nesmí obsahovat \
, /
, "
, :
<
, >
, |
, , *
nebo ?
.
publishLocation
- Umístění publikování artefaktů
Vstupní alias: artifactType
. string
. Povinná hodnota. Povolené hodnoty: pipeline
(Azure Pipelines) filepath
(sdílená složka). 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.
fileSharePath
- Cesta ke sdílené složce
string
. Vyžaduje se, když 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 pro Linux nebo macOS do sdílené složky se nepodporuje, například \\server\folderName
.
parallel
- Paralelní kopírování
boolean
. Nepovinný parametr. Použijte, když artifactType = filepath
. Výchozí hodnota: false
.
Určuje, zda 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
. Nepovinný parametr. Použijte, když 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 mezi 1 a 128.
properties
- Vlastní vlastnosti
string
.
Určuje vlastní vlastnosti, které se mají přidružit k artefaktu. Použijte platný řetězec JSON s předponou user-
na všech klíčích.
Možnosti ovládání úloh
Všechny úlohy mají kromě vstupů také možnosti ovládání. Další informace najdete v tématu Možnosti ovládacího prvku a běžné vlastnosti úlohy.
Výstupní proměnné
Žádné
Poznámky
V klasických kanálech vydaných verzí se publikování nepodporuje.
Poznámka
Publikování artefaktů kanálu se v místním prostředí nepodporuje. Pokud používáte Azure DevOps Server nebo TFS 2018, použijte publikování artefaktů sestavení. Pokud ho použijete na Azure DevOps Server, zobrazí se chybová zpráva podobná Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead.
.
Klíčová publish
slova a download
jsou zkratky pro úkoly PublishPipelineArtifact@1 a DownloadPipelineArtifact@2. Další podrobnosti najdete v článcích steps.publish a steps.download .
Tip
Pomocí souboru .artifactignore můžete řídit, které soubory se budou publikovat.
Mám problémy s publikováním artefaktů. Jak můžu zobrazit podrobné protokoly?
Povolení podrobných protokolů pro kanál:
- Upravte kanál a vyberte Proměnné.
- Přidání nové proměnné s názvem
System.Debug
a hodnotoutrue
- Uložit
Které proměnné mám k dispozici?
A: $(Build.SourcesDirectory)
a $(Agent.BuildDirectory)
je to jen několik proměnných, které můžete použít v kanálu. 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 verze Classic a artefaktů .
Úloha mi umožňuje publikovat artefakty v úloze nasazení v kanálu yaml, ale nemůžu ji použít v podřízené kanálu?
O: Úlohy nasazení nemají kontext zdrojových větví, a proto nejsou vhodné pro publikování artefaktů. Byly primárně navrženy tak, aby využívaly artefakty. Alternativním řešením je izolovat tuto logiku do samostatné úlohy (se závislostmi na vašich úlohách nasazení).
Požadavky
Požadavek | Popis |
---|---|
Typy kanálů | YAML, classic build, verze Classic |
Spustí se | Agent, DeploymentGroup |
Požadavky | Žádné |
Možnosti | Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze. |
Omezení příkazů | Všechny |
Nastavitelné proměnné | Všechny |
Verze agenta | 2.199.0 nebo vyšší |
Kategorie úloh | Nástroj |
Požadavek | Popis |
---|---|
Typy kanálů | YAML, classic build, verze Classic |
Spustí se | Agent, DeploymentGroup |
Požadavky | Žádné |
Možnosti | Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze. |
Omezení příkazů | Všechny |
Nastavitelné proměnné | Všechny |
Verze agenta | 2.199 nebo vyšší |
Kategorie úloh | Nástroj |
Požadavek | Popis |
---|---|
Typy kanálů | YAML, classic build, verze Classic |
Spustí se | Agent, DeploymentGroup |
Požadavky | Žádné |
Možnosti | Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze. |
Omezení příkazů | Všechny |
Nastavitelné proměnné | Všechny |
Verze agenta | 2.159.2 nebo vyšší |
Kategorie úloh | Nástroj |
Viz také
- Chcete začít s artefakty sestavení? Viz Artefakty v Azure Pipelines.