UniversalPackages@0 - Tarefa de pacotes universais v0

Utilize esta tarefa para transferir ou empacotar e publicar Pacotes Universais.

Syntax

# Universal packages v0
# Download or publish Universal Packages.
- task: UniversalPackages@0
  inputs:
    command: 'download' # 'download' | 'publish'. Required. Command. Default: download.
    downloadDirectory: '$(System.DefaultWorkingDirectory)' # string. Required when command = download. Destination directory. Default: $(System.DefaultWorkingDirectory).
    #publishDirectory: '$(Build.ArtifactStagingDirectory)' # string. Required when command = publish. Path to file(s) to publish. Default: $(Build.ArtifactStagingDirectory).
  # Feed & package details
    feedsToUse: 'internal' # 'internal' | 'external'. Alias: internalOrExternalDownload. Required when command = download. Feed location. Default: internal.
    #externalFeedCredentials: # string. Alias: externalEndpoint. Optional. Use when internalOrExternalDownload = external && command = download. organization/collection connection. 
    #vstsFeed: # string. Alias: feedListDownload. Required when internalOrExternalDownload = internal && command = download. Feed. 
    #vstsFeedPackage: # string. Alias: packageListDownload. Required when internalOrExternalDownload = internal && command = download. Package name. 
    #vstsPackageVersion: # string. Alias: versionListDownload. Required when internalOrExternalDownload = internal && command = download. Version. 
    #feedDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Feed (or Project/Feed if the feed was created in a project). 
    #packageDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Package name. 
    #versionDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Version. 
  # Feed & package details
    #feedsToUsePublish: 'internal' # 'internal' | 'external'. Alias: internalOrExternalPublish. Required when command = publish. Feed location. Default: internal.
    #publishFeedCredentials: # string. Alias: externalEndpoints. Required when internalOrExternalPublish = external && command = publish. organization/collection connection. 
    #vstsFeedPublish: # string. Alias: feedListPublish. Required when internalOrExternalPublish = internal && command = publish. Destination Feed. 
    #vstsFeedPackagePublish: # string. Alias: packageListPublish. Required when internalOrExternalPublish = internal && command = publish. Package name. 
    #feedPublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Feed (or Project/Feed if the feed was created in a project). 
    #packagePublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Package name. 
    #versionOption: 'patch' # 'major' | 'minor' | 'patch' | 'custom'. Alias: versionPublishSelector. Required when command = publish. Version. Default: patch.
    #versionPublish: # string. Required when versionPublishSelector = custom && command = publish. Custom version. 
    #packagePublishDescription: # string. Optional. Use when command = publish. Description. 
  # Advanced
    #publishPackageMetadata: true # boolean. Optional. Use when command = publish && internalOrExternalPublish = internal. Publish pipeline metadata. Default: true.
    #verbosity: 'None' # 'None' | 'Trace' | 'Debug' | 'Information' | 'Warning' | 'Error' | 'Critical'. Verbosity. Default: None.
  # Output
    #publishedPackageVar: # string. Optional. Use when command = publish. Package Output Variable.
# Universal packages v0
# Download or publish Universal Packages.
- task: UniversalPackages@0
  inputs:
    command: 'download' # 'download' | 'publish'. Required. Command. Default: download.
    downloadDirectory: '$(System.DefaultWorkingDirectory)' # string. Required when command = download. Destination directory. Default: $(System.DefaultWorkingDirectory).
    #publishDirectory: '$(Build.ArtifactStagingDirectory)' # string. Required when command = publish. Path to file(s) to publish. Default: $(Build.ArtifactStagingDirectory).
  # Feed & package details
    feedsToUse: 'internal' # 'internal' | 'external'. Alias: internalOrExternalDownload. Required when command = download. Feed location. Default: internal.
    #externalFeedCredentials: # string. Alias: externalEndpoint. Optional. Use when internalOrExternalDownload = external && command = download. organization/collection connection. 
    #vstsFeed: # string. Alias: feedListDownload. Required when internalOrExternalDownload = internal && command = download. Feed. 
    #vstsFeedPackage: # string. Alias: packageListDownload. Required when internalOrExternalDownload = internal && command = download. Package name. 
    #vstsPackageVersion: # string. Alias: versionListDownload. Required when internalOrExternalDownload = internal && command = download. Version. 
    #feedDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Feed. 
    #packageDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Package name. 
    #versionDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Version. 
  # Feed & package details
    #feedsToUsePublish: 'internal' # 'internal' | 'external'. Alias: internalOrExternalPublish. Required when command = publish. Feed location. Default: internal.
    #publishFeedCredentials: # string. Alias: externalEndpoints. Required when internalOrExternalPublish = external && command = publish. organization/collection connection. 
    #vstsFeedPublish: # string. Alias: feedListPublish. Required when internalOrExternalPublish = internal && command = publish. Destination Feed. 
    #vstsFeedPackagePublish: # string. Alias: packageListPublish. Required when internalOrExternalPublish = internal && command = publish. Package name. 
    #feedPublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Feed. 
    #packagePublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Package name. 
    #versionOption: 'patch' # 'major' | 'minor' | 'patch' | 'custom'. Alias: versionPublishSelector. Required when command = publish. Version. Default: patch.
    #versionPublish: # string. Required when versionPublishSelector = custom && command = publish. Custom version. 
    #packagePublishDescription: # string. Optional. Use when command = publish. Description. 
  # Advanced
    #publishPackageMetadata: true # boolean. Optional. Use when command = publish && internalOrExternalPublish = internal. Publish pipeline metadata. Default: true.
    #verbosity: 'None' # 'None' | 'Trace' | 'Debug' | 'Information' | 'Warning' | 'Error' | 'Critical'. Verbosity. Default: None.
  # Output
    #publishedPackageVar: # string. Optional. Use when command = publish. Package Output Variable.
# Universal Packages v0
# Download or publish Universal Packages.
- task: UniversalPackages@0
  inputs:
    command: 'download' # 'download' | 'publish'. Required. Command. Default: download.
    downloadDirectory: '$(System.DefaultWorkingDirectory)' # string. Required when command = download. Destination directory. Default: $(System.DefaultWorkingDirectory).
    #publishDirectory: '$(Build.ArtifactStagingDirectory)' # string. Required when command = publish. Path to file(s) to publish. Default: $(Build.ArtifactStagingDirectory).
  # Feed & package details
    feedsToUse: 'internal' # 'internal' | 'external'. Alias: internalOrExternalDownload. Required when command = download. Feed location. Default: internal.
    #externalFeedCredentials: # string. Alias: externalEndpoint. Optional. Use when internalOrExternalDownload = external && command = download. Account/collection connection. 
    #vstsFeed: # string. Alias: feedListDownload. Required when internalOrExternalDownload = internal && command = download. Feed. 
    #vstsFeedPackage: # string. Alias: packageListDownload. Required when internalOrExternalDownload = internal && command = download. Package name. 
    #vstsPackageVersion: # string. Alias: versionListDownload. Required when internalOrExternalDownload = internal && command = download. Version. 
    #feedDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Feed. 
    #packageDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Package name. 
    #versionDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Version. 
  # Feed & package details
    #feedsToUsePublish: 'internal' # 'internal' | 'external'. Alias: internalOrExternalPublish. Required when command = publish. Feed location. Default: internal.
    #publishFeedCredentials: # string. Alias: externalEndpoints. Required when internalOrExternalPublish = external && command = publish. Account/collection connection. 
    #vstsFeedPublish: # string. Alias: feedListPublish. Required when internalOrExternalPublish = internal && command = publish. Destination Feed. 
    #vstsFeedPackagePublish: # string. Alias: packageListPublish. Required when internalOrExternalPublish = internal && command = publish. Package name. 
    #feedPublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Feed. 
    #packagePublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Package name. 
    #versionOption: 'patch' # 'major' | 'minor' | 'patch' | 'custom'. Alias: versionPublishSelector. Required when command = publish. Version. Default: patch.
    #versionPublish: # string. Required when versionPublishSelector = custom && command = publish. Custom version. 
    #packagePublishDescription: # string. Optional. Use when command = publish. Description. 
  # Advanced
    #verbosity: 'None' # 'None' | 'Trace' | 'Debug' | 'Information' | 'Warning' | 'Error' | 'Critical'. Verbosity. Default: None.

Entradas

command - Comando
string. Obrigatório. Valores permitidos: download, publish. Valor predefinido: download.

Especifica o comando NuGet a executar.


downloadDirectory - Diretório de destino
string. Necessário quando command = download. Valor predefinido: $(System.DefaultWorkingDirectory).

Especifica o caminho da pasta onde a tarefa transfere os conteúdos do pacote.


feedsToUse - Localização do feed
Alias de entrada: internalOrExternalDownload. string. Necessário quando command = download. Valores permitidos: internal (Esta organização/coleção), external (Outra organização/coleção). Valor predefinido: internal.

Especifica um feed desta coleção ou de outra coleção nos Artefactos do Azure.


feedsToUse - Localização do feed
Alias de entrada: internalOrExternalDownload. string. Necessário quando command = download. Valores permitidos: internal (Esta conta/coleção), external (Outra conta/coleção). Valor predefinido: internal.

Especifica um feed desta coleção ou de outra coleção nos Artefactos do Azure.


externalFeedCredentials - ligação organização/coleção
Alias de entrada: externalEndpoint. string. Opcional. Utilize quando internalOrExternalDownload = external && command = download.

Especifica as credenciais a utilizar para registos externos localizados no .NuGet.config Para feeds nesta organização ou coleção, deixe isto em branco; As credenciais da compilação são utilizadas automaticamente.


externalFeedCredentials - Ligação de conta/coleção
Alias de entrada: externalEndpoint. string. Opcional. Utilize quando internalOrExternalDownload = external && command = download.

Especifica as credenciais a utilizar para registos externos localizados no .NuGet.config Para feeds nesta organização ou coleção, deixe isto em branco; As credenciais da compilação são utilizadas automaticamente.


vstsFeed - Feed
Alias de entrada: feedListDownload. string. Necessário quando internalOrExternalDownload = internal && command = download.

Inclui o feed selecionado. Tem de ter os Artefactos do Azure instalados e licenciados para selecionar um feed aqui. Especifica o FeedName para um feed com âmbito de organização e projectName/FeedName ou ProjectID/FeedID para um feed com âmbito de projeto.


vstsFeedPackage - Nome do pacote
Alias de entrada: packageListDownload. string. Necessário quando internalOrExternalDownload = internal && command = download.

Especifica o nome do pacote para a tarefa a transferir.


vstsPackageVersion - Versão
Alias de entrada: versionListDownload. string. Necessário quando internalOrExternalDownload = internal && command = download.

Especifica a versão do pacote ou utiliza uma variável que contém a versão a transferir. Esta entrada também pode ser uma expressão de caráter universal, como *, para obter a versão mais alta. Exemplos: 1.* obtém a versão mais alta com a versão principal 1 e 1.2.* obtém a versão de patch mais alta com a versão principal 1 e a versão secundária 2.


feedDownloadExternal - Feed (ou Project/Feed se o feed tiver sido criado num projeto)
string. Necessário quando internalOrExternalDownload = external && command = download.

Especifica um feed noutra organização/coleção.

Para feeds com âmbito de projeto, o valor deve ser Project/Feed, em que Project é o nome ou ID do projeto e Feed é o nome/ID do feed. Para feeds no âmbito da organização, o valor deve ser apenas o nome do feed.


feedDownloadExternal - Feed
string. Necessário quando internalOrExternalDownload = external && command = download.

Especifica um feed noutra organização/coleção.

Para feeds com âmbito de projeto, o valor deve ser Project/Feed, em que Project é o nome ou ID do projeto e Feed é o nome/ID do feed. Para feeds no âmbito da organização, o valor deve ser apenas o nome do feed.


packageDownloadExternal - Nome do pacote
string. Necessário quando internalOrExternalDownload = external && command = download.

Especifica o nome do pacote a transferir.


versionDownloadExternal - Versão
string. Necessário quando internalOrExternalDownload = external && command = download.

Especifica a versão do pacote ou utiliza uma variável que contém a versão a transferir. Esta entrada também pode ser uma expressão de caráter universal, como *, para obter a versão mais alta. Exemplos: 1.* obtém a versão mais alta com a versão principal 1 e 1.2.* obtém a versão de patch mais alta com a versão principal 1 e a versão secundária 2. Os padrões de carateres universais não são suportados com pacotes de pré-lançamento.


publishDirectory - Caminho para o(s) ficheiro(s) a publicar
string. Necessário quando command = publish. Valor predefinido: $(Build.ArtifactStagingDirectory).

Especifica o caminho para a lista de ficheiros a publicar.


feedsToUsePublish - Localização do feed
Alias de entrada: internalOrExternalPublish. string. Necessário quando command = publish. Valores permitidos: internal (Esta organização/coleção), external (Outra organização/coleção). Valor predefinido: internal.

Especifica um feed desta coleção ou de outra coleção nos Artefactos do Azure.


feedsToUsePublish - Localização do feed
Alias de entrada: internalOrExternalPublish. string. Necessário quando command = publish. Valores permitidos: internal (Esta conta/coleção), external (Outra conta/coleção). Valor predefinido: internal.

Especifica um feed desta coleção ou de outra coleção nos Artefactos do Azure.


publishFeedCredentials - ligação organização/coleção
Alias de entrada: externalEndpoints. string. Necessário quando internalOrExternalPublish = external && command = publish.

Especifica as credenciais a utilizar para feeds externos.


publishFeedCredentials - Ligação de conta/coleção
Alias de entrada: externalEndpoints. string. Necessário quando internalOrExternalPublish = external && command = publish.

Especifica as credenciais a utilizar para feeds externos.


vstsFeedPublish - Feed de Destino
Alias de entrada: feedListPublish. string. Necessário quando internalOrExternalPublish = internal && command = publish.

Especifica o projeto e o nome/GUID do feed para publicar.


publishPackageMetadata - Publicar metadados do pipeline
boolean. Opcional. Utilize quando command = publish && internalOrExternalPublish = internal. Valor predefinido: true.

Associa os metadados deste pipeline de compilação/versão (por exemplo, executar # e informações de código fonte) ao pacote.


vstsFeedPackagePublish - Nome do pacote
Alias de entrada: packageListPublish. string. Necessário quando internalOrExternalPublish = internal && command = publish.

Especifica um ID de pacote para publicar ou cria um novo ID de pacote se nunca tiver publicado uma versão deste pacote antes. Os nomes dos pacotes têm de ser minúsculos e só podem utilizar letras, números e travessões (-).


feedPublishExternal - Feed (ou Project/Feed se o feed tiver sido criado num projeto)
string. Necessário quando internalOrExternalPublish = external && command = publish.

Especifica o nome do feed externo no qual publicar.

Se o feed tiver sido criado num projeto, o valor deve ser Project/Feed, em que Project é o nome ou ID do projeto e Feed é o nome do feed. Se o feed não tiver sido criado num projeto, o valor deve ser apenas o nome do feed.


feedPublishExternal - Feed
string. Necessário quando internalOrExternalPublish = external && command = publish.

Especifica o nome do feed externo no qual publicar.

Se o feed tiver sido criado num projeto, o valor deve ser Project/Feed, em que Project é o nome ou ID do projeto e Feed é o nome do feed. Se o feed não tiver sido criado num projeto, o valor deve ser apenas o nome do feed.


packagePublishExternal - Nome do pacote
string. Necessário quando internalOrExternalPublish = external && command = publish.

Especifica o nome do pacote ao publicar num feed externo.


versionOption - Versão
Alias de entrada: versionPublishSelector. string. Necessário quando command = publish. Valores permitidos: major (Major seguinte), minor (Menor seguinte), patch (Patch seguinte), custom. Valor predefinido: patch.

Especifica uma estratégia de incremento de versão. O custom valor a introduzir manualmente a versão do pacote. Para novos pacotes, a primeira versão será a 1.0.0 se especificar major, 0.1.0 se especificar minor, ou 0.0.1 se especificar patch. Consulte a especificação Controlo de Versões Semântico para obter mais informações.


versionPublish - Versão personalizada
string. Necessário quando versionPublishSelector = custom && command = publish.

Especifica um esquema de versão personalizado para o pacote.


packagePublishDescription - Descrição
string. Opcional. Utilize quando command = publish.

Especifica a descrição do conteúdo do pacote e/ou as alterações efetuadas nesta versão do pacote.


verbosity - Verbosidade
string. Valores permitidos: None, , DebugTrace, Information, Warning, Error, . Critical Valor predefinido: None.

Especifica a quantidade de detalhes apresentados na saída.


verbosity - Verbosidade
string. Valores permitidos: None, , DebugTrace, Information, Warning, Error( Critical Citical). Valor predefinido: None.

Especifica a quantidade de detalhes apresentados na saída.


publishedPackageVar - Variável de Saída do Pacote
string. Opcional. Utilize quando command = publish.

Especifica um nome para a variável que irá conter o nome e a versão do pacote publicados.


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

Utilize esta tarefa para transferir ou empacotar e publicar Pacotes Universais.

O Meu Pipeline precisa de aceder a um feed num projeto diferente

Se o pipeline estiver em execução num projeto diferente do projeto que aloja o feed, tem de configurar o outro projeto para conceder acesso de leitura/escrita ao serviço de compilação. Veja Permissões de pacotes nos Pipelines do Azure para obter mais detalhes.

Exemplos

A forma mais simples de começar a utilizar a tarefa Pacote Universal é utilizar o editor de tarefas Pipelines para gerar o YAML. Em seguida, pode copiar o código gerado para o ficheiro do azure-pipelines.yml projeto. Neste exemplo, o exemplo demonstra como gerar rapidamente o YAML com um pipeline que cria uma aplicação Web progressiva (PWA) do GatsbyJS.

Os Pacotes Universais são uma forma útil de encapsular e versão de uma aplicação Web. Empacotar uma aplicação Web num Pacote Universal permite reversões rápidas para uma versão específica do seu site e elimina a necessidade de criar o site no pipeline de implementação.

Este pipeline de exemplo demonstra como obter uma ferramenta a partir de um feed no seu projeto. A tarefa Pacote Universal é utilizada para transferir a ferramenta, executar uma compilação e, novamente, utiliza a tarefa Pacote Universal para publicar todo o PWA do GatsbyJS compilado num feed como um Pacote Universal com versão.

Captura de ecrã do projeto de exemplo.

Transferir um pacote com a tarefa Pacote Universal

A segunda tarefa no projeto de exemplo utiliza a tarefa Pacote Universal para obter uma ferramenta, imagemagick, de um feed que está dentro de um projeto diferente na mesma organização. A ferramenta imagemagick é exigida pelo passo de compilação subsequente para redimensionar imagens.

  1. Adicione a tarefa Pacote Universal clicando no ícone de adição, escrevendo "universal" na caixa de pesquisa e clicando no botão Adicionar para adicionar a tarefa ao pipeline.

    Captura de ecrã a mostrar a adição da tarefa Pacote Universal.

  2. Clique na tarefa Pacote Universal recentemente adicionada e no Comando para Download.

  3. Selecione o diretório de destino a utilizar para a transferência da ferramenta.

  4. Selecione um Feed de origem que contenha a ferramenta, defina o Nome do pacote e selecione Versão da ferramenta imagemagick no Feed de origem.

    Captura de ecrã a mostrar a configuração da tarefa Pacote Universal a transferir.

  5. Depois de concluir os campos, clique em Ver YAML para ver o YAML gerado.

    Captura de ecrã a mostrar a visualização do YAML.

  6. O construtor de tarefas do Pacote Universal gera YAML simplificado que contém valores não predefinidos. Copie o YAML gerado para o ficheiro azure-pipelines.yml na raiz do repositório git do projeto.

    # Download Universal Package
    steps:
    - task: UniversalPackages@0
      displayName: 'Universal download'
      inputs:
        downloadDirectory: Application
        vstsFeed: '00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000001'
        vstsFeedPackage: imagemagick
        vstsPackageVersion: 1.0.0
    

Publicar um pacote com a tarefa Pacote Universal

O último passo neste pipeline de exemplo utiliza a tarefa Pacote Universal para carregar o Gatsby PWA pronto para produção que foi produzido pelo Run gatsby build passo para um feed como um Pacote Universal com versão. Uma vez num feed, tem uma cópia permanente do seu site completo que pode ser implementada no fornecedor de alojamento e iniciada com gatsby serveo .

  1. Adicione outra tarefa do Pacote Universal ao final do pipeline ao clicar no ícone de adição, escrever "universal" na caixa de pesquisa e clicar no botão Adicionar para adicionar a tarefa ao pipeline. Esta tarefa reúne todos os recursos prontos para produção produzidos pelo Run gatsby build passo, produz um Pacote Universal com versão e publica o pacote num feed.

    Captura de ecrã a mostrar a definição de uma tarefa do Pacote Universal para publicar.

  2. Defina o Comando como Publish.

  3. Defina Caminho para ficheiro(s) para publicar no diretório que contém o projeto do package.jsonGatsbyJS.

  4. Escolha um feed de destino, um nome de pacote e defina a sua estratégia de controlo de versões.

    Captura de ecrã a mostrar a configuração da tarefa Pacote Universal a publicar.

  5. Depois de concluir os campos necessários, clique em Ver YAML.

  6. Copie o YAML resultante para o ficheiro azure-pipelines.yml como anteriormente. O YAML para este projeto de exemplo é apresentado abaixo.

    # Publish Universal Package
    steps:
    - task: UniversalPackages@0
      displayName: 'Universal publish'
      inputs:
        command: publish
        publishDirectory: Application
        vstsFeedPublish: '00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000002' # You can also use '<projectName>/<feedName>' instead of the GUIDs
        vstsFeedPackagePublish: mygatsbysite
        packagePublishDescription: 'A test package'
    

Este exemplo demonstrou como utilizar o construtor de tarefas Pipelines para gerar rapidamente o YAML para a tarefa Pacote Universal, que pode ser colocada no seu azure-pipelines.yml ficheiro. O construtor de tarefas do Pacote Universal suporta todas as configurações avançadas que podem ser criadas com os argumentos da tarefa Pacote Universal .

Nota

A publicação de um pacote diretamente numa vista não é suportada nos Artefactos do Azure. Primeiro tem de publicar o pacote no seu feed e, em seguida, promovê-lo para uma vista.

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.144.0 ou superior
Categoria da tarefa Pacote
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.115.0 ou superior
Categoria da tarefa Pacote