Publicar um pacote em um feed de Artefatos do Azure
Os Artefatos do Azure permitem que os desenvolvedores gerenciem com eficiência todas as suas dependências a partir de um único feed. Os feeds nos Artefatos do Azure servem como repositórios organizacionais para armazenar, gerenciar e compartilhar seus pacotes em sua equipe, entre organizações ou publicamente na Internet. Os feeds de Artefatos do Azure dão suporte a uma ampla variedade de tipos de pacotes, incluindo NuGet, npm, Python, Maven, Cargo e Pacotes Universais.
Este artigo orienta você pelo processo de publicação de seu primeiro pacote em um feed de Artefatos do Azure. Você também tem a opção de usar o GitHub Copilot para simplificar esse processo e explorar os recursos do GitHub Copilot Chat no Visual Studio Code.
Pré-requisitos
Crie uma organização do Azure DevOps e um projeto, se ainda não o fez.
Instale o SDK do .NET Core.
Instale o Provedor de Credenciais de Artefatos do Azure.
(Opcional) Configure o GitHub Copilot e o Visual Studio Code. Uma avaliação gratuita de 30 dias do GitHub Copilot está disponível se você ainda não se inscreveu.
Criar um feed
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 seu feed e defina sua Visibilidade (quem pode visualizar os pacotes em seu feed). Defina o Escopo do seu feed e, se quiser incluir pacotes de fontes públicas, marque a caixa de seleção Fontes upstream.
Selecione Criar quando terminar.
Entre no servidor de DevOps do Azure e navegue até o projeto.
Selecione Artefatos e, em seguida, selecione Criar feed.
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, se quiser incluir pacotes de fontes públicas, marque a caixa de seleção Fontes upstream.
Selecione Criar quando terminar.
Selecione Criar quando terminar.
Preparar o código
Siga estas etapas para criar um projeto básico de Biblioteca de Classes a partir da linha de comando, configurar os metadados do pacote e gerar um pacote NuGet:
Na sua máquina local, crie uma nova pasta e dê-lhe um nome.
Abra uma janela de prompt de comando e navegue até a pasta que você criou.
Execute o seguinte comando para criar um novo projeto de biblioteca de classes:
dotnet new classlib
Abra o arquivo csproj e adicione os metadados do pacote dentro da
<PropertyGroup>
tag . Sua estrutura de arquivos deve ser semelhante à seguinte:<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>net8.0</TargetFramework> <RootNamespace>demo_class_library</RootNamespace> <ImplicitUsings>enable</ImplicitUsings> <Nullable>enable</Nullable> <PackageId>YOUR_PACKAGE_NAME</PackageId> <Version>YOUR_PACKAGE_VERSION</Version> <Authors>YOUR_NAME</Authors> <Company>YOUR_COMPANY</Company> </PropertyGroup> </Project>
Execute o seguinte comando para empacotar seu projeto e gerar um artefato .nupkg . seu pacote NuGet é gerado no
bin\release
diretório.dotnet pack
Conectar-se a um feed
Selecione Artefatos e, em seguida, selecione seu feed no menu suspenso.
Selecione Conectar ao feed e, em seguida, selecione dotnet na seção NuGet .
Siga as instruções na configuração do Project para configurar seu arquivo nuget.config. A estrutura do seu ficheiro deve ser semelhante a esta:
Feed com escopo do projeto:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<FEED_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>
Feed com escopo da organização:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<FEED_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>
Entre em sua coleção de DevOps do Azure e navegue até seu projeto.
Selecione Artefatos e, em seguida, selecione seu feed no menu suspenso.
Selecione Conectar ao feed e, em seguida, selecione dotnet no painel de navegação esquerdo.
Siga as instruções na seção Configuração do projeto para configurar seu arquivo nuget.config e conectar-se ao seu feed.
Gorjeta
Você pode perguntar ao GitHub Copilot, "como adicionar uma nova fonte de pacote a um arquivo nuget.config existente". O Copilot irá guiá-lo através do uso do nuget sources Add
comando para adicionar o seu novo URL de origem do feed ao seu arquivo nuget.config .
Publicar pacotes
Execute o seguinte comando no diretório do projeto para publicar o pacote. A ApiKey é necessária, mas você pode usar qualquer valor de cadeia de caracteres ao publicar em um feed de Artefatos do Azure.
dotnet nuget push --source <FEED_NAME> --api-key az <PACKAGE_PATH>