Compartir a través de


Variables de entorno de la CLI de NuGet

El comportamiento de la CLI de nuget.exe se puede configurar a través de una serie de variables de entorno, que afectan a nuget.exe en los niveles de proceso, usuario o equipo. Las variables de entorno siempre invalidan cualquier configuración de NuGet.Config los archivos, lo que permite a los servidores de compilación cambiar la configuración adecuada sin modificar ningún archivo.

En general, las opciones especificadas directamente en la línea de comandos o en los archivos de configuración de NuGet tienen prioridad, pero hay algunas excepciones, como FORCE_NUGET_EXE_INTERACTIVE. Si encuentra que nuget.exe se comporta de forma diferente entre distintos equipos, una variable de entorno podría ser la causa. Por ejemplo, Kudu de Azure Web Apps (que se usa durante la implementación) ha establecido NUGET_XMLDOC_MODE para omitir para acelerar el rendimiento de la restauración de paquetes y ahorrar espacio en disco.

La CLI de NuGet usa MSBuild para leer los archivos del proyecto. Todas las variables de entorno están disponibles como propiedades durante la evaluación de MSBuild. La lista de propiedades documentadas en el paquete nuGet y la restauración como destinos de MSBuild también se pueden establecer como variables de entorno.

Variable Description Observaciones
http_proxy Proxy HTTP usado para las operaciones HTTP de NuGet. Esto se especificaría como http://<username>:<password>@proxy.com.
no_proxy Configura los dominios para omitir el uso del proxy. Se especifica como dominios separados por coma (,).
EnableNuGetPackageRestore Marca para si NuGet debe conceder implícitamente consentimiento si lo requiere el paquete en la restauración. La marca especificada se trata como true o 1, cualquier otro valor tratado como marca no establecida.
NUGET_CLI_LANGUAGE Cambios nuget.exe idioma de salida Disponible en la versión 6.5 y versiones posteriores. Los valores admitidos son nombres de configuración regional de idiomas de Visual Studio admitidos: zh-cn, zh-tw, en-uses-escs-cz, ko-krit-itde-defr-frpl-plpt-brja-jpru-ruy .tr-tr
NUGET_EXE_NO_PROMPT Impide que el exe solicite credenciales. Cualquier valor excepto null o cadena vacía se tratará como este conjunto o true de marca.
NUGET_MAX_RETRY_AFTER_DELAY_SECONDS Duración máxima entre reintentos cuando la respuesta HTTP contiene Retry-After encabezado Cuando NUGET_OBSERVE_RETRY_AFTER está habilitado (tal como está de forma predeterminada) y una respuesta HTTP contiene un encabezado Retry-After, esta variable de entorno establece la duración máxima que se esperará. Tenga en cuenta que Retry-After puede proporcionar una duración (delta) o una marca de tiempo (fecha). Si el servidor devuelve una marca de tiempo y el reloj de la máquina no está sincronizado con el servidor, la duración calculada puede ser muy larga (o negativa).
FORCE_NUGET_EXE_INTERACTIVE Variable de entorno global para forzar el modo interactivo. Cualquier valor excepto null o cadena vacía se tratará como este conjunto o true de marca.
NUGET_PACKAGES Ruta de acceso que se va a usar para la carpeta global-packages , tal como se describe en Administración de los paquetes globales y las carpetas de caché. Especificado como ruta de acceso absoluta.
NUGET_FALLBACK_PACKAGES Carpetas de paquetes de reserva globales. Rutas de acceso de carpeta absolutas separadas por punto y coma (;).
NUGET_HTTP_CACHE_PATH Ruta de acceso que se va a usar para la carpeta http-cache , tal como se describe en Administración de los paquetes globales y las carpetas de caché. Especificado como ruta de acceso absoluta.
NUGET_OBSERVE_RETRY_AFTER No participar en el uso del mensaje de respuesta HTTP Retry-After duraciones de retraso Antes de NuGet 6.5, NuGet reintentaría todas las solicitudes con errores con la misma estrategia de retroceso. A partir de NuGet 6.5, NuGet usará de forma predeterminada el período de retraso Retry-After proporcionado por el servidor. Establezca esta variable de entorno en false para omitir el encabezado de respuesta Retry-After. Consulte también NUGET_MAX_RETRY_AFTER_DELAY_SECONDS
NUGET_RESTORE_MSBUILD_ARGS Establece argumentos adicionales de MSBuild. Pase argumentos idénticos a cómo los pasaría a msbuild.exe. Un ejemplo de cómo establecer una propiedad de proyecto Foo desde la línea de comandos en la barra de valores sería /p:Foo=Bar
NUGET_RETRY_HTTP_429 Cambio del comportamiento de reintento en respuestas HTTP 429 Antes de NuGet 6.5, NuGet no reintentaría las solicitudes que dan lugar a HTTP 429 en 408. El valor predeterminado es truey esta variable de entorno se puede establecer en false para participar en el comportamiento anterior de NuGet (no vuelva a intentar la solicitud).
NUGET_RESTORE_MSBUILD_VERBOSITY Establece el nivel de detalle del registro de MSBuild. El valor predeterminado es silencioso ("/v:q"). Valores posibles q[uiet], m[inimal], n[ormal], d[etailed], y diag[nostic].
NUGET_SHOW_STACK Determina si se debe mostrar la excepción completa (incluido el seguimiento de la pila) al usuario. Especificado como true o false (valor predeterminado).
NUGET_UPDATEFILETIME_MAXRETRIES Establece el número de veces que NuGet intentará volver a intentar establecer la marca de tiempo del archivo al extraer paquetes cuando se produjo un error en el primer intento. En el software antivirus de Windows puede abrir temporalmente archivos, lo que impide que NuGet cambie la marca de tiempo. NuGet usa un retroceso exponencial en el que la duración de espera entre los intentos es Math.Pow(2, retryNumber). Los reintentos máximos predeterminados son 9, lo que significa que la duración total de espera predeterminada antes del error será de aproximadamente un segundo.
NUGET_XMLDOC_MODE Determina cómo se deben controlar los ensamblados la extracción de archivos de documentación XML. Los modos admitidos son omitir (no extraer archivos de documentación XML), comprimir (almacenar archivos de documentos XML como un archivo ZIP) o ninguno (valor predeterminado, tratar los archivos de documentos XML como archivos normales).
NUGET_CERT_REVOCATION_MODE Determina cómo se realiza la comprobación de estado de revocación del certificado usado para firmar un paquete cuando se instala o restaura un paquete firmado. Cuando no se establece, el valor predeterminado es online. Valores posibles en línea (valor predeterminado), sin conexión. Relacionado con NU3028
NUGET_ENHANCED_MAX_NETWORK_TRY_COUNT Configura el número máximo de veces que se debe reintentar una conexión HTTP cuando se habilitan reintentos mejorados. Número que representa el número de reintentos que se van a realizar; el valor predeterminado es 6.
NUGET_ENHANCED_NETWORK_RETRY_DELAY_MILLISECONDS Configura la cantidad de tiempo que se espera en milisegundos antes de reintentar una conexión HTTP cuando se habilitan reintentos mejorados. Número de milsegundos que se van a esperar, el valor predeterminado es 1000.