dotnet nuget push

Este artigo se aplica a: ✔️ SDK do .NET Core 3.1 e versões posteriores

Nome

dotnet nuget push – Envia um pacote ao servidor e os publica.

Sinopse

dotnet nuget push [<ROOT>] [-d|--disable-buffering] [--force-english-output]
    [--interactive] [-k|--api-key <API_KEY>] [-n|--no-symbols]
    [--no-service-endpoint] [-s|--source <SOURCE>] [--skip-duplicate]
    [-sk|--symbol-api-key <API_KEY>] [-ss|--symbol-source <SOURCE>]
    [-t|--timeout <TIMEOUT>]

dotnet nuget push -h|--help

Descrição

O comando dotnet nuget push envia um pacote ao servidor e os publica. O comando push usa o servidor e detalhes de credencial encontradas no arquivo de configuração do sistema NuGet ou uma cadeia de arquivos de configuração. Para obter mais informações sobre arquivos de configuração, consulte Configurando o comportamento do NuGet. A configuração de padrão do NuGet é obtida ao carregar %AppData%\NuGet\NuGet.config (Windows) ou $HOME/.nuget/NuGet/NuGet.Config (Linux/macOS) e, em seguida, carregar qualquer nuget.config ou .nuget\nuget.config da raiz da unidade e terminar no diretório atual.

O comando envia por push um pacote existente. Ele não cria um pacote. Para criar um pacote, use dotnet pack.

Argumentos

  • ROOT

    Especifica o caminho do arquivo para o pacote a ser enviado por push.

Opções

  • -d|--disable-buffering

    Desabilita o buffer durante o push para um servidor HTTP(S) a fim de reduzir o uso de memória.

  • --force-english-output

    Força a execução do aplicativo usando uma cultura invariável com base em inglês.

  • -?|-h|--help

    Imprime uma descrição de como usar o comando.

  • --interactive

    Permite que o comando pare e aguarde entrada ou ação do usuário. Por exemplo, para concluir a autenticação. Disponível desde o SDK do .NET Core 3.0.

  • -k|--api-key <API_KEY>

    A chave da API para o servidor.

  • -n|--no-symbols

    Não envia símbolos por push (mesmo se estiver presente).

  • --no-service-endpoint

    Não acrescenta "api/v2/package" à URL de origem.

  • -s|--source <SOURCE>

    Especifica a URL do servidor. O NuGet identifica uma fonte UNC ou pasta local e simplesmente copia o arquivo lá em vez de efetuá-lo por push usando HTTP.

    Importante

    Do NuGet 3.4.2 em diante, esse é um parâmetro obrigatório, a menos que o arquivo de configuração do NuGet especifique um DefaultPushSource valor. Para obter mais informações, consulte Configurando o comportamento do NuGet.

  • --skip-duplicate

    Ao enviar vários pacotes por push para um servidor HTTP(S), trata qualquer resposta de conflito 409 como um aviso para que outros pushes possam continuar.

  • -sk|--symbol-api-key <API_KEY>

    A chave da API para o servidor de símbolos.

  • -ss|--symbol-source <SOURCE>

    Especifica a URL do servidor de símbolos.

  • -t|--timeout <TIMEOUT>

    Especifica o tempo limite para enviar para um servidor em segundos. O padrão é 300 segundos (5 minutos). A especificação de 0 aplica o valor padrão.

Exemplos

  • Envie por push foo.nupkg para a fonte de push padrão especificada no arquivo de configuração do NuGet, usando uma chave de API:

    dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a
    
  • Envie por push foo.nupkg para o servidor NuGet oficial, especificando uma chave de API:

    dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -s https://api.nuget.org/v3/index.json
    
  • Envia por push foo.nupkg à https://customsource de origem de push personalizada, especificando uma chave de API:

    dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -s https://customsource/
    
  • Envie por push foo.nupkg para a fonte de push padrão especificada no arquivo de configuração do NuGet:

    dotnet nuget push foo.nupkg
    
  • Envie por push foo.symbols.nupkg para a fonte de símbolos padrão:

    dotnet nuget push foo.symbols.nupkg
    
  • Envie por push foo.nupkg para a fonte de push padrão especificada no arquivo de configuração do NuGet, com um tempo limite de 360 segundos:

    dotnet nuget push foo.nupkg --timeout 360
    
  • Envie por push todos os arquivos .nupkg no diretório atual para a fonte de push padrão especificada no arquivo de configuração do NuGet:

    dotnet nuget push "*.nupkg"
    

    Observação

    Se esse comando não funcionar, talvez seja devido a um bug que existia em versões mais antigas do SDK (SDK do .NET Core 2.1 e versões anteriores). Para corrigir esse problema, atualize sua versão do SDK ou execute o seguinte comando em vez disso: dotnet nuget push "**/*.nupkg"

    Observação

    As aspas entre aspas são necessárias para shells como bash que executam o globbing de arquivo. Para obter mais informações, confira NuGet/Home#4393.

  • Envie por push todos os arquivos .nupkg para a fonte de push padrão especificada no arquivo de configuração do NuGet, mesmo que uma resposta de conflito 409 seja retornada por um servidor HTTP(S):

    dotnet nuget push "*.nupkg" --skip-duplicate
    
  • Envie todos os arquivos .nupkg no diretório atual para um diretório de feed local:

    dotnet nuget push "*.nupkg" -s c:\mydir
    
  • Para enviar por push para o Azure Artifacts, confira a documentação por push do Azure Artifacts.

    Esse comando não armazena pacotes em uma estrutura de pasta hierárquica, o que é recomendado para otimizar o desempenho. Para obter mais informações, confira Feeds locais.