Compartir a través de


NuGetCommand@2: tarea de NuGet v2

Use esta tarea para restaurar, empaquetar o insertar paquetes NuGet o ejecutar un comando NuGet. Esta tarea admite NuGet.org y fuentes autenticadas como Azure Artifacts y MyGet. Esta tarea también usa NuGet.exe y funciona con aplicaciones de .NET Framework. En el caso de las aplicaciones de .NET Core y .NET Standard, use la tarea .NET Core.

Syntax

# NuGet v2
# Restore, pack, or push NuGet packages, or run a NuGet command. Supports NuGet.org and authenticated feeds like Azure Artifacts and MyGet. Uses NuGet.exe and works with .NET Framework apps. For .NET Core and .NET Standard apps, use the .NET Core task.
- task: NuGetCommand@2
  inputs:
    command: 'restore' # 'restore' | 'pack' | 'push' | 'custom'. Required. Command. Default: restore.
    restoreSolution: '**/*.sln' # string. Alias: solution. Required when command = restore. Path to solution, packages.config, or project.json. Default: **/*.sln.
    #packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg.
    #nuGetFeedType: 'internal' # 'internal' | 'external'. Required when command = push. Target feed location. Default: internal.
    #publishVstsFeed: # string. Alias: feedPublish. Required when command = push && nuGetFeedType = internal. Target feed. 
    #allowPackageConflicts: false # boolean. Optional. Use when command = push && nuGetFeedType = internal. Allow duplicates to be skipped. Default: false.
    #publishFeedCredentials: # string. Alias: externalEndpoint. Required when command = push && nuGetFeedType = external. NuGet server. 
    #packagesToPack: '**/*.csproj' # string. Alias: searchPatternPack. Required when command = pack. Path to csproj or nuspec file(s) to pack. Default: **/*.csproj.
    #configuration: '$(BuildConfiguration)' # string. Alias: configurationToPack. Optional. Use when command = pack. Configuration to package. Default: $(BuildConfiguration).
    #packDestination: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package folder. Default: $(Build.ArtifactStagingDirectory).
    #arguments: # string. Required when command = custom. Command and arguments. 
  # Feeds and authentication
    feedsToUse: 'select' # 'select' | 'config'. Alias: selectOrConfig. Required when command = restore. Feeds to use. Default: select.
    #vstsFeed: # string. Alias: feedRestore. Optional. Use when selectOrConfig = select && command = restore. Use packages from this Azure Artifacts/TFS feed. Select from the dropdown or enter [project name/]feed name. 
    #includeNuGetOrg: true # boolean. Optional. Use when selectOrConfig = select && command = restore. Use packages from NuGet.org. Default: true.
    #nugetConfigPath: # string. Optional. Use when selectOrConfig = config && command = restore. Path to NuGet.config. 
    #externalFeedCredentials: # string. Alias: externalEndpoints. Optional. Use when selectOrConfig = config && command = restore. Credentials for feeds outside this organization/collection. 
  # Advanced
    #noCache: false # boolean. Optional. Use when command = restore. Disable local cache. Default: false.
    #disableParallelProcessing: false # boolean. Optional. Use when command = restore. Disable parallel processing. Default: false.
    #restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory. 
    #verbosityRestore: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = restore. Verbosity. Default: Detailed.
  # Advanced
    #publishPackageMetadata: true # boolean. Optional. Use when command = push && nuGetFeedType = internal. Publish pipeline metadata. Default: true.
    #verbosityPush: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = push. Verbosity. Default: Detailed.
  # Pack options
    #versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
    #includeReferencedProjects: false # boolean. Optional. Use when versioningScheme = off && command = pack. Include referenced projects. Default: false.
    #versionEnvVar: # string. Required when versioningScheme = byEnvVar && command = pack. Environment variable. 
    #majorVersion: '1' # string. Alias: requestedMajorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Major. Default: 1.
    #minorVersion: '0' # string. Alias: requestedMinorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Minor. Default: 0.
    #patchVersion: '0' # string. Alias: requestedPatchVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Patch. Default: 0.
    #packTimezone: 'utc' # 'utc' | 'local'. Optional. Use when versioningScheme = byPrereleaseNumber && command = pack. Time zone. Default: utc.
    #includeSymbols: false # boolean. Optional. Use when command = pack. Create symbols package. Default: false.
    #toolPackage: false # boolean. Optional. Use when command = pack. Tool Package. Default: false.
  # Advanced
    #buildProperties: # string. Optional. Use when command = pack. Additional build properties. 
    #basePath: # string. Optional. Use when command = pack. Base path. 
    #verbosityPack: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = pack. Verbosity. Default: Detailed.
# NuGet v2
# Restore, pack, or push NuGet packages, or run a NuGet command. Supports NuGet.org and authenticated feeds like Azure Artifacts and MyGet. Uses NuGet.exe and works with .NET Framework apps. For .NET Core and .NET Standard apps, use the .NET Core task.
- task: NuGetCommand@2
  inputs:
    command: 'restore' # 'restore' | 'pack' | 'push' | 'custom'. Required. Command. Default: restore.
    restoreSolution: '**/*.sln' # string. Alias: solution. Required when command = restore. Path to solution, packages.config, or project.json. Default: **/*.sln.
    #packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg.
    #nuGetFeedType: 'internal' # 'internal' | 'external'. Required when command = push. Target feed location. Default: internal.
    #publishVstsFeed: # string. Alias: feedPublish. Required when command = push && nuGetFeedType = internal. Target feed. 
    #allowPackageConflicts: false # boolean. Optional. Use when command = push && nuGetFeedType = internal. Allow duplicates to be skipped. Default: false.
    #publishFeedCredentials: # string. Alias: externalEndpoint. Required when command = push && nuGetFeedType = external. NuGet server. 
    #packagesToPack: '**/*.csproj' # string. Alias: searchPatternPack. Required when command = pack. Path to csproj or nuspec file(s) to pack. Default: **/*.csproj.
    #configuration: '$(BuildConfiguration)' # string. Alias: configurationToPack. Optional. Use when command = pack. Configuration to package. Default: $(BuildConfiguration).
    #packDestination: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package folder. Default: $(Build.ArtifactStagingDirectory).
    #arguments: # string. Required when command = custom. Command and arguments. 
  # Feeds and authentication
    feedsToUse: 'select' # 'select' | 'config'. Alias: selectOrConfig. Required when command = restore. Feeds to use. Default: select.
    #vstsFeed: # string. Alias: feedRestore. Optional. Use when selectOrConfig = select && command = restore. Use packages from this Azure Artifacts/TFS feed. 
    #includeNuGetOrg: true # boolean. Optional. Use when selectOrConfig = select && command = restore. Use packages from NuGet.org. Default: true.
    #nugetConfigPath: # string. Optional. Use when selectOrConfig = config && command = restore. Path to NuGet.config. 
    #externalFeedCredentials: # string. Alias: externalEndpoints. Optional. Use when selectOrConfig = config && command = restore. Credentials for feeds outside this organization/collection. 
  # Advanced
    #noCache: false # boolean. Optional. Use when command = restore. Disable local cache. Default: false.
    #disableParallelProcessing: false # boolean. Optional. Use when command = restore. Disable parallel processing. Default: false.
    #restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory. 
    #verbosityRestore: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = restore. Verbosity. Default: Detailed.
  # Advanced
    #publishPackageMetadata: true # boolean. Optional. Use when command = push && nuGetFeedType = internal. Publish pipeline metadata. Default: true.
    #verbosityPush: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = push. Verbosity. Default: Detailed.
  # Pack options
    #versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
    #includeReferencedProjects: false # boolean. Optional. Use when versioningScheme = off && command = pack. Include referenced projects. Default: false.
    #versionEnvVar: # string. Required when versioningScheme = byEnvVar && command = pack. Environment variable. 
    #majorVersion: '1' # string. Alias: requestedMajorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Major. Default: 1.
    #minorVersion: '0' # string. Alias: requestedMinorVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Minor. Default: 0.
    #patchVersion: '0' # string. Alias: requestedPatchVersion. Required when versioningScheme = byPrereleaseNumber && command = pack. Patch. Default: 0.
    #packTimezone: 'utc' # 'utc' | 'local'. Optional. Use when versioningScheme = byPrereleaseNumber && command = pack. Time zone. Default: utc.
    #includeSymbols: false # boolean. Optional. Use when command = pack. Create symbols package. Default: false.
    #toolPackage: false # boolean. Optional. Use when command = pack. Tool Package. Default: false.
  # Advanced
    #buildProperties: # string. Optional. Use when command = pack. Additional build properties. 
    #basePath: # string. Optional. Use when command = pack. Base path. 
    #verbosityPack: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = pack. Verbosity. Default: Detailed.

Inputs

command - Mandar
string. Required. Valores permitidos: restore, pack, push, custom. Valor predeterminado: restore.

Especifica el comando NuGet que se va a ejecutar. Use el valor custom para agregar argumentos o para usar un comando diferente.


restoreSolution - Ruta de acceso a la solución, packages.configo project.json
Alias de entrada: solution. string. Obligatorio cuando command = restore. Valor predeterminado: **/*.sln.

Especifica la ruta de acceso a la solución, packages.configo project.json archivo que hace referencia a los paquetes que se van a restaurar.


fuentes de feedsToUse - para usar
Alias de entrada: selectOrConfig. string. Obligatorio cuando command = restore. Valores permitidos: select (fuentes) que selecciono aquí), config (fuentes en mi NuGet.config). Valor predeterminado: select.

Especifica una fuente de Azure Artifacts o NuGet.org para que la tarea se use con el valor de select. Como alternativa, puede confirmar un archivo NuGet.config en el repositorio de código fuente y establecer su ruta de acceso como valor mediante el valor de config.


vstsFeed - Use paquetes de esta fuente de Azure Artifacts/TFS. Seleccione en la lista desplegable o escriba [nombre de proyecto/]nombre de fuente.
Alias de entrada: feedRestore. string. Optional. Use cuando selectOrConfig = select && command = restore.

Especifica la fuente seleccionada en el NuGet.configgenerado. Debe tener la administración de paquetes instalada y con licencia para especificar una fuente aquí.


vstsFeed - Uso de paquetes de esta fuente de Azure Artifacts/TFS
Alias de entrada: feedRestore. string. Optional. Use cuando selectOrConfig = select && command = restore.

Especifica la fuente seleccionada en el NuGet.configgenerado. Debe tener la administración de paquetes instalada y con licencia para especificar una fuente aquí.


includeNuGetOrg - Usar paquetes de NuGet.org
boolean. Optional. Use cuando selectOrConfig = select && command = restore. Valor predeterminado: true.

Incluye NuGet.org en el NuGet.configgenerado.


ruta de acceso de nugetConfigPath - a NuGet.config
string. Optional. Use cuando selectOrConfig = config && command = restore.

Especifica la ruta de acceso a la NuGet.config del repositorio que determina las fuentes desde las que se van a restaurar los paquetes.


externalFeedCredentials - Credenciales para fuentes fuera de esta organización o colección
Alias de entrada: externalEndpoints. string. Optional. Use cuando selectOrConfig = config && command = restore.

Especifica las credenciales que se usarán para los registros externos ubicados en el NuGet.configseleccionado. Este es el nombre de la conexión del servicio NuGet. En el caso de las fuentes de esta organización o colección, deje esto en blanco; Las credenciales de la compilación se usan automáticamente.


noCache - Deshabilitar de caché local
boolean. Optional. Use cuando command = restore. Valor predeterminado: false.

Impide que NuGet use paquetes de caché de máquinas locales cuando se establece en true.


disableParallelProcessing - Deshabilitar el procesamiento paralelo
boolean. Optional. Use cuando command = restore. Valor predeterminado: false.

Impide que NuGet instale varios paquetes en procesos paralelos cuando se establece en true.


restoreDirectory - Directorio de destino
Alias de entrada: packagesDirectory. string. Optional. Use cuando command = restore.

Especifica la carpeta en la que se instalan los paquetes. Si no se especifica ninguna carpeta, los paquetes se restauran en una carpeta packages/ junto con la solución seleccionada, packages.configo project.json.


verbosityRestore - Verbosidad
string. Optional. Use cuando command = restore. Valores permitidos: Quiet, Normal, Detailed. Valor predeterminado: Detailed.

Especifica la cantidad de detalles que se muestran en la salida.


packagesToPush - ruta de acceso a paquetes NuGet para publicar
Alias de entrada: searchPatternPush. string. Obligatorio cuando command = push. Valor predeterminado: $(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg.

Especifica el patrón que debe coincidir o la ruta de acceso a nupkg archivos que se van a cargar. Varios patrones se pueden separar mediante un punto y coma.


nuGetFeedType - ubicación de fuente de destino
string. Obligatorio cuando command = push. Valores permitidos: internal (esta organización o colección), external (servidor NuGet externo (incluidas otras cuentas o colecciones). Valor predeterminado: internal.

Especifica si la fuente de destino es una fuente o colección interna o un servidor NuGet externo.


publishVstsFeed - Feed de destino
Alias de entrada: feedPublish. string. Obligatorio cuando command = push && nuGetFeedType = internal.

Especifica una fuente hospedada en esta cuenta. Debe tener Azure Artifacts instalado y con licencia para seleccionar una fuente aquí.


publishPackageMetadata - publicación de metadatos de canalización
boolean. Optional. Use cuando command = push && nuGetFeedType = internal. Valor predeterminado: true.

Cambia el número de versión del subconjunto de paquetes modificados dentro de un conjunto de paquetes publicados continuamente.


allowPackageConflicts - Permitir que se omitan los duplicados
boolean. Optional. Use cuando command = push && nuGetFeedType = internal. Valor predeterminado: false.

Informa de que la tarea se ha realizado correctamente incluso si algunos de los paquetes se rechazan con errores de conflicto 409.

Esta opción solo está disponible actualmente en los agentes de Azure Pipelines y Windows. Si NuGet.exe encuentra un conflicto, se producirá un error en la tarea. Esta opción no funcionará y se producirá un error en la publicación si se encuentra dentro de un entorno de proxy.


publishFeedCredentials - Servidor NuGet
Alias de entrada: externalEndpoint. string. Obligatorio cuando command = push && nuGetFeedType = external.

Especifica la conexión del servicio NuGet que contiene las credenciales del servidor NuGet externo.


verbosityPush - Verbosidad
string. Optional. Use cuando command = push. Valores permitidos: Quiet, Normal, Detailed. Valor predeterminado: Detailed.

Especifica la cantidad de detalles que se muestran en la salida.


packagesToPack - ruta de acceso a csproj o archivos nuspec para empaquetar
Alias de entrada: searchPatternPack. string. Obligatorio cuando command = pack. Valor predeterminado: **/*.csproj.

Especifica el patrón que usa la tarea para buscar directorios csproj para empaquetar.

Puede separar varios patrones con un punto y coma y puede hacer que un patrón sea negativo prefijo con !. Ejemplo: **\*.csproj;!**\*.Tests.csproj.


configuración de configuration - para empaquetar
Alias de entrada: configurationToPack. string. Optional. Use cuando command = pack. Valor predeterminado: $(BuildConfiguration).

Especifica la configuración que se va a empaquetar al usar un archivo csproj.


packDestination - Carpeta de paquetes
Alias de entrada: outputDir. string. Optional. Use cuando command = pack. Valor predeterminado: $(Build.ArtifactStagingDirectory).

Especifica la carpeta donde la tarea crea paquetes. Si el valor está vacío, la tarea crea paquetes en la raíz de origen.


versioningScheme - de control automático de versiones de paquetes
string. Obligatorio cuando command = pack. Valores permitidos: off, byPrereleaseNumber (use la fecha y hora), byEnvVar (Use una variable de entorno), byBuildNumber (use el número de compilación). Valor predeterminado: off.

Aplica el control de versiones de paquetes automático en función del valor especificado. Esta cadena no se puede usar con includeReferencedProjects. Los valores permitidos son:

  • byPrereleaseNumber - Use la fecha y hora: la tarea generará una versión SemVercompatible con X.Y.Z-ci-datetime, donde especifique los valores de X, Y y Z.
  • byEnvVar - Usar una variable de entorno: la tarea usará una variable de entorno que especifique y contendrá el número de versión que desea usar.
  • byBuildNumber - Use el número de compilación: la tarea usará el número de compilación para obtener la versión del paquete.

Note

En General, establezca el formato de compilación en $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r).


includeReferencedProjects - Incluir proyectos a los que se hace referencia
boolean. Optional. Use cuando versioningScheme = off && command = pack. Valor predeterminado: false.

Incluye proyectos a los que se hace referencia como dependencias o como parte del paquete. No se puede usar con el control de versiones automático de paquetes. Si un proyecto al que se hace referencia tiene un archivo nuspec correspondiente que tiene el mismo nombre que el proyecto, ese proyecto al que se hace referencia se agrega como una dependencia. De lo contrario, el proyecto al que se hace referencia se agrega como parte del paquete. Obtenga más información sobre mediante el comando pack para la CLI de NuGet para crear paquetes NuGet.


versionEnvVar - Variable de entorno
string. Obligatorio cuando versioningScheme = byEnvVar && command = pack.

Especifica el nombre de la variable sin $, $envo %.


majorVersion - Destacado
Alias de entrada: requestedMajorVersion. string. Obligatorio cuando versioningScheme = byPrereleaseNumber && command = pack. Valor predeterminado: 1.

El X en la versión X.Y.Z.


minorVersion - Menor
Alias de entrada: requestedMinorVersion. string. Obligatorio cuando versioningScheme = byPrereleaseNumber && command = pack. Valor predeterminado: 0.

El Y en la versión X.Y.Z.


patchVersion - Parche
Alias de entrada: requestedPatchVersion. string. Obligatorio cuando versioningScheme = byPrereleaseNumber && command = pack. Valor predeterminado: 0.

El Z en la versión X.Y.Z.


packTimezone - Huso horario
string. Optional. Use cuando versioningScheme = byPrereleaseNumber && command = pack. Valores permitidos: utc, local (hora local del agente). Valor predeterminado: utc.

Especifica la zona horaria deseada que se usa para generar la versión del paquete. Se recomienda seleccionar utc si usa agentes de compilación hospedados, ya que su fecha y hora pueden diferir.


includeSymbols - crear del paquete de símbolos
boolean. Optional. Use cuando command = pack. Valor predeterminado: false.

Especifica que el paquete contiene orígenes y símbolos. Cuando se usa con un archivo .nuspec, se crea un archivo de paquete NuGet normal y el paquete de símbolos correspondiente.


toolPackage - Paquete de herramientas
boolean. Optional. Use cuando command = pack. Valor predeterminado: false.

Determina si los archivos de salida del proyecto deben estar en la carpeta de herramientas.


buildProperties - propiedades de compilación adicionales
string. Optional. Use cuando command = pack.

Especifica una lista de pares token=value, separados por punto y coma, donde cada aparición de $token$ en el archivo de .nuspec se reemplazará por el valor especificado. Los valores pueden ser cadenas entre comillas.


basePath - Ruta base
string. Optional. Use cuando command = pack.

Especifica la ruta de acceso base de los archivos definidos en el archivo nuspec.


verbosityPack - Verbosidad
string. Optional. Use cuando command = pack. Valores permitidos: Quiet, Normal, Detailed. Valor predeterminado: Detailed.

Especifica la cantidad de detalles que se muestran en la salida.


arguments - comando y argumentos
string. Obligatorio cuando command = custom.

Especifica el comando y los argumentos que se pasarán a NuGet.exe para su ejecución. Si se usa NuGet 3.5 o posterior, se usan comandos autenticados como list, restorey publish en cualquier fuente de esta organización o colección a la que el servicio de compilación de colecciones de proyectos tenga acceso se autenticará automáticamente.


Opciones de control de tareas

Todas las tareas tienen opciones de control además de sus entradas de tarea. Para obtener más información, consulte Opciones de control y propiedades de tareas comunes.

Variables de salida

None.

Remarks

Important

Si desea autenticarse con Azure Artifacts u otros repositorios de NuGet, debe usar la tarea Autenticar de NuGet en lugar de la NuGetCommand@2 tarea. La NuGetCommand@2 tarea ya no se actualiza con nuevas funciones; solo se abordan los errores críticos.

Use esta tarea para restaurar, empaquetar o insertar paquetes NuGet, o ejecutar comandos NuGet. Esta tarea usa NuGet.exe y funciona con aplicaciones de .NET Framework. Si trabaja con .NET Core o .NET Standard, use la tarea de .NET Core , que es totalmente compatible con todos los escenarios de paquetes y actualmente es compatible con dotnet.

Si el código depende de paquetes NuGet y necesita restaurar esas dependencias antes de compilar el proyecto con la tarea de compilación de Visual Studio , puede usar las tareas nugetAuthenticate y de línea de comandos para restaurar los paquetes. Coloque ambas tareas antes del paso de compilación para asegurarse de que todas las dependencias estén disponibles antes de que se inicie la compilación. Consulte Restauración de paquetes NuGet para obtener más información.

Al usar la tarea de compilación de Visual Studio , asegúrese de dejar el argumento restoreNugetPackages en blanco, ya que la opción "Restaurar paquetes NuGet" está en desuso en la tarea VSBuild@1 .

Tip

Esta versión de la tarea NuGet usa NuGet 4.1.0 de forma predeterminada. Para seleccionar una versión diferente de NuGet, use el instalador de herramientas.

Esquemas de control de versiones

Para byPrereleaseNumber, la versión se establecerá en los valores que elija para la versión principal, la versión secundaria y el parche, además de la fecha y la hora, en el formato yyyymmdd-hhmmss.

Para byEnvVar, la versión se establecerá en el valor de la variable de entorno que tiene el nombre especificado por el parámetro versionEnvVar , por ejemplo MyVersion , (no $, solo el nombre de la variable de entorno). Asegúrese de que la variable de entorno está establecida en un semVer adecuado, como 1.2.3 o 1.2.3-beta1.

Para byBuildNumber, la versión se establecerá mediante el número de compilación de la ejecución de canalización. Este es el valor especificado para la propiedad name de la canalización, que se guarda en la variable de entorno BUILD_BUILDNUMBER). Asegúrese de que el número de compilación que se usa contiene un semVer adecuado, como 1.0.$(Rev:r). Cuando se usa byBuildNumber, la tarea extraerá la versión punteada, 1.2.3.4, de la cadena de número de compilación y usará solo esa parte. El resto de la cadena se quitará. Si desea usar el número de compilación tal cual, puede usar byEnvVar como se describió anteriormente y establecer versionEnvVar en BUILD_BUILDNUMBER.

Migración desde NuGetInstaller@0 o NuGetRestore@1

NuGetInstaller@0 y NuGetRestore@1 están en desuso y debe reemplazarlos en la canalización por NuGetCommand@2.

Si usaba NuGetInstaller@0 con restoreMode: restore, configure las siguientes entradas al usar NuGetCommand@2.

entrada de NuGetCommand@2 tarea Value
command restore
restoreSolution Ruta de acceso al archivo .sln

Si usaba NuGetInstaller@0 con restoreMode: install, configure las siguientes entradas al usar NuGetCommand@2.

entrada de NuGetCommand@2 tarea Value
command custom
arguments Aspecto del comando de instalación completa en la CLI de NuGet. Por ejemplo, si desea ejecutar el equivalente de nuget install ninject -OutputDirectory c:\proj en la canalización, el parámetro arguments sería install ninject -OutputDirectory c:\proj. Si usaba el parámetro NuGetInstaller@0nuGetRestoreArgs, ahora también va en arguments.

Si usaba NuGetRestore@1, configure las siguientes entradas al usar NuGetCommand@2.

entrada de NuGetCommand@2 tarea Value
command restore
restoreSolution Ruta de acceso al archivo .sln

De forma similar al uso de NuGetRestore@1 o la opción de NuGetInstaller@0restore, NuGetCommand@2 tiene entradas para establecer la fuente, decidir entre select o config, especificar la ruta de acceso al archivo NuGet.config y usar paquetes de nuget.org.

Para obtener más información, consulte los siguientes ejemplos.

Compatibilidad con imágenes hospedadas en Ubuntu más recientes

A partir de Ubuntu 24.04, los agentes hospedados en Microsft no se enviarán con mono que es necesario para ejecutar el cliente NuGet subyacente que impulsa NuGetCommand@2. Los usuarios de esta tarea en Ubuntu deben migrar a la tarea multiplataforma admitida a largo plazo NuGetAuthenticate@1 con la CLI de .NET.

Migración a la CLI de .NET en Ubuntu

La tarea Autenticación de NuGet controlará la inserción de credenciales en los lugares necesarios para que las herramientas de cliente se autentiquen como identidad de canalización. Consulte las secciones Ejemplos y comentarios para obtener más información sobre el uso con NuGet Authenticate dotnet.

Si comandos de la CLI de dotnet no admiten su escenario, notificarlo al equipo de la CLI de .NET como un problema. Puede seguir anclar la imagen del agente a Ubuntu 22.04 o versiones anteriores. La compatibilidad con Ubuntu 22.04 continuará hasta que Ubuntu 26.04 esté disponible con carácter general, no anterior a 2026.

¿Por qué se produce un error en la canalización de compilación y se solicita la autenticación de Sign-On único (SSO)?

Se puede producir un error en las compilaciones si las credenciales han caducado. Para evitar estos errores, se recomienda usar la tarea NuGet Authenticate para reinstalar el proveedor de credenciales y actualizar automáticamente las credenciales. Esto garantiza un acceso ininterrumpido durante la ejecución de la tubería.

steps:
# Authenticate with NuGet to ensure credentials are refreshed
- task: NuGetAuthenticate@1
# Restore NuGet packages
- task: NuGetCommand@2
  inputs:
    command: 'restore'
    restoreSolution: '**/*.sln'
    feedsToUse: 'select'

Examples

Restore

Restaure todas las soluciones con paquetes de una fuente seleccionada.

# Restore from a project scoped feed in the same organization
- task: NuGetCommand@2
  inputs:
    command: 'restore'
    feedsToUse: 'select'
    vstsFeed: 'my-project/my-project-scoped-feed'
    includeNuGetOrg: false
    restoreSolution: '**/*.sln'
# Restore from an organization scoped feed in the same organization
- task: NuGetCommand@2
  inputs:
    command: 'restore'
    feedsToUse: 'select'
    vstsFeed: 'my-organization-scoped-feed'
    restoreSolution: '**/*.sln'
# Restore from a feed in a different organization
- task: NuGetCommand@2
  inputs:
    command: 'restore'
    feedsToUse: config
    nugetConfigPath: ./nuget.config
    restoreSolution: '**/*.sln'
    externalFeedCredentials: 'MyServiceConnectionName'
    noCache: true
  continueOnError: true
# Restore from feed(s) set in nuget.config
- task: NuGetCommand@2
  inputs:
    command: 'restore'
    feedsToUse: 'config'
    nugetConfigPath: 'nuget.config'

Package

Cree un paquete NuGet en la carpeta de destino.

# Package a project
- task: NuGetCommand@2
  inputs:
    command: 'pack'
    packagesToPack: '**/*.csproj'
    packDestination: '$(Build.ArtifactStagingDirectory)'

Push

Note

Los artefactos de canalización se descargan en el directorio Pipeline.Workspace y en el directorio System.ArtifactsDirectory para canalizaciones de versión clásicas. packagesToPush valor se puede establecer en $(Pipeline.Workspace)/**/*.nupkg o $(System.ArtifactsDirectory)/**/*.nupkg respectivamente.

  • Inserte o publique un paquete en una fuente definida en el NuGet.config.

    # Push a project
    - task: NuGetCommand@2
      inputs:
        command: 'push'
        packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg'
        feedsToUse: 'config'
        nugetConfigPath: '$(Build.WorkingDirectory)/NuGet.config'
    
  • Inserción o publicación de un paquete en una fuente con ámbito de organización

    # Push a project
    - task: NuGetCommand@2
      inputs:
        command: 'push'
        nuGetFeedType: 'internal'
        publishVstsFeed: 'my-organization-scoped-feed'
    
  • Insertar o publicar un paquete en una fuente con ámbito de proyecto

    # Push a project
    - task: NuGetCommand@2
      inputs:
        command: 'push'
        nuGetFeedType: 'internal'
        publishVstsFeed: 'my-project/my-project-scoped-feed'
    
  • Insertar o publicar un paquete en NuGet.org

    # Push a project
    - task: NuGetCommand@2
      inputs:
        command: 'push'
        feedsToUse: 'config'
        includeNugetOrg: 'true'
    

Custom

Ejecute cualquier otro comando nuGet además de los predeterminados: pack, push y restore.

# list local NuGet resources.
- task: NuGetCommand@2
  displayName: 'list locals'
  inputs:
    command: custom
    arguments: 'locals all -list'

Requirements

Requirement Description
Tipos de canalización YAML, compilación clásica, versión clásica
Funciona en Agente, DeploymentGroup
Demands None
Capabilities Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
Restricciones de comandos Any
Variables configurables Any
Versión del agente 2.144.0 o superior
Categoría de tarea Package
Requirement Description
Tipos de canalización YAML, compilación clásica, versión clásica
Funciona en Agente, DeploymentGroup
Demands None
Capabilities Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
Restricciones de comandos Any
Variables configurables Any
Versión del agente 2.115.0 o superior
Categoría de tarea Package