Publicar e baixar Pacotes Universais no Azure Artifacts
Azure DevOps Services
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, atingindo até 4 TB, eles sempre devem manter o requisito essencial de incluir um nome e um número de versão. Este artigo orientará você pelas etapas para publicar e baixar Pacotes Universais do feed de Artefatos do Azure.
Pré-requisitos
Uma organização do Azure DevOps e um projeto. Crie uma organização ou um projeto se ainda não tiver feito isso.
Instalar a extensão do Azure DevOps versão 0.14.0 ou superior.
Criar um feed
Se você já tem um feed, pode passar para a próxima seção. Caso contrário, siga as etapas abaixo para criar um novo feed do Azure Artifacts:
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Artefatos e, em seguida, selecione Criar Feed.
Forneça um Nome descritivo para o feed e defina sua Visibilidade (quem pode visualizar pacotes no seu feed). Defina o Escopo do seu feed e, em seguida, selecione a caixa de seleção Fontes de upstream caso queira incluir pacotes de registros públicos.
Selecione Criar quando estiver terminado.
Nota
Os feeds recém-criados designam a função Serviço de Build do projeto como Feed e Leitor upstream (Colaborador) por padrão.
Instalar a extensão do Azure DevOps
Usar a CLI ajuda a simplificar suas tarefas. Antes de continuar, verifique se instalou a CLI do Azure (versão 2.10.1 ou superior). Além disso, precisaremos instalar a extensão do Azure DevOps para gerenciar os serviços do Azure DevOps na linha de comando.
Execute o seguinte comando para instalar a extensão do Azure DevOps:
az extension add --name azure-devops
Se você já tiver a extensão do Azure DevOps instalada e quiser atualizá-la para o mais recente, execute o seguinte comando:
az extension update --name azure-devops
Conectar-se ao feed
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Artefatos e, em seguida, selecione o feed no menu suspenso.
Selecione Conectar ao feed e selecione Pacotes universais no painel de navegação esquerdo.
Siga as instruções na seção Configuração do projeto para se conectar ao seu feed.
Execute o seguinte comando para fazer logon na CLI do Azure:
az login
Execute o seguinte comando para definir o projeto e a 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>
Nota
Se sua organização estiver usando um firewall ou um servidor proxy, confirme se permite URLs de domínio e endereços IP do Azure Artifacts.
Publicar pacotes universais
Para publicar um Pacote Universal no feed, você precisa fornecer um nome de pacote e um número de versão.
O nome do pacote deve estar em letras minúsculas, iniciar e terminar com letras ou números e conter apenas letras, números e traços não consecutivos, sublinhados e períodos. A versão do pacote também deve estar em letras minúsculas e não deve incluir metadados de construção com sufixo (+). Consulte Controle semântico de versão para obter mais detalhes.
Execute o seguinte comando para publicar seu Pacote Universal no feed:
Feed da organização com escopo:
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 do projeto com escopo:
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
Pacotes universais que contêm um número excepcionalmente grande de arquivos (100 K+) podem não ser publicados. Nesse caso, recomendamos agrupar os arquivos em um arquivo ZIP ou TAR para reduzir a contagem de arquivos.
Exibir pacotes publicados
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Artefatos e, em seguida, escolha seu feed no menu suspenso. Depois que o processo de publicação for concluído com êxito, seu pacote deverá estar disponível no feed.
Baixar pacotes universais
Execute o seguinte comando para baixar um pacote universal específico do feed usando a CLI do Azure:
Feed da organização com escopo:
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 do projeto com escopo:
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>
Baixar arquivos específicos
Se você quiser baixar apenas arquivos específicos, use o parâmetro --file-filter
para buscar um subconjunto de arquivos. Consulte Referência de padrões de correspondência de arquivo para obter mais detalhes.
Feed da organização com escopo:
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 do projeto com escopo:
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 terminaria com a extensão ".log" (por exemplo, build_logs.log).
Baixar a versão mais recente
Você pode usar caracteres curingas *
para baixar a versão mais recente dos seus Pacotes Universais.
Exemplos:
--version '*'
: baixe a versão mais recente.--version '1.*'
: baixe a versão mais recente com a versão principal 1.--version '1.2.*'
: baixe a versão de patch mais recente com a versão principal 1 e secundária 2.
Nota
Não há suporte para padrões de caracteres curinga com versões de pré-lançamento (pacotes com um hífen no número da versão).