Publicar e baixar Pacotes Universais em Artefatos do Azure

Serviços de DevOps do Azure

Os Pacotes Universais permitem que os desenvolvedores armazenem uma ampla gama de tipos de pacotes além dos tradicionais, como NuGet, npm, pacotes Python, etc. Usando a CLI do Azure, você pode publicar e baixar Pacotes Universais diretamente da linha de comando. Embora o tamanho dos pacotes publicados possa variar, chegando a até 4 TB, eles devem sempre manter o requisito essencial de incluir um nome e número de versão. Este artigo irá guiá-lo pelas etapas para publicar e baixar Pacotes Universais do seu feed de Artefatos do Azure.

Pré-requisitos

Criar um feed

Se já tiver um feed, pode passar para a secção seguinte. Caso contrário, siga as etapas abaixo para criar um novo feed de Artefatos do Azure:

  1. Entre em sua organização do Azure DevOps e navegue até seu projeto.

  2. Selecione Artefatos e, em seguida, selecione Criar feed.

  3. Forneça um Nome descritivo para seu feed e defina sua Visibilidade (quem pode visualizar os pacotes em seu feed). Defina o Escopo do seu feed e marque a caixa de seleção Fontes upstream se quiser incluir pacotes de registros públicos.

  4. Selecione Criar quando terminar.

    Uma captura de tela mostrando como criar um novo feed.

Nota

Os feeds recém-criados designam a função Serviço de Criação do projeto como Feed e Leitor Upstream (Colaborador) por padrão.

Instalar a extensão Azure DevOps

O uso da CLI ajuda a simplificar suas tarefas. Antes de continuar, certifique-se de ter instalado a CLI do Azure (versão 2.10.1 ou superior). Além disso, precisaremos instalar a extensão Azure DevOps para gerenciar os serviços do Azure DevOps a partir da linha de comando.

  1. Execute o seguinte comando para instalar a extensão Azure DevOps:

    az extension add --name azure-devops
    
  2. Se você já tiver a extensão do Azure DevOps instalada e quiser atualizá-la para a mais recente, execute o seguinte comando:

    az extension update --name azure-devops
    

Ligar ao feed

  1. Entre em sua organização do Azure DevOps e navegue até seu projeto.

  2. Selecione Artefatos e, em seguida, selecione seu feed no menu suspenso.

  3. Selecione Conectar ao feed e, em seguida, selecione Pacotes Universais no painel de navegação esquerdo.

  4. Siga as instruções na seção Configuração do projeto para se conectar ao seu feed.

  1. Execute o seguinte comando para fazer logon na CLI do Azure:

    az login
    
  2. Execute o seguinte comando para definir seu projeto e organização como a configuração padrão da CLI:

    az devops configure --defaults project=<YOUR_PROJECT_NAME> organization=https://dev.azure.com/<YOUR_ORGANIZATION_NAME> 
    

Publicar pacotes universais

Para publicar um Pacote Universal no seu feed, você precisa fornecer um nome de pacote e um número de versão.

O nome do pacote deve estar em minúsculas, começar e terminar com letras ou números e conter apenas letras, números e traços não consecutivos, sublinhados e pontos. A versão do pacote também deve estar em minúsculas e não deve incluir metadados de compilação (+ sufixo). Consulte versionamento semântico para obter mais detalhes.

  1. Execute o seguinte comando para publicar o Pacote Universal no feed:

    • Feed com escopo da organização:

      az artifacts universal publish --organization https://dev.azure.com/<YOUR_ORGANIZATION> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <PACKAGE_DIRECTORY> --description <PACKAGE_DESCRIPTION>
      
    • Feed com escopo do projeto:

      az artifacts universal publish --organization https://dev.azure.com/<YOUR_ORGANIZATION> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <PACKAGE_DIRECTORY> --description <PACKAGE_DESCRIPTION>
      

Nota

Se a sua organização estiver a utilizar uma firewall ou um servidor proxy, certifique-se de que permite URLs de Domínio de Artefactos do Azure e endereços IP.

Ver pacotes publicados

  1. Entre em sua organização do Azure DevOps e navegue até seu projeto.

  2. Selecione Artefatos e escolha seu feed no menu suspenso. Quando o processo de publicação for concluído com sucesso, o pacote deverá estar disponível no feed.

    Uma captura de tela mostrando o Pacote Universal recém-publicado.

Baixar Pacotes Universais

Execute o seguinte comando para baixar um pacote universal específico do seu feed usando a CLI do Azure:

  • Feed com escopo da organização:

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH>
    
  • Feed com escopo do projeto:

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH>
    

Download de arquivos específicos

Se você deseja baixar apenas arquivos específicos, use o --file-filter parâmetro para buscar um subconjunto de arquivos. Consulte Referência de padrões de correspondência de arquivos para obter mais detalhes.

  • Feed com escopo da organização:

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH> --file-filter <MATCH_PATTERN>
    
  • Feed com escopo do projeto:

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH> --file-filter <MATCH_PATTERN>
    

Exemplo: Por exemplo, usar --file-filter logs/.log corresponderia a qualquer arquivo com um nome de arquivo contendo "logs" e terminando com a extensão ".log" (por exemplo, build_logs.log).

Faça o download da versão mais recente

Você pode usar curingas * para baixar a versão mais recente dos seus Pacotes Universais.

Exemplos:

  • --version '*': faça o download da versão mais recente.

  • --version '1.*': faça o download da versão mais recente com o major 1.

  • --version '1.2.*': Faça o download da versão mais recente do patch com Major 1 e Minor 2.

Nota

Padrões curinga não são suportados com versões de pré-lançamento (pacotes com um traço em seu número de versão).