PublishPipelineArtifact@1 - Tarefa Publicar artefatos de pipeline v1
Use esta tarefa para publicar (carregar) um arquivo ou diretório como um artefato nomeado para a execução atual.
Use esta tarefa para publicar (carregar) um arquivo ou diretório como um artefato nomeado para a execução atual.
Importante
Esta tarefa é suportada apenas nos Serviços de DevOps do Azure. Se você usá-lo no Servidor de DevOps do Azure, receberá uma mensagem de erro semelhante a Usar Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead.
se estiver usando o Servidor de DevOps do Azure ou o TFS 2018.
Sintaxe
# 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.
Insumos
targetPath
-
de caminho de arquivo ou diretório
Alias de entrada: path
.
string
. Obrigatório. Valor padrão: $(Pipeline.Workspace)
.
Especifica o caminho do arquivo ou diretório a ser publicado. Pode ser absoluto ou relativo ao diretório de trabalho padrão. Pode incluir variáveis , mas não há suporte para curingas. Consulte Artefatos no de Pipelines do Azure 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 estiver definido, o padrão será um ID exclusivo 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ório. 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 copiado para um compartilhamento de arquivos que deve ser acessível a partir do agente de pipeline.
fileSharePath
-
Caminho de compartilhamento de arquivos
string
. Necessário quando artifactType = filepath
.
Especifica o compartilhamento de arquivos onde 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 controlo de tarefas
Todas as tarefas têm opções de controle, além de suas entradas de tarefas. Para obter mais informações, consulte Opções de controle de 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.
Observação
Não há suporte para Publicar Artefatos de Pipeline no local. Use Publicar Artefatos de Compilação se estiver usando o Servidor de DevOps do Azure ou o TFS 2018. Se você usá-lo no Azure DevOps Server, receberá uma mensagem de erro semelhante ao 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. Consulte steps.publish e steps.download para obter mais detalhes.
Tip
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 ver os registos detalhados?
Para habilitar logs detalhados para seu pipeline:
- Edite seu pipeline e selecione Variáveis
- Adicionar uma nova variável com o nome
System.Debug
e valortrue
- Salvar
Que 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.
Consulte Definir variáveis, variáveis predefinidase Variáveis de liberação clássica 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 em seus trabalhos de implantação).
Requerimentos
Requisito | Descrição |
---|---|
Tipos de pipeline | YAML, Construção clássica, Versão clássica |
Funciona em | Agente, DeploymentGroup |
Exigências | Nenhum |
Capacidades | Esta tarefa não satisfaz quaisquer exigências 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 de tarefa | Utilidade |
Requisito | Descrição |
---|---|
Tipos de pipeline | YAML, Construção clássica, Versão clássica |
Funciona em | Agente, DeploymentGroup |
Exigências | Nenhum |
Capacidades | Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | 2.199 ou superior |
Categoria de tarefa | Utilidade |
Requisito | Descrição |
---|---|
Tipos de pipeline | YAML, Construção clássica, Versão clássica |
Funciona em | Agente, DeploymentGroup |
Exigências | Nenhum |
Capacidades | Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | 2.159.2 ou superior |
Categoria de tarefa | Utilidade |
Ver também
- Quer começar a usar artefatos de construção? Consulte Artefatos no Azure Pipelines.