PublishPipelineArtifact@1 - Tarefa Publicar Artefatos de Pipeline v1
Use essa tarefa para publicar (carregar) um arquivo ou diretório como um artefato nomeado para a execução atual.
Use essa tarefa para publicar (carregar) um arquivo ou diretório como um artefato nomeado para a execução atual.
Importante
Essa tarefa tem suporte apenas em Azure DevOps Services. Se você usá-lo em 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.
Usar Publicar Artefatos de Build se estiver usando 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 arquivo ou diretório
Alias de entrada: path
. string
. Obrigatórios. Valor padrão: $(Pipeline.Workspace)
.
Especifica o caminho do arquivo ou diretório a ser publicado. Pode ser absoluto ou relativo para o diretório de trabalho padrão. Pode incluir variáveis, mas não há suporte para curingas. Confira Artefatos no Azure Pipelines para obter mais informações.
artifact
- Nome do artefato
Alias de entrada: artifactName
. string
.
Especifica o nome do artefato a ser publicado. Pode ser qualquer nome que você escolher, por exemplo drop
. Se não for definido, o padrão será uma ID exclusiva com escopo para o trabalho.
Importante
O nome do artefato não pode conter \
, /
, "
, :
, <
, >
|
, *
, ou ?
.
publishLocation
- Local de publicação do artefato
Alias de entrada: artifactType
. string
. Obrigatórios. Valores permitidos: pipeline
(Azure Pipelines), filepath
(um compartilhamento de arquivos). Valor padrão: pipeline
.
Especifica se o artefato deve ser armazenado no Azure Pipelines ou copiá-lo para um compartilhamento de arquivos que deve estar acessível do agente de pipeline.
fileSharePath
- Caminho do compartilhamento de arquivos
string
. Obrigatório quando artifactType = filepath
.
Especifica o compartilhamento de arquivos em que os arquivos de artefato são copiados. Isso pode incluir variáveis, por exemplo \\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)
. Não há suporte para a publicação de artefatos de um agente linux ou macOS em um compartilhamento de arquivos, por exemplo \\server\folderName
.
parallel
- Cópia paralela
boolean
. Opcional. Use quando artifactType = filepath
. Valor padrão: false
.
Especifica se os arquivos devem ser copiados em paralelo usando vários threads para maior taxa de transferência potencial. Se essa configuração não estiver habilitada, um thread será usado.
parallelCount
- Contagem paralela
string
. Opcional. Use quando artifactType = filepath && parallel = true
. Valor padrão: 8
.
Especifica o grau de paralelismo ou o número de threads usados para executar a cópia. O valor deve estar entre 1 e 128.
properties
- Propriedades personalizadas
string
.
Especifica as propriedades personalizadas a serem associadas ao artefato. Use uma cadeia de caracteres JSON válida com o prefixo user-
em todas as chaves.
Opções de controle da tarefa
Todas as tarefas têm opções de controle além de suas entradas de tarefa. Para obter mais informações, consulte Opções de controle e propriedades comuns da tarefa.
Variáveis de saída
Nenhum.
Comentários
Não há suporte para publicação em pipelines de lançamento clássicos.
Observação
Não há suporte para a publicação de artefatos de pipeline no local. Use Publicar Artefatos de Build se estiver usando o Azure DevOps Server ou o TFS 2018. Se você usá-lo 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 palavras-chave publish
e download
são atalhos para as tarefas PublishPipelineArtifact@1 e DownloadPipelineArtifact@2. Confira steps.publish e steps.download para mais detalhes.
Dica
Você pode usar o arquivo .artifactignore para controlar quais arquivos serão publicados.
Estou tendo problemas com a publicação de meus artefatos. Como posso exibir os logs detalhados?
Para habilitar logs detalhados para seu pipeline:
- Edite seu pipeline e selecione Variáveis
- Adicione uma nova variável com o nome
System.Debug
e o valortrue
- Salvar
Quais variáveis estão disponíveis para mim?
R: $(Build.SourcesDirectory)
e $(Agent.BuildDirectory)
são apenas algumas das variáveis que você pode usar em seu pipeline. As variáveis estão disponíveis como expressões ou scripts.
Confira Definir variáveis, variáveis predefinidas e Variáveis clássicas de lançamento e artefatos para saber mais sobre os diferentes tipos de variáveis.
A tarefa me permite publicar artefatos no trabalho de implantação no pipeline yaml, mas não consigo usá-lo no pipeline downstream?
R: Os trabalhos de implantação não têm o contexto de ramificações de origem e, portanto, não são apropriados para publicar artefatos. Eles foram projetados principalmente para consumir artefatos. Uma solução alternativa seria isolar essa lógica em um trabalho separado (com dependências de seus trabalhos de implantação).
Requisitos
Requisito | Descrição |
---|---|
Tipos de pipeline | YAML, build clássico, versão clássica |
Executa em | Agent, DeploymentGroup |
Demandas | Nenhum |
Funcionalidades | Essa tarefa não atende a nenhuma demanda para tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | 2.199.0 ou superior |
Categoria da tarefa | Utilitário |
Requisito | Descrição |
---|---|
Tipos de pipeline | YAML, build clássico, versão clássica |
É executado em | Agent, DeploymentGroup |
Demandas | Nenhum |
Funcionalidades | Essa tarefa não atende a nenhuma demanda por tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | 2.199 ou superior |
Categoria da tarefa | Utilitário |
Requisito | Descrição |
---|---|
Tipos de pipeline | YAML, build clássico, versão clássica |
É executado em | Agent, DeploymentGroup |
Demandas | Nenhum |
Funcionalidades | Essa tarefa não atende a nenhuma demanda por tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | 2.159.2 ou superior |
Categoria da tarefa | Utilitário |
Confira também
- Quer começar a usar artefatos de build? Confira Artefatos no Azure Pipelines.