Variáveis de ambiente da CLI do NuGet
O comportamento da CLI do nuget.exe pode ser configurado por meio de diversas variáveis de ambiente, que afetam o nuget.exe em todo o computador, usuário ou níveis de processo. As variáveis de ambiente sempre substituem quaisquer configurações nos arquivos NuGet.Config
, permitindo que os servidores de compilação alterem as configurações apropriadas sem modificar nenhum arquivo.
Em geral, as opções especificadas diretamente na linha de comando ou nos arquivos de configuração do NuGet têm precedência, mas há algumas exceções, como FORCE_NUGET_EXE_INTERACTIVE. Se você achar que o nuget.exe se comporta de forma diferente entre computadores diferentes, uma variável de ambiente pode ser a causa. Por exemplo, o Kudu de Aplicativos Web do Azure (usado durante a implantação) NUGET_XMLDOC_MODE, configurado para ignorar para acelerar o desempenho de restauração de pacotes e economizar espaço em disco.
A CLI do NuGet usa o MSBuild para ler os arquivos de projeto. Todas as variáveis de ambiente estão disponíveis como propriedades durante a avaliação do MSBuild. A lista de propriedades documentadas no pacote e restauração do NuGet e como destinos do MSBuild também pode ser definida como variáveis de ambiente.
Variável | Descrição | Comentários |
---|---|---|
http_proxy | Proxy http usado para operações HTTP do NuGet. | Seria especificado como http://<username>:<password>@proxy.com . |
no_proxy | Configura domínios para ignorar o uso de proxy. | Especificados como domínios separados por vírgula (,). |
EnableNuGetPackageRestore | Sinalize se o NuGet deve conceder consentimento implicitamente se isso for exigido pelo pacote na restauração. | O sinalizador especificado é tratado como verdadeiro ou 1, qualquer outro valor será tratado como sinalizador não definido. |
NUGET_CLI_LANGUAGE | Altera o idioma de saída nuget.exe | Disponível nas versões 6.5 e superiores. Os valores suportados são nomes locais de idiomas suportados do Visual Studio: zh-cn , zh-tw , cs-cz , en-us , es-es , fr-fr , de-de , it-it , ja-jp , ko-kr , pl-pl , pt-br , ru-ru e tr-tr . |
NUGET_EXE_NO_PROMPT | Impede que o exe solicite credenciais. | Qualquer valor, exceto nulo ou cadeia de caracteres vazia, será tratado como esse sinalizador set/true. |
NUGET_MAX_RETRY_AFTER_DELAY_SECONDS | Duração máxima entre novas tentativas quando a resposta HTTP contém o cabeçalho Retry-After | Quando NUGET_OBSERVE_RETRY_AFTER está habilitado (como é por padrão) e uma resposta HTTP contém um cabeçalho Retry-After, essa variável de ambiente define a duração máxima que será aguardada. Observe que a repetição pode fornecer uma duração (delta) ou um carimbo de data/hora (data). Se o servidor retornar um carimbo de data/hora e o relógio do computador estiver fora de sincronia com o servidor, a duração calculada poderá ser muito longa (ou negativa). |
FORCE_NUGET_EXE_INTERACTIVE | Variável de ambiente global para forçar o modo interativo. | Qualquer valor, exceto nulo ou cadeia de caracteres vazia, será tratado como esse sinalizador set/true. |
NUGET_PACKAGES | Caminho a ser usado para a pasta global-packages, conforme descrito em Gerenciando os pacotes globais e as pastas de cache. | Especificado como caminho absoluto. |
NUGET_FALLBACK_PACKAGES | Pastas de pacotes de fallback global. | Caminhos de pasta absolutos separados por ponto-e-vírgula (;). |
NUGET_HTTP_CACHE_PATH | Caminho a ser usado para a pasta http-cache, conforme descrito em Gerenciando os pacotes globais e as pastas de cache. | Especificado como caminho absoluto. |
NUGET_OBSERVE_RETRY_AFTER | Optar por não usar a mensagem de resposta HTTP Retry-After em durações de atrasos | Antes do NuGet 6.5, o NuGet tentava novamente todas as solicitações com falha com a mesma estratégia de recuo. A partir do NuGet 6.5, o NuGet usará, por padrão, o período de atraso Retry-After fornecido pelo servidor. Defina essa variável de ambiente como false para ignorar o cabeçalho de resposta Retry-After. Veja também NUGET_MAX_RETRY_AFTER_DELAY_SECONDS |
NUGET_RESTORE_MSBUILD_ARGS | Define argumentos adicionais do MSBuild. | Passe argumentos idênticos a como você os passaria para msbuild.exe. Um exemplo de configuração de uma propriedade de projeto Foo da linha de comando para o valor Bar seria /p:Foo=Bar |
NUGET_RETRY_HTTP_429 | Alterar o comportamento de repetição em respostas HTTP 429 | Antes do NuGet 6.5, o NuGet não repetia solicitações que resultassem em HTTP 429 ou 408. O valor padrão é true , e essa variável de ambiente pode ser definida como false para aceitar o comportamento NuGet mais antigo (não tentar a solicitação novamente) |
NUGET_RESTORE_MSBUILD_VERBOSITY | Define o detalhamento do log do MSBuild. | O padrão é quiet ("/v:q"). Os níveis possíveis são q[uiet], m[inimal], n[ormal], d[etailed] e diag[nostic]. |
NUGET_SHOW_STACK | Determina se a exceção completa (incluindo rastreamento de pilha) deve ser exibida ao usuário. | Especificado como true ou false (padrão). |
NUGET_UPDATEFILETIME_MAXRETRIES | Define o número de vezes que o NuGet tentará definir o carimbo de data/hora do arquivo ao extrair pacotes. | No Windows, o software antivírus pode abrir arquivos temporariamente, impedindo que o NuGet altere o carimbo de data/hora. O NuGet usa um recuo exponencial em que a duração da espera entre as tentativas é de Math.Pow(2, retryNumber) . O máximo padrão de tentativas é 9, o que significa que a duração total de espera padrão antes da falha será de aproximadamente um segundo. |
NUGET_XMLDOC_MODE | Determina como a extração do arquivo de documentação XML dos assemblies deve ser manipulada. | Os modos suportados são ignorar (não extrair arquivos de documentação XML), compactar (armazenar arquivos XML doc como um arquivo zip) ou nenhum (padrão, tratar arquivos XML doc como arquivos regulares). |
NUGET_CERT_REVOCATION_MODE | Determina como a verificação do status de revogação do certificado usado para assinar um pacote é executada quando um pacote assinado é instalado ou restaurado. Quando não for definido, o padrão será online . |
Valores possíveis on-line (padrão), off-line. Relacionados com NU3028 |
NUGET_ENABLE_ENHANCED_HTTP_RETRY | Habilita ou desabilita a repetição avançada de HTTP no NuGet. | Os valores possíveis são true (padrão) ou false . |
NUGET_ENHANCED_MAX_NETWORK_TRY_COUNT | Configura o número máximo de vezes que uma conexão HTTP deve ser tentada novamente quando as novas tentativas avançadas estão habilitadas. | Um número que representa quantas novas tentativas executar, o valor padrão é 6 . |
NUGET_ENHANCED_NETWORK_RETRY_DELAY_MILLISECONDS | Configura o tempo para aguardar em milissegundos antes de tentar novamente uma conexão HTTP quando as novas tentativas avançadas estão habilitadas. | O número de milissegundos a aguardar, o valor padrão é 1000 . |
NUGET_EXPERIMENTAL_USE_NJ_FOR_FILE_PARSING | Determina se Netwonsoft.Json é usado ou não para analisar o arquivo de ativos durante a restauração |
Os valores possíveis são true ou false (padrão). |