DotNetCoreCLI@2 - Tâche .NET Core v2

Générez, testez, ajoutez au package ou publiez une application dotnet, ou exécutez une commande dotnet personnalisée.

Générez, testez, ajoutez au package ou publiez une application dotnet, ou exécutez une commande dotnet personnalisée. Pour les commandes de package, prend en charge les flux NuGet.org et authentifiés tels que Package Management et MyGet.

Important

La tâche Authentification NuGet est la nouvelle méthode recommandée pour s’authentifier auprès d’Azure Artifacts et d’autres dépôts NuGet. Les restore commandes et push de cette tâche CLI .NET Core ne prennent plus de nouvelles fonctionnalités et seuls les bogues critiques sont résolus. Pour plus d’informations, consultez les remarques.

Syntax

# .NET Core v2
# Build, test, package, or publish a dotnet application, or run a custom dotnet 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 selectOrConfig = select && command = restore. Use packages from this Azure Artifacts 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.
    #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 && command = push. 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 && command != pack && command != push && command != restore. Working directory.
# .NET Core v2
# Build, test, package, or publish a dotnet application, or run a custom dotnet 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 selectOrConfig = select && command = restore. Use packages from this Azure Artifacts 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.
    #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 && command = push. 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 && command != pack && command != push && command != restore. Working directory.
# .NET Core v2
# Build, test, package, or publish a dotnet application, or run a custom dotnet 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. 
    #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 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 selectOrConfig = select && command = restore. Use packages from this Azure Artifacts 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.
    #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 && command = push. 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 != pack && command != push && command != restore. Working Directory.
# .NET Core v2
# Build, test, package, or publish a dotnet application, or run a custom dotnet command. For package commands, supports NuGet.org and authenticated feeds like Package Management and MyGet.
- 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. 
    #publishTestResults: true # boolean. Optional. Use when command = test. Publish test results and code coverage. Default: true.
    #zipAfterPublish: true # boolean. Optional. Use when command = publish. Zip Published Projects. Default: true.
    #modifyOutputPath: true # boolean. Optional. Use when command = publish. Add project 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.
  # 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.
    #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.
  # 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 != pack && command != push && command != restore. Working Directory.

Entrées

command - Commande
string. Obligatoire. Valeurs autorisées : build, push (push nuget), pack, publish, restore, run, , test, . custom Valeur par défaut : build.

La commande dotnet à exécuter. Spécifiez custom pour ajouter des arguments ou utiliser une commande non répertoriée ici.

Important

La tâche Authentification NuGet est la nouvelle méthode recommandée pour s’authentifier auprès d’Azure Artifacts et d’autres dépôts NuGet. Les restore commandes et push de cette tâche CLI .NET Core ne prennent plus de nouvelles fonctionnalités et seuls les bogues critiques sont résolus. Pour plus d’informations, consultez les remarques.


publishWebProjects - Publier des projets web
boolean. facultatif. Utilisez quand command = publish. Valeur par défaut : true.

Si cette entrée est définie sur true, la valeur de la projects propriété est ignorée et la tâche tente de rechercher les projets web dans le référentiel et d’exécuter la commande publish sur ceux-ci. Les projets web sont identifiés par la présence d’un web.config fichier ou d’un wwwroot dossier dans le répertoire. En l’absence d’un web.config fichier ou d’un wwwroot dossier, les projets qui utilisent un kit de développement logiciel (SDK) web, comme Microsoft.NET.Sdk.Web, sont sélectionnés.


publishWebProjects - Publier des projets web
boolean. facultatif. Utilisez quand command = publish. Valeur par défaut : true.

Si cette entrée est définie sur true, la valeur de la projects propriété est ignorée et la tâche tente de rechercher les projets web dans le référentiel et d’exécuter la commande publish sur ceux-ci. Les projets web sont identifiés par la présence d’un web.config fichier ou d’un wwwroot dossier dans le répertoire. En l’absence d’un web.config fichier ou d’un wwwroot dossier, les projets qui utilisent un kit de développement logiciel (SDK) web, comme Microsoft.NET.Sdk.Web, sont sélectionnés.


projects - Chemin d’accès aux projets ou solutions
string. facultatif. Utilisez quand command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false.

Chemin d’accès aux .csproj fichiers ou .sln à utiliser. Vous pouvez utiliser des caractères génériques (par exemple **/*.csproj , pour tous les .csproj fichiers de tous les sous-dossiers). Pour plus d’informations, consultez la référence sur les modèles de correspondance de fichiers.

Ce chemin d’accès est relatif à la racine du dépôt, quel que soit le workingDirectory paramètre.


projects - Chemin d’accès au ou aux projets
string. facultatif. Utilisez quand command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false.

Chemin d’accès aux .csproj fichiers à utiliser. Vous pouvez utiliser des caractères génériques (par exemple **/*.csproj , pour tous les .csproj fichiers de tous les sous-dossiers). Pour plus d’informations, consultez la référence sur les modèles de correspondance de fichiers.

Ce chemin d’accès est relatif à la racine du dépôt, quel que soit le workingDirectory paramètre.


custom - Commande personnalisée
string. Nécessaire lorsque command = custom.

Commande à dotnet.exe laquelle passer pour l’exécution. Pour obtenir la liste complète des commandes disponibles, consultez la documentation de l’interface CLI dotnet.


arguments - Arguments
string. facultatif. Utilisez quand command = build || command = publish || command = run || command = test || command = custom.

Spécifie les arguments de la commande sélectionnée. Par exemple, la configuration de build, le dossier de sortie et le runtime. Les arguments dépendent de la commande sélectionnée.

Cette entrée accepte actuellement uniquement les arguments pour build, publish, run, testet custom. Si vous souhaitez ajouter des arguments pour une commande non répertoriée, utilisez custom.


restoreArguments - Arguments
string. facultatif. Utilisez quand command = restore.

Écrit les arguments supplémentaires à passer à la restore commande .


publishTestResults - Publier les résultats des tests et la couverture du code
boolean. facultatif. Utilisez quand command = test. Valeur par défaut : true.

L’activation de cette option génère un test results fichier TRX dans $(Agent.TempDirectory), et les résultats sont publiés sur le serveur.

Cette option s’ajoute --logger trx --results-directory $(Agent.TempDirectory) aux arguments de la ligne de commande.

La couverture du code peut être collectée en ajoutant l’option --collect "Code coverage" aux arguments de ligne de commande.


testRunTitle - Titre de la série de tests
string. facultatif. Utilisez quand command = test.

Fournit un nom pour la série de tests.


zipAfterPublish - Projets zip publiés
boolean. facultatif. Utilisez quand command = publish. Valeur par défaut : true.

Si cette entrée est définie sur true, les dossiers créés par la commande publish sont compressés et supprimés.


zipAfterPublish - Projets zip publiés
boolean. facultatif. Utilisez quand command = publish. Valeur par défaut : true.

Si cette entrée est définie sur true, le dossier créé par la commande publish est compressé et supprimé.


modifyOutputPath - Ajouter le nom du dossier du projet pour le chemin de publication
boolean. facultatif. Utilisez quand command = publish. Valeur par défaut : true.

Si cette entrée a la truevaleur , le nom du fichier projet est préfixé aux dossiers créés par la commande publish lorsque le chemin de sortie est spécifié explicitement dans les arguments. Cela est utile si vous souhaitez publier plusieurs projets dans le même dossier.


modifyOutputPath - Ajouter le nom du projet au chemin d’accès de publication
boolean. facultatif. Utilisez quand command = publish. Valeur par défaut : true.

Si cette entrée a la truevaleur , le nom du fichier projet est préfixé aux dossiers créés par la commande publish lorsque le chemin de sortie est spécifié explicitement dans les arguments. Cela est utile si vous souhaitez publier plusieurs projets dans le même dossier.


feedsToUse - Flux à utiliser
Alias d’entrée : selectOrConfig. string. Nécessaire lorsque command = restore. Valeurs autorisées : select (Flux que je sélectionne ici), config (Flux dans mon NuGet.config). Valeur par défaut : select.

Vous pouvez sélectionner un flux à partir d’Azure Artifacts et/ou NuGet.org ici, ou vous pouvez valider un nuget.config fichier dans votre référentiel de code source et définir son chemin à l’aide de l’entrée nugetConfigPath .


vstsFeed - Utiliser des packages de ce flux Azure Artifacts
Alias d’entrée : feedRestore. string. facultatif. Utilisez quand selectOrConfig = select && command = restore.

Inclut le flux sélectionné dans le généré NuGet.config. Vous devez avoir installé La gestion des packages et disposer d’une licence pour sélectionner un flux ici. projectName/feedName sont utilisés pour les flux délimités par le projet. Est utilisé uniquement FeedName pour les flux de portée organization. Remarque : cette option n’est pas prise en charge pour la commande de test.


vstsFeed - Utiliser des packages de ce flux Azure Artifacts/TFS
Alias d’entrée : feedRestore. string. facultatif. Utilisez quand selectOrConfig = select && command = restore.

Inclut le flux sélectionné dans le généré NuGet.config. Vous devez avoir installé La gestion des packages et disposer d’une licence pour sélectionner un flux ici. projectName/feedName sont utilisés pour les flux délimités par le projet. Est utilisé uniquement FeedName pour les flux de portée organization. Remarque : cette option n’est pas prise en charge pour la commande de test.


includeNuGetOrg - Utiliser des packages de NuGet.org
boolean. facultatif. Utilisez quand selectOrConfig = select && command = restore. Valeur par défaut : true.

Inclut NuGet.org dans le généré NuGet.config.


nugetConfigPath - Chemin d’accès à NuGet.config
string. facultatif. Utilisez quand selectOrConfig = config && command = restore.

dans NuGet.config votre dépôt qui spécifie les flux à partir desquels restaurer les packages.


externalFeedCredentials - Informations d’identification pour les flux en dehors de cette organization/collection
Alias d’entrée : externalEndpoints. string. facultatif. Utilisez quand selectOrConfig = config && command = restore.

Informations d’identification à utiliser pour les registres externes situés dans le sélectionné NuGet.config. Pour les flux de cette organization/collection, laissez cette entrée vide ; les informations d’identification de la build sont utilisées automatiquement.


noCache - Désactiver le cache local
boolean. facultatif. Utilisez quand command = restore. Valeur par défaut : false.

Empêche NuGet d’utiliser des packages des caches de machines locales.


restoreDirectory - Répertoire de destination
Alias d’entrée : packagesDirectory. string. facultatif. Utilisez quand command = restore.

Spécifie le dossier dans lequel les packages sont installés. Si aucun dossier n’est spécifié, les packages sont restaurés dans le cache de package NuGet par défaut.


verbosityRestore - Verbosité
string. facultatif. Utilisez quand command = restore. Valeurs autorisées : -, Quiet, Minimal, Normal, DiagnosticDetailed. Valeur par défaut : Detailed.

Spécifie la quantité de détails affichée dans la sortie de la commande restore.


packagesToPush - Chemin d’accès au ou aux packages NuGet à publier
Alias d’entrée : searchPatternPush. string. Nécessaire lorsque command = push. Valeur par défaut : $(Build.ArtifactStagingDirectory)/*.nupkg.

Modèle à faire correspondre ou chemin d’accès aux nupkg fichiers à charger. Plusieurs modèles peuvent être séparés par un point-virgule, et vous pouvez rendre un modèle négatif en le préfixant avec !. Exemple : **/*.nupkg;!**/*.Tests.nupkg.


nuGetFeedType - Emplacement du flux cible
string. Nécessaire lorsque command = push. Valeurs autorisées : internal (cette organization/collection), external (serveur NuGet externe (y compris d’autres organisations/collections)). Valeur par défaut : internal.

Spécifie si le flux cible est interne ou externe.


publishVstsFeed - Flux cible
Alias d’entrée : feedPublish. string. Nécessaire lorsque command = push && nuGetFeedType = internal.

Spécifie un flux hébergé dans cette organization. Vous devez avoir installé La gestion des packages et disposer d’une licence pour sélectionner un flux ici.


publishPackageMetadata - Publier des métadonnées de pipeline
boolean. facultatif. Utilisez quand command = push && nuGetFeedType = internal && command = push. Valeur par défaut : true.

Associe les métadonnées de ce pipeline de build/mise en production (exécuter #, informations de code source) au package.


publishFeedCredentials - Serveur NuGet
Alias d’entrée : externalEndpoint. string. Nécessaire lorsque command = push && nuGetFeedType = external.

Connexion de service NuGet qui contient les informations d’identification du serveur NuGet externe.


packagesToPack - Chemin d’accès aux fichiers csproj ou nuspec à emballer
Alias d’entrée : searchPatternPack. string. Nécessaire lorsque command = pack. Valeur par défaut : **/*.csproj.

Modèle à rechercher .csproj ou .nuspec fichiers à emballer.

Vous pouvez séparer plusieurs modèles avec un point-virgule, et vous pouvez faire un modèle négatif en le préfixant avec !. Exemple : **/*.csproj;!**/*.Tests.csproj.


configuration - Configuration à empaqueter
Alias d’entrée : configurationToPack. string. facultatif. Utilisez quand command = pack. Valeur par défaut : $(BuildConfiguration).

Lors de l’utilisation d’un .csproj fichier, cette entrée spécifie la configuration à empaqueter.


packDirectory - Dossier de package
Alias d’entrée : outputDir. string. facultatif. Utilisez quand command = pack. Valeur par défaut : $(Build.ArtifactStagingDirectory).

Dossier dans lequel les packages seront créés. Si ce dossier est vide, les packages sont créés en même temps que le csproj fichier.


nobuild - Ne pas générer
boolean. facultatif. Utilisez quand command = pack. Valeur par défaut : false.

Spécifie que la tâche ne génère pas le projet avant l’empaquetage. Cette tâche correspond au --no-build paramètre de la build commande.


includesymbols - Inclure des symboles
boolean. facultatif. Utilisez quand command = pack. Valeur par défaut : false.

Crée des packages NuGet de symbole. Cette tâche correspond au paramètre de ligne de --include-symbols commande.


includesource - Inclure la source
boolean. facultatif. Utilisez quand command = pack. Valeur par défaut : false.

Inclut le code source dans le package. Cette tâche correspond au paramètre de ligne de --include-source commande.


versioningScheme - Contrôle de version automatique des packages
string. Nécessaire lorsque command = pack. Valeurs autorisées : off, byPrereleaseNumber (Utilisez la date et l’heure), byEnvVar (Utiliser une variable d’environnement), byBuildNumber (Utilisez le numéro de build). Valeur par défaut : off.

Cette tâche ne peut pas être utilisée avec les projets référencés inclus. Si vous choisissez Use the date and time, cela génère une version conforme à SemVer au X.Y.Z-ci-datetime format où vous choisissez X, Yet Z.

Si vous choisissez Use an environment variable, vous devez sélectionner une variable d’environnement et vérifier qu’elle contient le numéro de version que vous voulez utiliser.

Si vous choisissez Use the build number, ceci utilise le numéro de build pour versionner votre package. Note: Sous Options, définissez le format de numéro de build sur $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r).


versionEnvVar - Variable d’environnement
string. Nécessaire lorsque versioningScheme = byEnvVar && command = pack.

Spécifie le nom de la variable sans $, $envou %.


majorVersion - Majeur
Alias d’entrée : requestedMajorVersion. string. Nécessaire lorsque versioningScheme = byPrereleaseNumber && command = pack. Valeur par défaut : 1.

X dans la version X.Y.Z.


minorVersion - Mineur
Alias d’entrée : requestedMinorVersion. string. Nécessaire lorsque versioningScheme = byPrereleaseNumber && command = pack. Valeur par défaut : 0.

Y dans la version X.Y.Z.


patchVersion - Patch
Alias d’entrée : requestedPatchVersion. string. Nécessaire lorsque versioningScheme = byPrereleaseNumber && command = pack. Valeur par défaut : 0.

Z dans la version X.Y.Z.


buildProperties - Propriétés de build supplémentaires
string. facultatif. Utilisez quand command = pack.

Spécifie une liste de token = value paires, séparées par des points-virgules, où chaque occurrence de $token$ dans le .nuspec fichier sera remplacée par la valeur donnée. Les valeurs peuvent être des chaînes entre des guillemets.


verbosityPack - Verbosité
string. facultatif. Utilisez quand command = pack. Valeurs autorisées : -, Quiet, Minimal, Normal, DiagnosticDetailed. Valeur par défaut : Detailed.

Spécifie la quantité de détails affichée dans la sortie de la commande pack.


workingDirectory - Répertoire de travail
string. facultatif. Utilisez quand command != restore && command != push && command != pack && command != pack && command != push && command != restore.

Répertoire de travail actuel dans lequel le script est exécuté. Empty est la racine du référentiel (build) ou des artefacts (version), qui est $(System.DefaultWorkingDirectory).


workingDirectory - Répertoire de travail
string. facultatif. Utilisez quand command != pack && command != push && command != restore.

Répertoire de travail actuel dans lequel le script est exécuté. Empty est la racine du référentiel (build) ou des artefacts (version), qui est $(System.DefaultWorkingDirectory).


Options de contrôle de la tâche

Toutes les tâches ont des options de contrôle en plus de leurs entrées de tâches. Pour plus d’informations, consultez Options de contrôle et propriétés de tâche courantes.

Variables de sortie

Aucun.

Notes

Important

La tâche Authentification NuGet est la nouvelle méthode recommandée pour s’authentifier auprès d’Azure Artifacts et d’autres dépôts NuGet. Les restore commandes et push de cette tâche CLI .NET Core ne prennent plus de nouvelles fonctionnalités et seuls les bogues critiques sont résolus.

Pourquoi l’étape de génération, de publication ou de test échoue-t-elle à restaurer des packages ?

La plupart des commandes dotnet, y compris build, publishet test incluent une étape restore implicite. Cela échoue par rapport aux flux authentifiés, même si vous avez exécuté un dotnet restore avec succès à une étape antérieure, car l’étape précédente aura nettoyé les informations d’identification qu’elle a utilisées.

Pour résoudre ce problème, ajoutez l’indicateur --no-restore à la zone de Arguments texte.

En outre, la test commande ne reconnaît pas les feedRestore arguments ou vstsFeed et les flux spécifiés de cette manière ne seront pas inclus dans le fichier généré NuGet.config lorsque l’étape implicite restore s’exécute. Il est recommandé d’utiliser une étape explicite dotnet restore pour restaurer des packages. La commande restore respecte les arguments feedRestore et vstsFeed.

Pourquoi est-ce que je reçois des avertissements NU1507 avec le mappage de source de package , alors que lors de la génération sur ma machine, il n’y a aucun avertissement ?

Les différentes commandes qui effectuent une restauration NuGet ou accèdent à un flux NuGet créent un fichier temporaire NuGet.config spécial qui ajoute l’authentification NuGet pour les flux NuGet d’artefacts Azure. La façon dont cela est effectué est en conflit avec le schéma que le mappage de source de package utilise pour mapper les packages aux sources et interrompt la configuration mappin source de package dans le NuGet.config fichier dans votre dépôt. Pour contourner ce conflit, vous pouvez utiliser la tâche NuGet Authenticate pour vous authentifier, puis la commande personnalisée pour appeler la commande dotnet souhaitée sans la NuGet.config modification.

# 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'

Pourquoi dois-je archiver un fichier NuGet.config ?

La vérification d’un NuGet.config dans le contrôle de code source garantit qu’un élément clé des informations nécessaires à la création de votre projet( l’emplacement de ses packages) est disponible pour chaque développeur qui extrait votre code.

Toutefois, pour les situations où une équipe de développeurs travaille sur un large éventail de projets, il est également possible d’ajouter un flux Azure Artifacts au global NuGet.config sur la machine de chaque développeur. Dans ces situations, l’utilisation de l’option Feeds I select here dans la tâche NuGet réplique cette configuration.

Dépannage

Le projet utilisant Entity Framework a cessé de fonctionner sur les agents hébergés

.NET Core n’a pas intégré Entity Framework (EF). Vous devrez installer EF avant de commencer l’exécution ou ajouter global.json au projet avec la version requise du SDK .NET Core. Cela garantit que le kit SDK correct est utilisé pour générer un projet EF. Si la version requise n’est pas présente sur l’ordinateur, ajoutez la UseDotNetV2 tâche à votre pipeline pour installer la version requise. Pour plus d’informations, consultez Obtenir le runtime Entity Framework Core.

Exemples

Exemples de génération

Générer un projet

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

Générer plusieurs projets

# 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.

Exemples d’envoi (Push)

Envoyer (push) des packages NuGet vers un flux interne

# 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'

Envoyer (push) des packages NuGet vers un flux externe

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

Exemples de pack

Ajouter un NuGetPackage au package dans un répertoire de sortie spécifique

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

Ajouter un package de symboles

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

Exemples de publication

Publier des projets dans le dossier spécifié

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

Exemples de restauration

#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

Exemples de test

Exécuter des tests dans votre référentiel

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

Configuration requise

Condition requise Description
Types de pipelines YAML, build classique, version classique
S’exécute sur Agent
Demandes None
Capabilities Cette tâche ne répond à aucune demande pour les tâches suivantes dans le travail.
Restrictions de commandes Quelconque
Variables settables Quelconque
Version de l’agent 2.144.0 ou version ultérieure
Catégorie de la tâche Build
Condition requise Description
Types de pipelines YAML, build classique, version classique
S’exécute sur Agent
Demandes None
Capabilities Cette tâche ne répond à aucune demande pour les tâches suivantes dans le travail.
Restrictions de commandes Quelconque
Variables settables Quelconque
Version de l’agent 2.115.0 ou version ultérieure
Catégorie de la tâche Build
Condition requise Description
Types de pipelines YAML, build classique, version classique
S’exécute sur Agent
Demandes None
Capabilities Cette tâche ne répond à aucune demande pour les tâches suivantes dans le travail.
Restrictions de commandes Quelconque
Variables settables Quelconque
Version de l’agent 2.0.0 ou supérieur
Catégorie de la tâche Build