Partilhar via


PublishPipelineArtifact@1 - Tarefa Publicar Artefactos de Pipeline v1

Utilize esta tarefa para publicar (carregar) um ficheiro ou diretório como um artefacto com nome para a execução atual.

Utilize esta tarefa para publicar (carregar) um ficheiro ou diretório como um artefacto com nome para a execução atual.

Importante

Esta tarefa é suportada apenas nos Serviços de DevOps do Azure. Se o utilizar no Azure DevOps Server, receberá uma mensagem de erro semelhante a Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead. Utilizar Artefactos de Compilação de Publicação se estiver a utilizar 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.

Entradas

targetPath - Caminho do ficheiro ou do diretório
Alias de entrada: path. string. Obrigatório. Valor predefinido: $(Pipeline.Workspace).

Especifica o caminho do ficheiro ou diretório a publicar. Pode ser absoluto ou relativo ao diretório de trabalho predefinido. Pode incluir variáveis, mas os carateres universais não são suportados. Veja Artefactos nos Pipelines do Azure para obter mais informações.


artifact - Nome do artefacto
Alias de entrada: artifactName. string.

Especifica o nome do artefacto a publicar. Pode ser qualquer nome que escolher, por exemplo drop. Se não estiver definido, a predefinição é um ID exclusivo no âmbito da tarefa.

Importante

O nome do artefacto não pode conter , , , , , , , ou ?*. |<>:"/\


publishLocation - Localização de publicação de artefactos
Alias de entrada: artifactType. string. Obrigatório. Valores permitidos: pipeline (Pipelines do Azure), filepath (Uma partilha de ficheiros). Valor predefinido: pipeline.

Especifica se pretende armazenar o artefacto nos Pipelines do Azure ou copiá-lo para uma partilha de ficheiros que tem de estar acessível a partir do agente de pipeline.


fileSharePath - Caminho da partilha de ficheiros
string. Necessário quando artifactType = filepath.

Especifica a partilha de ficheiros onde os ficheiros de artefacto são copiados. Isto pode incluir variáveis, por exemplo \\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber). A publicação de artefactos de um agente Linux ou macOS para uma partilha de ficheiros não é suportada, por exemplo \\server\folderName.


parallel - Cópia paralela
boolean. Opcional. Utilize quando artifactType = filepath. Valor predefinido: false.

Especifica se deve copiar ficheiros em paralelo com vários threads para um maior débito potencial. Se esta definição não estiver ativada, será utilizado um thread.


parallelCount - Contagem paralela
string. Opcional. Utilize quando artifactType = filepath && parallel = true. Valor predefinido: 8.

Especifica o grau de paralelismo ou o número de threads utilizados para executar a cópia. O valor tem de estar entre 1 e 128.


properties - Propriedades personalizadas
string.

Especifica as propriedades personalizadas a associar ao artefacto. Utilize uma cadeia JSON válida com o prefixo user- em todas as chaves.


Opções de controlo de tarefas

Todas as tarefas têm opções de controlo para além das entradas de tarefas. Para obter mais informações, veja Opções de controlo e propriedades de tarefas comuns.

Variáveis de saída

Nenhum.

Observações

A publicação não é suportada em pipelines de versão clássicos.

Nota

Publicar Artefactos de Pipeline não é suportado no local. Utilize Publicar Artefactos de Compilação se estiver a utilizar Azure DevOps Server ou TFS 2018. Se o utilizar no Azure DevOps Server, receberá uma mensagem de erro semelhante a Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead..

As publish palavras-chave e download são atalhos para as tarefas PublishPipelineArtifact@1 e DownloadPipelineArtifact@2. Consulte steps.publish e steps.download para obter mais detalhes.

Dica

Pode utilizar o ficheiro .artifactignore para controlar os ficheiros que serão publicados.

Estou a ter problemas com a publicação dos meus artefactos. Como posso ver os registos detalhados?

Para ativar registos detalhados para o pipeline:

  1. Editar o pipeline e selecionar Variáveis
  2. Adicionar uma nova variável com o nome System.Debug e o valor true
  3. Guardar

Que variáveis estão disponíveis para mim?

R: $(Build.SourcesDirectory) e $(Agent.BuildDirectory) são apenas algumas das variáveis que pode utilizar no pipeline. As variáveis estão disponíveis como expressões ou scripts.

Veja Definir variáveis, variáveis predefinidas e Variáveis de lançamento e artefactos clássicos para saber mais sobre os diferentes tipos de variáveis.

A tarefa permite-me publicar artefactos na tarefa de implementação no pipeline yaml, mas não consigo utilizá-lo no pipeline a jusante?

R: As tarefas de implementação não têm o contexto dos ramos de origem e, por conseguinte, não são adequadas para a publicação de artefactos. Foram concebidos principalmente para consumir artefactos. Uma solução seria isolar essa lógica numa tarefa separada (com dependências nas tarefas de implementação).

Requisitos

Requisito Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agente, DeploymentGroup
Exigências Nenhuma
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes na tarefa.
Restrições de comandos Qualquer
Variáveis de tabelas definidas Qualquer
Versão do agente 2.199.0 ou superior
Categoria da tarefa Utilitário
Requisito Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agent, DeploymentGroup
Exigências Nenhuma
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes na tarefa.
Restrições de comandos Qualquer
Variáveis de definição Qualquer
Versão do agente 2.199 ou superior
Categoria da tarefa Utilitário
Requisito Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agent, DeploymentGroup
Exigências Nenhuma
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes na tarefa.
Restrições de comandos Qualquer
Variáveis de definição Qualquer
Versão do agente 2.159.2 ou superior
Categoria da tarefa Utilitário

Ver também