Compartilhar via


Publicar pacotes NuGet em NuGet.org (Clássico/YAML)

Usando o Azure Pipelines, os desenvolvedores podem simplificar o processo de publicação de seus pacotes NuGet em feeds e registros públicos. Este artigo orientará você na publicação de seus pacotes NuGet para NuGet.org.

Pré-requisitos

Produto Requisitos
Azure DevOps - Um projeto do Azure DevOps.
- Permissões:
    – Para conceder acesso a todos os pipelines do projeto, você deve ser membro do grupo Administradores do Projeto.
    – Para criar conexões de serviço, você deve ter a função Administrador ou Criador para conexões de serviço .
NuGet.org - Uma conta do NuGet.

Criar uma chave para a API

  1. Navegue até NuGet.org e entre em sua conta.

  2. Selecione o ícone de nome de usuário e selecione chaves de API.

  3. Selecione Criar e forneça um nome para sua chave. Atribua o escopo Enviar por push novos pacotes e versão do pacote à sua chave e insira * no campo Padrão Glob para incluir todos os pacotes.

  4. Selecione Criar quando terminar.

  5. Selecione Copiar e salve sua chave de API em um local seguro.

Criar uma conexão de serviço

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

  2. Selecione ícone de engrenagemConfigurações do projeto no canto inferior esquerdo da página.

  3. Selecione NuGet e selecione Avançar.

  4. Selecione ApiKey como seu método de autenticação e defina a URL do feed como: https://api.nuget.org/v3/index.json.

  5. Insira a ApiKey criada anteriormente no campo ApiKey e forneça um nome para sua conexão de serviço.

  6. Marque a caixa de seleção Conceder permissão de acesso a todos os pipelines e, em seguida, selecione Salvar quando terminar.

Publicar pacotes

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

  2. Selecione Pipelines, selecione sua definição de pipeline e depois selecione Editar.

  3. Adicione o snippet a seguir ao pipeline do YAML. Substitua o espaço reservado pelo nome da conexão de serviço que você criou anteriormente:

    steps:
    - task: DotNetCoreCLI@2
      displayName: 'dotnet pack'
      inputs:
        command: pack
    - task: NuGetCommand@2
      displayName: 'NuGet push'
      inputs:
        command: push
        nuGetFeedType: external
        publishFeedCredentials: <NAME_OF_YOUR_SERVICE_CONNECTION>
    

Depois que o pipeline for concluído com êxito, navegue até a página pacotes em NuGet.org, em que você encontrará seu pacote publicado recentemente na parte superior.

Uma captura de tela mostrando os pacotes publicados no NuGet.org.