DotNetCoreCLI@2 - .NET tarea Core v2

Compila, prueba, empaqueta o publica una aplicación .NET, o ejecuta un comando .NET personalizado de CLI.

Sintaxis

# .NET Core v2
# Build, test, package, or publish a .NET application, or run a custom .NET CLI command.
- task: DotNetCoreCLI@2
  inputs:
    #azureSubscription: # string. Alias: ConnectedServiceName. Azure Resource Manager connection. 
    command: 'build' # 'build' | 'push' | 'pack' | 'publish' | 'restore' | 'run' | 'test' | 'custom'. Required. Command. Default: build.
    #publishWebProjects: true # boolean. Optional. Use when command = publish. Publish web projects. Default: true.
    #projects: # string. Optional. Use when command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false. Path to project(s) or solution(s). 
    #custom: # string. Required when command = custom. Custom command. 
    #arguments: # string. Optional. Use when command = build || command = publish || command = run || command = test || command = custom. Arguments. 
    #restoreArguments: # string. Optional. Use when command = restore. Arguments. 
    #publishTestResults: true # boolean. Optional. Use when command = test. Publish test results and code coverage. Default: true.
    #testRunTitle: # string. Optional. Use when command = test. Test run title. 
    #zipAfterPublish: true # boolean. Optional. Use when command = publish. Zip published projects. Default: true.
    #modifyOutputPath: true # boolean. Optional. Use when command = publish. Add project's folder name to publish path. Default: true.
    #packagesToPush: '$(Build.ArtifactStagingDirectory)/*.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/*.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. 
    #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).
    #packDirectory: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package Folder. Default: $(Build.ArtifactStagingDirectory).
    #nobuild: false # boolean. Optional. Use when command = pack. Do not build. Default: false.
    #includesymbols: false # boolean. Optional. Use when command = pack. Include Symbols. Default: false.
    #includesource: false # boolean. Optional. Use when command = pack. Include Source. Default: false.
    #requestTimeout: '300000' # string. Set timeout for package download request. Default: 300000.
  # 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 feedsToUse = select && command = restore. Use packages from this Azure Artifacts feed. Select from the dropdown or enter [project name/]feed name. 
    #includeNuGetOrg: true # boolean. Optional. Use when feedsToUse = select && command = restore. Use packages from NuGet.org. Default: true.
    #nugetConfigPath: # string. Optional. Use when feedsToUse = config && command = restore. Path to NuGet.config. 
    #externalFeedCredentials: # string. Alias: externalEndpoints. Optional. Use when feedsToUse = config && command = restore. Credentials for feeds outside this organization/collection. 
  # Advanced
    #noCache: false # boolean. Optional. Use when command = restore. Disable local cache. Default: false.
    #restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory. 
    #verbosityRestore: 'Normal' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = restore. Verbosity. Default: Normal.
  # Advanced
    #publishPackageMetadata: true # boolean. Optional. Use when command = push && nuGetFeedType = internal. Publish pipeline metadata. Default: true.
  # Pack options
    #versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber' | 'bySemVerBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
    #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.
  # Advanced
    #buildProperties: # string. Optional. Use when command = pack. Additional build properties. 
    #verbosityPack: 'Normal' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = pack. Verbosity. Default: Normal.
  # Advanced
    #workingDirectory: # string. Optional. Use when command != restore && command != push && command != pack. Working directory.
# .NET Core v2
# Build, test, package, or publish a .NET application, or run a custom .NET CLI command.
- task: DotNetCoreCLI@2
  inputs:
    #azureSubscription: # string. Alias: ConnectedServiceName. Azure Resource Manager connection. 
    command: 'build' # 'build' | 'push' | 'pack' | 'publish' | 'restore' | 'run' | 'test' | 'custom'. Required. Command. Default: build.
    #publishWebProjects: true # boolean. Optional. Use when command = publish. Publish web projects. Default: true.
    #projects: # string. Optional. Use when command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false. Path to project(s) or solution(s). 
    #custom: # string. Required when command = custom. Custom command. 
    #arguments: # string. Optional. Use when command = build || command = publish || command = run || command = test || command = custom. Arguments. 
    #restoreArguments: # string. Optional. Use when command = restore. Arguments. 
    #publishTestResults: true # boolean. Optional. Use when command = test. Publish test results and code coverage. Default: true.
    #testRunTitle: # string. Optional. Use when command = test. Test run title. 
    #zipAfterPublish: true # boolean. Optional. Use when command = publish. Zip published projects. Default: true.
    #modifyOutputPath: true # boolean. Optional. Use when command = publish. Add project's folder name to publish path. Default: true.
    #packagesToPush: '$(Build.ArtifactStagingDirectory)/*.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/*.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. 
    #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).
    #packDirectory: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package Folder. Default: $(Build.ArtifactStagingDirectory).
    #nobuild: false # boolean. Optional. Use when command = pack. Do not build. Default: false.
    #includesymbols: false # boolean. Optional. Use when command = pack. Include Symbols. Default: false.
    #includesource: false # boolean. Optional. Use when command = pack. Include Source. Default: false.
    #requestTimeout: '300000' # string. Set timeout for package download request. Default: 300000.
  # 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 feedsToUse = select && command = restore. Use packages from this Azure Artifacts feed. Select from the dropdown or enter [project name/]feed name. 
    #includeNuGetOrg: true # boolean. Optional. Use when feedsToUse = select && command = restore. Use packages from NuGet.org. Default: true.
    #nugetConfigPath: # string. Optional. Use when feedsToUse = config && command = restore. Path to NuGet.config. 
    #externalFeedCredentials: # string. Alias: externalEndpoints. Optional. Use when feedsToUse = config && command = restore. Credentials for feeds outside this organization/collection. 
  # Advanced
    #noCache: false # boolean. Optional. Use when command = restore. Disable local cache. Default: false.
    #restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory. 
    #verbosityRestore: 'Normal' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = restore. Verbosity. Default: Normal.
  # Advanced
    #publishPackageMetadata: true # boolean. Optional. Use when command = push && nuGetFeedType = internal. Publish pipeline metadata. Default: true.
  # Pack options
    #versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
    #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.
  # Advanced
    #buildProperties: # string. Optional. Use when command = pack. Additional build properties. 
    #verbosityPack: 'Normal' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = pack. Verbosity. Default: Normal.
  # Advanced
    #workingDirectory: # string. Optional. Use when command != restore && command != push && command != pack. Working directory.
# .NET Core v2
# Build, test, package, or publish a .NET application, or run a custom .NET CLI command.
- task: DotNetCoreCLI@2
  inputs:
    command: 'build' # 'build' | 'push' | 'pack' | 'publish' | 'restore' | 'run' | 'test' | 'custom'. Required. Command. Default: build.
    #publishWebProjects: true # boolean. Optional. Use when command = publish. Publish web projects. Default: true.
    #projects: # string. Optional. Use when command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false. Path to project(s) or solution(s). 
    #custom: # string. Required when command = custom. Custom command. 
    #arguments: # string. Optional. Use when command = build || command = publish || command = run || command = test || command = custom. Arguments. 
    #restoreArguments: # string. Optional. Use when command = restore. Arguments. 
    #publishTestResults: true # boolean. Optional. Use when command = test. Publish test results and code coverage. Default: true.
    #testRunTitle: # string. Optional. Use when command = test. Test run title. 
    #zipAfterPublish: true # boolean. Optional. Use when command = publish. Zip published projects. Default: true.
    #modifyOutputPath: true # boolean. Optional. Use when command = publish. Add project's folder name to publish path. Default: true.
    #packagesToPush: '$(Build.ArtifactStagingDirectory)/*.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/*.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. 
    #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).
    #packDirectory: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package Folder. Default: $(Build.ArtifactStagingDirectory).
    #nobuild: false # boolean. Optional. Use when command = pack. Do not build. Default: false.
    #includesymbols: false # boolean. Optional. Use when command = pack. Include Symbols. Default: false.
    #includesource: false # boolean. Optional. Use when command = pack. Include Source. Default: false.
  # 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 feedsToUse = select && command = restore. Use packages from this Azure Artifacts feed. 
    #includeNuGetOrg: true # boolean. Optional. Use when feedsToUse = select && command = restore. Use packages from NuGet.org. Default: true.
    #nugetConfigPath: # string. Optional. Use when feedsToUse = config && command = restore. Path to NuGet.config. 
    #externalFeedCredentials: # string. Alias: externalEndpoints. Optional. Use when feedsToUse = config && command = restore. Credentials for feeds outside this organization/collection. 
  # Advanced
    #noCache: false # boolean. Optional. Use when command = restore. Disable local cache. Default: false.
    #restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory. 
    #verbosityRestore: 'Detailed' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = restore. Verbosity. Default: Detailed.
  # Advanced
    #publishPackageMetadata: true # boolean. Optional. Use when command = push && nuGetFeedType = internal. Publish pipeline metadata. Default: true.
  # Pack options
    #versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
    #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.
  # Advanced
    #buildProperties: # string. Optional. Use when command = pack. Additional build properties. 
    #verbosityPack: 'Detailed' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = pack. Verbosity. Default: Detailed.
  # Advanced
    #workingDirectory: # string. Optional. Use when command != restore && command != push && command != pack. Working directory.
# .NET Core v2
# Build, test, package, or publish a .NET application, or run a custom .NET CLI command.
- task: DotNetCoreCLI@2
  inputs:
    command: 'build' # 'build' | 'push' | 'pack' | 'publish' | 'restore' | 'run' | 'test' | 'custom'. Required. Command. Default: build.
    #publishWebProjects: true # boolean. Optional. Use when command = publish. Publish web projects. Default: true.
    #projects: # string. Optional. Use when command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false. Path to project(s). 
    #custom: # string. Required when command = custom. Custom command. 
    #arguments: # string. Optional. Use when command = build || command = publish || command = run || command = test || command = custom. Arguments. 
    #restoreArguments: # string. Optional. Use when command = restore. Arguments. 
    #publishTestResults: true # boolean. Optional. Use when command = test. Publish test results and code coverage. Default: true.
    #testRunTitle: # string. Optional. Use when command = test. Test run title. 
    #zipAfterPublish: true # boolean. Optional. Use when command = publish. Zip published projects. Default: true.
    #modifyOutputPath: true # boolean. Optional. Use when command = publish. Add project's folder name to publish path. Default: true.
    #packagesToPush: '$(Build.ArtifactStagingDirectory)/*.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/*.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. 
    #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).
    #packDirectory: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package Folder. Default: $(Build.ArtifactStagingDirectory).
    #nobuild: false # boolean. Optional. Use when command = pack. Do not build. Default: false.
    #includesymbols: false # boolean. Optional. Use when command = pack. Include Symbols. Default: false.
    #includesource: false # boolean. Optional. Use when command = pack. Include Source. Default: false.
  # 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 feedsToUse = select && command = restore. Use packages from this Azure Artifacts feed. 
    #includeNuGetOrg: true # boolean. Optional. Use when feedsToUse = select && command = restore. Use packages from NuGet.org. Default: true.
    #nugetConfigPath: # string. Optional. Use when feedsToUse = config && command = restore. Path to NuGet.config. 
    #externalFeedCredentials: # string. Alias: externalEndpoints. Optional. Use when feedsToUse = config && command = restore. Credentials for feeds outside this organization/collection. 
  # Advanced
    #noCache: false # boolean. Optional. Use when command = restore. Disable local cache. Default: false.
    #restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory. 
    #verbosityRestore: 'Detailed' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = restore. Verbosity. Default: Detailed.
  # Advanced
    #publishPackageMetadata: true # boolean. Optional. Use when command = push && nuGetFeedType = internal. Publish pipeline metadata. Default: true.
  # Pack options
    #versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
    #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.
  # Advanced
    #buildProperties: # string. Optional. Use when command = pack. Additional build properties. 
    #verbosityPack: 'Detailed' # '-' | 'Quiet' | 'Minimal' | 'Normal' | 'Detailed' | 'Diagnostic'. Optional. Use when command = pack. Verbosity. Default: Detailed.
  # Advanced
    #workingDirectory: # string. Optional. Use when command != restore && command != push && command != pack. Working directory.

Entradas

azureSubscription - Azure Resource Manager conexión
Alias de entrada: ConnectedServiceName. string.

Especifique una conexión de servicio Azure Resource Manager configurada con la federación de identidad de carga de trabajo para usar AzurePipelinesCredential en pruebas de integración. Para más información, consulte Uso de AzurePipelinesCredential en pruebas de integración.

Nota

Esta entrada solo admite conexiones de servicio arm configuradas para usar la federación de identidades de carga de trabajo.


command - Mandar
string. Obligatorio. Valores permitidos: build, push (inserción nuget), pack, publish, restore, run, testcustom. Valor predeterminado: build.

Comando dotnet que se va a ejecutar. Especifique custom para agregar argumentos o usar un comando que no aparece aquí.

Importante

La tarea NuGet Authenticate es la nueva forma recomendada de autenticarse con Azure Artifacts y otros repositorios NuGet. Los comandos restore y push de esta tarea de .NET Core CLI ya no aceptan nuevas funciones y solo se corrigen los errores críticos. Consulte los comentarios para obtener más información.


publishWebProjects - publicar proyectos web
boolean. Opcional. Use cuando command = publish. Valor predeterminado: true.

Si esta entrada se establece en true, se omite el valor de la propiedad projects y la tarea intenta encontrar los proyectos web en el repositorio y ejecutar el comando publish en ellos. Los proyectos web se identifican mediante la presencia de un archivo web.config o una carpeta wwwroot en el directorio. En ausencia de un archivo web.config o una carpeta wwwroot, se seleccionan proyectos que usan un SDK web, como Microsoft.NET.Sdk.Web.


projects - Ruta de acceso a proyectos o soluciones
string. Opcional. Use cuando command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false.

Ruta de acceso a los archivos .csproj o .sln que se van a usar. Puede usar caracteres comodín (por ejemplo, **/*.csproj para todos los archivos de .csproj en todas las subcarpetas). Para obtener más información, consulte la referencia de patrones de coincidencia de archivos .

Esta ruta de acceso es relativa a la raíz del repositorio, independientemente de la configuración de workingDirectory.


projects - Ruta de acceso a proyectos
string. Opcional. Use cuando command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false.

Ruta de acceso a los archivos de .csproj que se van a usar. Puede usar caracteres comodín (por ejemplo, **/*.csproj para todos los archivos de .csproj en todas las subcarpetas). Para obtener más información, consulte la referencia de patrones de coincidencia de archivos .

Esta ruta de acceso es relativa a la raíz del repositorio, independientemente de la configuración de workingDirectory.


custom - de comandos personalizados
string. Obligatorio cuando command = custom.

Comando que se va a pasar a dotnet.exe para su ejecución. Para obtener una lista completa de los comandos disponibles, consulte la documentación de la CLI de dotnet .


argumentos de
string. Opcional. Use cuando command = build || command = publish || command = run || command = test || command = custom.

Especifica los argumentos del comando seleccionado. Por ejemplo, la configuración de compilación, la carpeta de salida y el entorno de ejecución. Los argumentos dependen del comando seleccionado.

Actualmente, esta entrada solo acepta argumentos para build, publish, run, testy custom. Si desea agregar argumentos para un comando no enumerado, use custom.


argumentos de
string. Opcional. Use cuando command = restore.

Escribe los argumentos adicionales que se van a pasar al comando restore.


publishTestResults - Publicar resultados de pruebas y cobertura de código
boolean. Opcional. Use cuando command = test. Valor predeterminado: true.

Al habilitar esta opción, se generará un archivo TRX de test results en $(Agent.TempDirectory)y los resultados se publicarán en el servidor.

Para VSTest, esta opción se añade --logger trx --results-directory $(Agent.TempDirectory) a los argumentos de la línea de comandos. Para Microsoft.Testing.Platform, cuando se detecta como ejecutor de pruebas en global.json, esta opción se añade --report-trx --results-directory $(Agent.TempDirectory) a los argumentos de la línea de comandos.

La cobertura de código puede recopilarse añadiendo la --collect "Code coverage" opción (para VSTest) o --coverage (para Microsoft.Testing.Platform) a los argumentos de la línea de comandos.


testRunTitle - título de ejecución de pruebas
string. Opcional. Use cuando command = test.

Proporciona un nombre para la ejecución de pruebas.


zipAfterPublish - proyectos publicados en Zip
boolean. Opcional. Use cuando command = publish. Valor predeterminado: true.

Si esta entrada se establece en true, las carpetas creadas por el comando publish se comprimirán y eliminarán.


modifyOutputPath - Agregar el nombre de carpeta del proyecto para publicar la ruta de acceso
boolean. Opcional. Use cuando command = publish. Valor predeterminado: true.

Si esta entrada se establece en true, las carpetas creadas por el comando publish tendrán el nombre de archivo del proyecto prefijo a sus nombres de carpeta cuando la ruta de acceso de salida se especifique explícitamente en argumentos. Esto resulta útil si desea publicar varios proyectos en la misma carpeta.


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.

Puedes seleccionar un feed de Azure Artifacts y/o NuGet.org aquí, o puedes hacer commit de un archivo nuget.config en tu repositorio de código fuente y establecer su ruta usando la entrada nugetConfigPath.


vstsFeed - Usa paquetes de este feed de Azure Artifacts. Selecciona en el desplegable o introduce [nombre del proyecto/]nombre del feed.
Alias de entrada: feedRestore. string. Opcional. Use cuando feedsToUse = select && command = restore.

Incluye la fuente seleccionada en el NuGet.configgenerado. Debe tener la administración de paquetes instalada y con licencia para seleccionar una fuente aquí. projectName / feedName se usan para fuentes con ámbito de proyecto. Solo se usa FeedName para fuentes con ámbito de organización. Nota: Esto no se admite para el comando test.


vstsFeed - Usa paquetes de este feed Azure Artifacts
Alias de entrada: feedRestore. string. Opcional. Use cuando feedsToUse = select && command = restore.

Incluye la fuente seleccionada en el NuGet.configgenerado. Debe tener la administración de paquetes instalada y con licencia para seleccionar una fuente aquí. projectName / feedName se usan para fuentes con ámbito de proyecto. Solo se usa FeedName para fuentes con ámbito de organización. Nota: Esto no se admite para el comando test.


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

Incluye NuGet.org en el NuGet.configgenerado.


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

El NuGet.config del repositorio que especifica 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. Opcional. Use cuando feedsToUse = config && command = restore.

Nombre de la conexión de servicio que se va a usar para registros externos enumerados en el objeto seleccionado NuGet.config. En el caso de las fuentes dentro de la misma organización o colección, deje esta entrada en blanco; Las credenciales de la compilación se usan automáticamente.


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

Impide que NuGet use paquetes desde cachés de máquinas locales.


restoreDirectory - Directorio de destino
Alias de entrada: packagesDirectory. string. Opcional. 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 la caché de paquetes NuGet predeterminada.


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

Especifica la cantidad de detalles que se muestran en la salida del comando restore.


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

Especifica la cantidad de detalles que se muestran en la salida del comando restore.


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

Patrón que se va a coincidir o ruta de acceso a nupkg archivos que se van a cargar. Varios patrones se pueden separar por punto y coma y puede hacer que un patrón sea negativo prefijo con !. Ejemplo: **/*.nupkg;!**/*.Tests.nupkg.


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 organizaciones o colecciones). Valor predeterminado: internal.

Especifica si la fuente de destino es interna o externa.


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

Especifica una fuente hospedada en esta organización. Debe tener la administración de paquetes instalada y con licencia para seleccionar una fuente aquí.


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

Asocia los metadatos de esta canalización de compilación o versión (ejecutar #, información de código fuente) con el paquete.


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

La conexión de servicio NuGet que contiene las credenciales del servidor NuGet externo.


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

Patrón que se va a buscar .csproj o .nuspec archivos que se van a 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. Opcional. Use cuando command = pack. Valor predeterminado: $(BuildConfiguration).

Cuando se usa un archivo .csproj, esta entrada especifica la configuración que se va a empaquetar.


packDirectory - carpeta de paquetes
Alias de entrada: outputDir. string. Opcional. Use cuando command = pack. Valor predeterminado: $(Build.ArtifactStagingDirectory).

Carpeta donde se crearán los paquetes. Si esta carpeta está vacía, los paquetes se crearán junto con el archivo csproj.


nobuild - No compilar
boolean. Opcional. Use cuando command = pack. Valor predeterminado: false.

Especifica que la tarea no compilará el proyecto antes de empaquetar. Esta tarea corresponde al parámetro --no-build del comando build.


includesymbols - incluir símbolos
boolean. Opcional. Use cuando command = pack. Valor predeterminado: false.

Crea paquetes NuGet de símbolos. Esta tarea corresponde al parámetro de línea de comandos --include-symbols.


includesource - incluir de origen
boolean. Opcional. Use cuando command = pack. Valor predeterminado: false.

Incluye código fuente en el paquete. Esta tarea corresponde al parámetro de línea de comandos --include-source.


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

Esta tarea no se puede usar con proyectos a los que se hace referencia. Si elige Use the date and time, esto generará una versión SemVercompatible con formato X.Y.Z-ci-datetime donde elija X, Yy Z.

Si elige Use an environment variable, debe seleccionar una variable de entorno y asegurarse de que contiene el número de versión que desea usar.

Si elige Use the build number, usará el número de compilación para la versión del paquete. Nota: En Options, establezca el formato de número de compilación en $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r).


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.

Esta tarea no se puede usar con proyectos a los que se hace referencia. Si elige Use the date and time, esto generará una versión SemVercompatible con formato X.Y.Z-ci-datetime donde elija X, Yy Z.

Si elige Use an environment variable, debe seleccionar una variable de entorno y asegurarse de que contiene el número de versión que desea usar.

Si elige Use the build number, usará el número de compilación para la versión del paquete. Nota: En Options, establezca el formato de número de compilación en $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r).


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.


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

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


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

Especifica la cantidad de detalles que se muestran en la salida del comando pack.


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

Especifica la cantidad de detalles que se muestran en la salida del comando pack.


de directorio de trabajo de workingDirectory -
string. Opcional. Use cuando command != restore && command != push && command != pack.

Directorio de trabajo actual donde se ejecuta el script. Empty es la raíz del repositorio (compilación) o artefactos (versión), que es $(System.DefaultWorkingDirectory).


requestTimeout - Establecer el tiempo de espera de la solicitud de descarga de paquetes
string. Valor predeterminado: 300000.

Proporciona un valor de tiempo de espera para las solicitudes HTTP que realiza la tarea para obtener el paquete .NET. El valor está en milisegundos. El valor predeterminado es 300000 milisegundos (5 minutos). No puede tener más de 600000 milisegundos (10 minutos).


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

Ninguno.

Observaciones

Importante

La tarea NuGet Authenticate es la nueva forma recomendada de autenticarse con Azure Artifacts y otros repositorios NuGet. Los comandos restore y push de esta tarea de .NET Core CLI ya no aceptan nuevas funciones y solo se corrigen los errores críticos.

Uso de AzurePipelinesCredential en pruebas de integración

Las bibliotecas de identidad de Azure para .NET, C++, Go, Java, JavaScript y Python proporcionan soporte para la federación de identidad de carga de trabajo, de modo que el código ejecutado desde las tareas AzureCLI@2 y AzurePowerShell@5 puede autenticarse con Microsoft Entra ID (por ejemplo, para acceder Azure) usando la clase AzurePipelinesCredential.

Muchos clientes utilizan bibliotecas cliente de SDK de Azure en pruebas de integración invocadas desde otras tareas. Las tareas DotNetCoreCLI@2, Maven@4 y VSTest@3 pueden acceder a Azure recursos usando la clase AzurePipelinesCredential.

Puedes configurar la propiedad connectedServiceName como una conexión de servicio Azure configurada con la federación de identidad de carga de trabajo. El AzurePipelinesCredential requiere que se establezca SYSTEM_ACCESSTOKEN.

En el ejemplo siguiente se muestra la entrada connectedServiceName en la tarea DotNetCoreCLI@2. el uso de VSTest@3 y Maven@4 es similar.

- task: DotNetCoreCLI@2
  inputs:
    command: 'run'
    connectedServiceName: <Azure service connection configured with workload identity federation>
  env:
    SYSTEM_ACCESSTOKEN: $(System.AccessToken)

Para más información sobre AzurePipelinesCredential, consulte Mejorar la postura de seguridad en las conexiones de servicio Azure con AzurePipelinesCredential.

¿Por qué mi paso de compilación, publicación o prueba no puede restaurar paquetes?

La mayoría de los comandos de dotnet, incluidos build, publishy test incluyen un paso de restore implícito. Esto producirá un error en las fuentes autenticadas, incluso si ejecutó una dotnet restore correcta en un paso anterior, ya que el paso anterior habrá limpiado las credenciales que usó.

Para corregir este problema, agregue la marca --no-restore al cuadro de texto Arguments.

Además, el comando test no reconoce los argumentos feedRestore o vstsFeed, y las fuentes especificadas de esta manera no se incluirán en el archivo NuGet.config generado cuando se ejecute el paso de restore implícito. Se recomienda usar un paso de dotnet restore explícito para restaurar paquetes. El comando restore respeta los argumentos feedRestore y vstsFeed.

¿Por qué recibo advertencias de NU1507 con de asignación de origen de paquetes aunque al compilar en mi máquina no tiene advertencias?

Los distintos comandos que realizan una restauración de NuGet o acceden a una fuente de NuGet crean un archivo de NuGet.config temporal especial que agrega la autenticación de NuGet para fuentes NuGet de artefactos de Azure. La manera en que esto se hace está en conflicto con el esquema que usa la asignación de origen de paquetes para asignar los paquetes a los orígenes y interrumpe la configuración de Mappin de origen del paquete en el archivo NuGet.config del repositorio. Para solucionar este conflicto, puede usar la tarea autenticar nuGet de para autenticarse y, después, el comando personalizado para invocar el comando dotnet deseado sin la modificación del .

# Authenticate Azure DevOps NuGet feed
- task: NuGetAuthenticate@1
  displayName: 'Authenticate Azure DevOps NuGet feed'

# Restore project
- task: DotNetCoreCLI@2
  inputs:
    command: 'custom'
    custom: 'restore'

# Build project
- task: DotNetCoreCLI@2
  inputs:
    command: 'custom'
    custom: 'build'
    arguments: '--no-restore'

¿Por qué debo hacer el registro en un NuGet.config?

La comprobación de un NuGet.config en el control de código fuente garantiza que un fragmento de información clave necesario para compilar el proyecto (la ubicación de sus paquetes) está disponible para todos los desarrolladores que desproteten el código.

Sin embargo, en situaciones en las que un equipo de desarrolladores trabaja en una amplia variedad de proyectos, también es posible añadir una Azure Artifacts feed al NuGet.config global en la máquina de cada desarrollador. En estas situaciones, el uso de la opción Feeds I select here en la tarea NuGet replica esta configuración.

Solución de problemas

El proyecto que usa Entity Framework ha dejado de funcionar en agentes hospedados

.NET Core no tiene Entity Framework (EF) integrado. Tendrás que instalar EF antes de empezar la ejecución o añadir global.json al proyecto con .NET versión requerida del SDK Core. Esto garantizará que el SDK correcto se use para compilar el proyecto de EF. Si la versión necesaria no está presente en el equipo, agregue la tarea UseDotNetV2 a la canalización para instalar la versión necesaria. Para más información, consulta Obtén el tiempo de ejecución Entity Framework Core.

Ejemplos

  • ejemplos de compilación de
  • ejemplos de inserción de
  • ejemplos de inserción de
  • ejemplos de Pack
  • Ejemplos de publicación
  • ejemplos de restauración de
  • ejemplos de pruebas de

ejemplos de compilación de

Compilación de un proyecto

# Build project
- task: DotNetCoreCLI@2
  inputs:
    command: 'build'

Compilar varios proyectos

# Build multiple projects
- task: DotNetCoreCLI@2
  inputs:
    command: 'build'
    projects: |
      src/proj1/proj1.csproj 
      src/proj2/proj2.csproj 
      src/other/other.sln    # Pass a solution instead of a csproj.

ejemplos de inserción de

Inserción de paquetes NuGet en la fuente interna

# Push non test NuGet packages from a build to internal organization Feed
- task: DotNetCoreCLI@2
  inputs:
    command: 'push'
    searchPatternPush: '$(Build.ArtifactStagingDirectory)/*.nupkg;!$(Build.ArtifactStagingDirectory)/*.Tests.nupkg'
    feedPublish: 'FabrikamFeed'

Inserción de paquetes NuGet en una fuente externa

# Push all NuGet packages from a build to external Feed
- task: DotNetCoreCLI@2
  inputs:
    command: 'push'
    nugetFeedType: 'external'
    externalEndPoint: 'MyNuGetServiceConnection'

ejemplos de Pack

Empaquetar un NuGetPackage en un directorio de salida específico

# Pack a NuGet package to a test directory
- task: DotNetCoreCLI@2
  inputs: 
    command: 'pack'
    outputDir: '$(Build.ArtifactStagingDirectory)/TestDir'

Empaquetar un paquete de símbolos

# Pack a symbol package along with NuGet package
- task: DotNetCoreCLI@2
  inputs: 
    command: 'pack'
    includesymbols: true

Ejemplos de publicación

Publicación de proyectos en la carpeta especificada

# Publish projects to specified folder.
- task: DotNetCoreCLI@2
  displayName: 'dotnet publish'
  inputs:
    command: 'publish'
    publishWebProjects: false
    arguments: '-o $(Build.ArtifactStagingDirectory)/Output'
    zipAfterPublish: true
    modifyOutputPath: true

ejemplos de restauración de

#Restore packages with the .NET Core CLI task
- task: DotNetCoreCLI@2
  displayName: 'dotnet restore'
  inputs:
    command: 'restore'
    feedsToUse: 'select'
    feedRestore: 'projectName/feedName'
    projects: '**/*.csproj'
    includeNuGetOrg: true

ejemplos de pruebas de

Ejecución de pruebas en el repositorio

# Run tests and auto publish test results.
- task: DotNetCoreCLI@2
  inputs:
    command: 'test'

Requisitos

Requisito Descripción
Tipos de canalización YAML, compilación clásica, versión clásica
Se ejecuta en Agente
Demands Ninguno
Funcionalidades Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
Restricciones de comandos Cualquier
Variables configurables Cualquier
Versión del agente 2.144.0 o superior
Categoría de tarea Construir
Requisito Descripción
Tipos de canalización YAML, compilación clásica, versión clásica
Se ejecuta en Agente
Demands Ninguno
Funcionalidades Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
Restricciones de comandos Cualquier
Variables configurables Cualquier
Versión del agente 2.115.0 o superior
Categoría de tarea Construir