Partilhar via


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

Criar um feed

  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, se quiser incluir pacotes de fontes públicas, marque a caixa de seleção Fontes upstream.

  4. Selecione Criar quando terminar.

    Captura de tela que mostra como criar um novo feed nos Serviços de DevOps do Azure.

  1. Entre no servidor de DevOps do Azure e navegue até o 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, se quiser incluir pacotes de fontes públicas, marque a caixa de seleção Fontes upstream.

  1. Selecione Criar quando terminar.

    Captura de tela que mostra como criar um novo feed no Azure DevOps Server 2022.

  1. Selecione Criar quando terminar.

    Captura de tela que mostra como criar um novo feed no Azure DevOps Server 2020.

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:

  1. Na sua máquina local, crie uma nova pasta e dê-lhe um nome.

  2. Abra uma janela de prompt de comando e navegue até a pasta que você criou.

  3. Execute o seguinte comando para criar um novo projeto de biblioteca de classes:

    dotnet new classlib
    
  4. 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>
    
  5. 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

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

  2. Selecione Conectar ao feed e, em seguida, selecione dotnet na seção NuGet .

  3. 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>
      
  1. Entre em sua coleção de DevOps do Azure 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 dotnet no painel de navegação esquerdo.

  4. Siga as instruções na seção Configuração do projeto para configurar seu arquivo nuget.config e conectar-se ao seu feed.

    Uma captura de tela que mostra como se conectar a um feed com dotnet no Azure DevOps Server 2020 e 2022.

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>

Próximos passos