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
Navegue até NuGet.org e entre em sua conta.
Selecione o ícone de nome de usuário e selecione chaves de API.
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.Selecione Criar quando terminar.
Selecione Copiar e salve sua chave de API em um local seguro.
Criar uma conexão de serviço
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Configurações do projeto no canto inferior esquerdo da página.
Selecione NuGet e selecione Avançar.
Selecione ApiKey como seu método de autenticação e defina a URL do feed como:
https://api.nuget.org/v3/index.json
.Insira a ApiKey criada anteriormente no campo ApiKey e forneça um nome para sua conexão de serviço.
Marque a caixa de seleção Conceder permissão de acesso a todos os pipelines e, em seguida, selecione Salvar quando terminar.
Publicar pacotes
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Pipelines, selecione sua definição de pipeline e depois selecione Editar.
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.