Publicar e restaurar pacotes NuGet a partir da linha de comando (dotnet)

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

O Azure Artifacts permite que você publique e restaure seus pacotes NuGet de e para seu feed, permitindo que você os compartilhe com outras pessoas de acordo com as configurações de visibilidade do seu feed. Este guia orienta você durante a configuração do projeto para publicar ou restaurar pacotes usando a interface de linha de comando dotnet.

Pré-requisitos

Conectar-se ao feed

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

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

  3. Crie um arquivo nuget.config na mesma pasta que o arquivo csproj ou sln . Copie o seguinte trecho XML e cole-o em seu novo arquivo, substituindo os espaços reservados com as informações relevantes:

  • Feed da organização com escopo:

    <?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>
    
  • Feed do projeto com escopo:

    <?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>
    
  1. Entre no servidor de DevOps do Azure e navegue até o projeto.

  2. Selecione Artefatos e, em seguida, selecione o feed.

  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 se conectar ao seu feed.

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

Observação

dotnet não tem suporte no Azure DevOps Server 2019.

Publicar pacotes

Execute o seguinte comando para publicar um pacote no seu feed. Substitua os espaços reservados pelas informações apropriadas:

dotnet nuget push --source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json --api-key <ANY_STRING> <PACKAGE_PATH> 

Exemplo: dotnet nuget push --source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json --api-key AZ bin/MyPackage.5.0.2.nupkg

Observação

O api-key é usado apenas como um espaço reservado.

Publicar pacotes de fontes externas

  1. Crie um token de acesso pessoal (PAT) com escopo de leitura e gravação de empacotamento.

  2. Substitua o espaço reservado PERSONAL_ACCESS_TOKEN <>pelo token de acesso pessoal e execute o seguinte comando para adicionar a origem do pacote ao arquivo nuget.config. Isso adiciona seu PAT ao seu nuget.config. Certifique-se de armazenar esse arquivo com segurança e não verificá-lo no controle do código-fonte.

    dotnet nuget add source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json --name <SOURCE_NAME> --username <USER_NAME> --password <PERSONAL_ACCESS_TOKEN> --configfile <PATH_TO_NUGET_CONFIG_FILE>
    
  3. Publique seu pacote:

    dotnet nuget push --source <SOURCE_NAME> --api-key <ANY_STRING> <PACKAGE_PATH>
    

Exemplo: dotnet nuget add source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json --name MySource --username MyUserName --password MyPersonalAccessToken --configfile ./nuget.configdotnet nuget push --source MySource --api-key AZ nupkgs/mypackage.1.1.0.nupkg

Observação

Se sua organização estiver usando um firewall ou um servidor proxy, certifique-se de permitir as URLs de Domínio de Artefatos do Azure e endereços IP.

Restaurar pacotes

Execute o seguinte comando para restaurar seus pacotes. O --interactive sinalizador é usado para solicitar credenciais ao usuário:

dotnet restore --interactive