Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Compila, testa, impacchettare o pubblicare un'applicazione .NET, oppure eseguire un comando CLI .NET personalizzato.
Sintassi
# .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.
Ingressi
azureSubscription
-
Azure Resource Manager connessione
Alias di input: ConnectedServiceName.
string.
Specifica una connessione di servizio Azure Resource Manager configurata con la federazione dell'identità del carico di lavoro per utilizzare AzurePipelinesCredential nei test di integrazione. Per altre informazioni, vedere Usare AzurePipelinesCredential nei test di integrazione.
Nota
Questo input supporta solo le connessioni al servizio ARM configurate per l'uso della federazione delle identità del carico di lavoro.
command
-
Comando
string. Obbligatorio. Valori consentiti: build, push (push nuget), pack, publish, restore, run, test, custom. Valore predefinito: build
Comando dotnet da eseguire. Specificare custom per aggiungere argomenti o usare un comando non elencato qui.
Importante
Il compito NuGet Authenticate è il nuovo modo raccomandato per autenticarsi con Azure Artifacts e altri repository NuGet. I comandi restore e push di questo compito di .NET Core CLI non accettano più nuove funzionalità e vengono affrontati solo i bug critici. Per informazioni dettagliate, vedere le osservazioni.
publishWebProjects
-
Pubblicare progetti Web
boolean. Opzionale. Usare quando command = publish. Valore predefinito: true
Se questo input è impostato su true, il valore della proprietà projects viene ignorato e l'attività tenta di trovare i progetti Web nel repository ed eseguire il comando publish su di essi. I progetti Web sono identificati dalla presenza di un file web.config o di una cartella wwwroot nella directory. In assenza di un file web.config o di una cartella wwwroot, vengono selezionati progetti che utilizzano un SDK web, come Microsoft.NET.Sdk.Web.
projects
-
percorso di progetti o soluzioni
string. Opzionale. Usare quando command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false.
Percorso del .csproj o dei file di .sln da usare. È possibile usare caratteri jolly ,ad esempio **/*.csproj per tutti i file .csproj in tutte le sottocartelle. Per altre informazioni, vedere il riferimento ai criteri di corrispondenza dei file .
Questo percorso è relativo alla radice del repository indipendentemente dall'impostazione workingDirectory.
projects
-
percorso ai progetti
string. Opzionale. Usare quando command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false.
Percorso dei file di .csproj da usare. È possibile usare caratteri jolly ,ad esempio **/*.csproj per tutti i file .csproj in tutte le sottocartelle. Per altre informazioni, vedere il riferimento ai criteri di corrispondenza dei file .
Questo percorso è relativo alla radice del repository indipendentemente dall'impostazione workingDirectory.
custom
-
comando personalizzato
string. Obbligatorio quando command = custom.
Comando da passare a dotnet.exe per l'esecuzione. Per un elenco completo dei comandi disponibili, vedere la documentazione dell'interfaccia della riga di comando dotnet .
arguments
-
argomenti
string. Opzionale. Usare quando command = build || command = publish || command = run || command = test || command = custom.
Specifica gli argomenti per il comando selezionato. Ad esempio, la configurazione di compilazione, la cartella di output e il runtime. Gli argomenti dipendono dal comando selezionato.
Questo input attualmente accetta solo argomenti per build, publish, run, teste custom. Se si desidera aggiungere argomenti per un comando non elencato, usare custom.
restoreArguments
-
argomenti
string. Opzionale. Usare quando command = restore.
Scrive gli argomenti aggiuntivi da passare al comando restore.
publishTestResults
-
Pubblicare i risultati dei test e i di code coverage
boolean. Opzionale. Usare quando command = test. Valore predefinito: true
L'abilitazione di questa opzione genererà un file TRX test results in $(Agent.TempDirectory)e i risultati verranno pubblicati nel server.
Per VSTest, questa opzione si aggiunge --logger trx --results-directory $(Agent.TempDirectory) agli argomenti della riga di comando.
Per Microsoft.Testing.Platform, quando viene rilevato come test runner in global.json, questa opzione si aggiunge --report-trx --results-directory $(Agent.TempDirectory) agli argomenti della riga di comando.
La copertura del codice può essere raccolta aggiungendo l'opzione --collect "Code coverage" (per VSTest) o --coverage (per Microsoft.Testing.Platform) agli argomenti della riga di comando.
testRunTitle
-
Titolo esecuzione test
string. Opzionale. Usare quando command = test.
Fornisce un nome per l'esecuzione del test.
zipAfterPublish
-
progetti pubblicati zip
boolean. Opzionale. Usare quando command = publish. Valore predefinito: true
Se questo input è impostato su true, le cartelle create dal comando di pubblicazione verranno compresse ed eliminate.
modifyOutputPath
-
Aggiungere il nome della cartella del progetto per pubblicare il percorso
boolean. Opzionale. Usare quando command = publish. Valore predefinito: true
Se questo input è impostato su true, le cartelle create dal comando publish avranno il nome del file di progetto preceduto dai relativi nomi di cartella quando il percorso di output viene specificato in modo esplicito negli argomenti. Ciò è utile se si desidera pubblicare più progetti nella stessa cartella.
feed feedsToUse - da usare
Alias di input: selectOrConfig.
string. Obbligatorio quando command = restore. Valori consentiti: select (feed selezionati qui), config (feed nel NuGet.config). Valore predefinito: select
Puoi selezionare un feed da Azure Artifacts e/o NuGet.org qui, oppure puoi fare commit di un file nuget.config nel repository del codice sorgente e impostarne il percorso usando l'input nugetConfigPath.
vstsFeed
-
Usa i pacchetti da questo feed Azure Artifacts. Seleziona dal menu a tendina o inserisci [nome progetto/]nome feed.
Alias di input: feedRestore.
string. Opzionale. Usare quando feedsToUse = select && command = restore.
Include il feed selezionato nel NuGet.configgenerato. Per selezionare un feed, è necessario che Gestione pacchetti sia installato e concesso in licenza.
projectName
/
feedName vengono usati per i feed con ambito progetto. Solo FeedName viene usato per i feed con ambito organizzazione. Nota: questo non è supportato per il comando test.
vstsFeed
-
Usa i pacchetti da questo feed Azure Artifacts
Alias di input: feedRestore.
string. Opzionale. Usare quando feedsToUse = select && command = restore.
Include il feed selezionato nel NuGet.configgenerato. Per selezionare un feed, è necessario che Gestione pacchetti sia installato e concesso in licenza.
projectName
/
feedName vengono usati per i feed con ambito progetto. Solo FeedName viene usato per i feed con ambito organizzazione. Nota: questo non è supportato per il comando di test.
includeNuGetOrg
-
Usare pacchetti da NuGet.org
boolean. Opzionale. Usare quando feedsToUse = select && command = restore. Valore predefinito: true
Include NuGet.org nel NuGet.configgenerato.
nugetConfigPath
-
Percorso di NuGet.config
string. Opzionale. Usare quando feedsToUse = config && command = restore.
Il NuGet.config nel repository che specifica i feed da cui ripristinare i pacchetti.
externalFeedCredentials
-
Credenziali per i feed esterni a questa organizzazione/raccolta
Alias di input: externalEndpoints.
string. Opzionale. Usare quando feedsToUse = config && command = restore.
Nome della connessione al servizio da usare per i registri esterni elencati nell'oggetto selezionato NuGet.config. Per i feed all'interno della stessa organizzazione o raccolta, lasciare vuoto questo input; le credenziali della compilazione vengono usate automaticamente.
noCache
-
Disabilitare la cache locale
boolean. Opzionale. Usare quando command = restore. Valore predefinito: false
Impedisce a NuGet di usare pacchetti dalle cache del computer locale.
restoreDirectory
-
Directory di destinazione
Alias di input: packagesDirectory.
string. Opzionale. Usare quando command = restore.
Specifica la cartella in cui vengono installati i pacchetti. Se non viene specificata alcuna cartella, i pacchetti vengono ripristinati nella cache predefinita dei pacchetti NuGet.
verbosityRestore
-
Prolissità
string. Opzionale. Usare quando command = restore. Valori consentiti: -, Quiet, Minimal, Normal, Detailed, Diagnostic. Valore predefinito: Normal
Specifica la quantità di dettagli visualizzati nell'output per il comando restore.
verbosityRestore
-
Prolissità
string. Opzionale. Usare quando command = restore. Valori consentiti: -, Quiet, Minimal, Normal, Detailed, Diagnostic. Valore predefinito: Detailed
Specifica la quantità di dettagli visualizzati nell'output per il comando restore.
packagesToPush
-
percorso dei pacchetti NuGet da pubblicare
Alias di input: searchPatternPush.
string. Obbligatorio quando command = push. Valore predefinito: $(Build.ArtifactStagingDirectory)/*.nupkg
Modello di corrispondenza o percorso per nupkg file da caricare. Più modelli possono essere separati da un punto e virgola ed è possibile rendere un criterio negativo anteponendolo a !. Esempio: **/*.nupkg;!**/*.Tests.nupkg.
nuGetFeedType
-
percorso feed di destinazione
string. Obbligatorio quando command = push. Valori consentiti: internal (questa organizzazione/raccolta), external (server NuGet esterno (incluse altre organizzazioni/raccolte)). Valore predefinito: internal
Specifica se il feed di destinazione è interno o esterno.
publishVstsFeed
-
Feed di destinazione
Alias di input: feedPublish.
string. Obbligatorio quando command = push && nuGetFeedType = internal.
Specifica un feed ospitato in questa organizzazione. Per selezionare un feed, è necessario che Gestione pacchetti sia installato e concesso in licenza.
publishPackageMetadata
-
Pubblicare i metadati della pipeline
boolean. Opzionale. Usare quando command = push && nuGetFeedType = internal. Valore predefinito: true
Associa i metadati della pipeline di compilazione/versione (eseguire #, informazioni sul codice sorgente) al pacchetto.
publishFeedCredentials
-
Server NuGet
Alias di input: externalEndpoint.
string. Obbligatorio quando command = push && nuGetFeedType = external.
La connessione al servizio NuGet che contiene le credenziali del server NuGet esterno.
packagesToPack
-
percorso di file csproj o nuspec da comprimere
Alias di input: searchPatternPack.
string. Obbligatorio quando command = pack. Valore predefinito: **/*.csproj
Modello da cercare .csproj o .nuspec file da comprimere.
È possibile separare più modelli con un punto e virgola ed è possibile rendere un criterio negativo anteponendolo a !. Esempio: **/*.csproj;!**/*.Tests.csproj.
configurazione di configuration - al pacchetto
Alias di input: configurationToPack.
string. Opzionale. Usare quando command = pack. Valore predefinito: $(BuildConfiguration)
Quando si usa un file .csproj, questo input specifica la configurazione da creare nel pacchetto.
cartella del pacchetto
Alias di input: outputDir.
string. Opzionale. Usare quando command = pack. Valore predefinito: $(Build.ArtifactStagingDirectory)
Cartella in cui verranno creati i pacchetti. Se questa cartella è vuota, i pacchetti verranno creati insieme al file csproj.
nobuild
-
Non compilare
boolean. Opzionale. Usare quando command = pack. Valore predefinito: false
Specifica che l'attività non compilerà il progetto prima della compressione. Questa attività corrisponde al parametro --no-build del comando build.
includesymbols
-
includere simboli
boolean. Opzionale. Usare quando command = pack. Valore predefinito: false
Crea pacchetti NuGet di simboli. Questa attività corrisponde al parametro della riga di comando --include-symbols.
includesource
-
includere di origine
boolean. Opzionale. Usare quando command = pack. Valore predefinito: false
Include il codice sorgente nel pacchetto. Questa attività corrisponde al parametro della riga di comando --include-source.
versioningScheme
-
controllo automatico delle versioni dei pacchetti
string. Obbligatorio quando command = pack. Valori consentiti: off, byPrereleaseNumber (Usa data e ora), byEnvVar (Usa una variabile di ambiente), byBuildNumber (Usa il numero di build), bySemVerBuildNumber (Usa il numero completo di build di SemVer). Valore predefinito: off
Questa attività non può essere utilizzata con i progetti a cui si fa riferimento inclusi. Se si sceglie
Se si sceglie Use an environment variable, è necessario selezionare una variabile di ambiente e assicurarsi che contenga il numero di versione da usare.
Se si sceglie Use the build number, verrà usato il numero di build per la versione del pacchetto.
Nota: In Optionsimpostare il formato del numero di build su $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r).
versioningScheme
-
controllo automatico delle versioni dei pacchetti
string. Obbligatorio quando command = pack. Valori consentiti: off, byPrereleaseNumber (usare la data e l'ora), byEnvVar (usare una variabile di ambiente), byBuildNumber (usare il numero di build). Valore predefinito: off
Questa attività non può essere utilizzata con i progetti a cui si fa riferimento inclusi. Se si sceglie
Se si sceglie Use an environment variable, è necessario selezionare una variabile di ambiente e assicurarsi che contenga il numero di versione da usare.
Se si sceglie Use the build number, verrà usato il numero di build per la versione del pacchetto.
Nota: In Optionsimpostare il formato del numero di build su $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r).
versionEnvVar
-
Variabile d'ambiente
string. Obbligatorio quando versioningScheme = byEnvVar && command = pack.
Specifica il nome della variabile senza $, $envo %.
majorVersion
-
Maggiore
Alias di input: requestedMajorVersion.
string. Obbligatorio quando versioningScheme = byPrereleaseNumber && command = pack. Valore predefinito: 1
La X versione X.Y.Z.
minorVersion
-
Minore
Alias di input: requestedMinorVersion.
string. Obbligatorio quando versioningScheme = byPrereleaseNumber && command = pack. Valore predefinito: 0
La Y versione X.Y.Z.
patchVersion
-
Benda
Alias di input: requestedPatchVersion.
string. Obbligatorio quando versioningScheme = byPrereleaseNumber && command = pack. Valore predefinito: 0
La Z versione X.Y.Z.
buildProperties
-
proprietà di compilazione aggiuntive
string. Opzionale. Usare quando command = pack.
Specifica un elenco di coppie di token = value, separate da punto e virgola, in cui ogni occorrenza di $token$ nel file .nuspec verrà sostituita con il valore specificato. I valori possono essere stringhe tra virgolette.
verbosityPack
-
Prolissità
string. Opzionale. Usare quando command = pack. Valori consentiti: -, Quiet, Minimal, Normal, Detailed, Diagnostic. Valore predefinito: Normal
Specifica la quantità di dettagli visualizzati nell'output per il comando pack.
verbosityPack
-
Prolissità
string. Opzionale. Usare quando command = pack. Valori consentiti: -, Quiet, Minimal, Normal, Detailed, Diagnostic. Valore predefinito: Detailed
Specifica la quantità di dettagli visualizzati nell'output per il comando pack.
workingDirectory
-
directory di lavoro
string. Opzionale. Usare quando command != restore && command != push && command != pack.
Directory di lavoro corrente in cui viene eseguito lo script.
Empty è la radice del repository (build) o degli artefatti (versione), che è $(System.DefaultWorkingDirectory).
requestTimeout
-
Impostare il timeout per la richiesta di download del pacchetto
string. Valore predefinito: 300000
Fornire un valore di timeout per le richieste HTTP effettuate dal compito per ottenere il pacchetto .NET. Il valore è espresso in millisecondi. Il valore predefinito è 300000 millisecondi (5 minuti). Non può essere superiore a 600000 millisecondi (10 minuti).
Opzioni di controllo attività
Tutte le attività hanno opzioni di controllo oltre ai relativi input di attività. Per altre informazioni, vedere Opzioni di controllo e proprietà comuni delle attività.
Variabili di output
Nessuno.
Osservazioni
Importante
Il compito NuGet Authenticate è il nuovo modo raccomandato per autenticarsi con Azure Artifacts e altri repository NuGet. I comandi restore e push di questo compito di .NET Core CLI non accettano più nuove funzionalità e vengono affrontati solo i bug critici.
Usare AzurePipelinesCredential nei test di integrazione
Le librerie Azure Identity per .NET, C++, Go, Java, JavaScript e Python forniscono supporto per la federazione dell'identità del carico di lavoro, così il codice eseguito dai compiti AzureCLI@2 e AzurePowerShell@5 può autenticarsi con Microsoft Entra ID (ad esempio, per accedere Azure) usando la classe AzurePipelinesCredential.
Molti clienti utilizzano librerie client Azure SDK in test di integrazione evocati da altri compiti. I compiti DotNetCoreCLI@2, Maven@4 e VSTest@3 possono accedere alle risorse Azure utilizzando la classe AzurePipelinesCredential.
Puoi impostare la proprietà connectedServiceName su una connessione Azure service configurata con la federazione dell'identità del carico di lavoro. Il AzurePipelinesCredential richiede SYSTEM_ACCESSTOKEN da impostare.
Nell'esempio seguente viene illustrato l'input connectedServiceName nell'attività DotNetCoreCLI@2.
VSTest@3 e Maven@4 l'utilizzo è simile.
- task: DotNetCoreCLI@2
inputs:
command: 'run'
connectedServiceName: <Azure service connection configured with workload identity federation>
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
Per maggiori informazioni su AzurePipelinesCredential, vedi Migliorare la postura di sicurezza nelle connessioni di servizio Azure con AzurePipelinesCredential.
Perché la compilazione, la pubblicazione o il passaggio di test non riesce a ripristinare i pacchetti?
La maggior parte dei comandi dotnet, tra cui build, publishe test include un passaggio di restore implicito. Questo errore avrà esito negativo nei feed autenticati, anche se è stato eseguito un dotnet restore riuscito in un passaggio precedente, perché il passaggio precedente avrà pulito le credenziali usate.
Per risolvere questo problema, aggiungere il flag --no-restore alla casella di testo Arguments.
Inoltre, il comando test non riconosce gli argomenti feedRestore o vstsFeed e i feed specificati in questo modo non verranno inclusi nel file NuGet.config generato quando viene eseguito il passaggio implicito restore. È consigliabile usare un passaggio esplicito dotnet restore per ripristinare i pacchetti. Il comando restore rispetta gli argomenti feedRestore e vstsFeed.
Perché vengono visualizzati avvisi NU1507 con mapping dell'origine del pacchetto anche se durante la compilazione nel computer non sono presenti avvisi?
I vari comandi che eseguono un ripristino NuGet o accedono a un feed NuGet creano un file di NuGet.config temporaneo speciale che aggiunge l'autenticazione NuGet per i feed NuGet di azure artifacts. Il modo in cui questa operazione viene eseguita è in conflitto con lo schema usato dal mapping dell'origine del pacchetto per eseguire il mapping dei pacchetti alle origini e interrompe la configurazione mappin origine pacchetto nel file NuGet.config nel repository.
Per risolvere questo conflitto, è possibile usare l'attività autenticazione NuGet
# 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'
Perché è consigliabile archiviare un NuGet.config?
Il controllo di un NuGet.config nel controllo del codice sorgente garantisce che una parte chiave di informazioni necessarie per compilare il progetto, ovvero la posizione dei relativi pacchetti, sia disponibile per ogni sviluppatore che controlla il codice.
Tuttavia, per situazioni in cui un team di sviluppatori lavora su una vasta gamma di progetti, è anche possibile aggiungere un feed Azure Artifacts al NuGet.config globale su ogni macchina dello sviluppatore. In queste situazioni, l'uso dell'opzione Feeds I select here nell'attività NuGet replica questa configurazione.
Risoluzione dei problemi
Il progetto che utilizza Entity Framework ha smesso di funzionare su Hosted Agents
.NET Core non ha Entity Framework (EF) integrato. Dovrai installare EF prima di iniziare l'esecuzione oppure aggiungere global.json al progetto con la versione richiesta .NET Core SDK. In questo modo si garantisce che l'SDK corretto venga usato per compilare il progetto EF. Se la versione richiesta non è presente nel computer, aggiungere l'attività UseDotNetV2 alla pipeline per installare la versione richiesta. Per maggiori informazioni, vedi Ottieni il runtime Entity Framework Core.
Esempi
- esempi di compilazione
- esempi di push
- esempi di push
- esempi di
Pack - Pubblicare esempi
- esempi di ripristino
- esempi di test
esempi di compilazione
Compilare un progetto
# Build project
- task: DotNetCoreCLI@2
inputs:
command: 'build'
Compilare più progetti
# 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.
esempi di push
Eseguire il push dei pacchetti NuGet nel feed interno
# 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'
Eseguire il push di pacchetti NuGet in feed esterno
# Push all NuGet packages from a build to external Feed
- task: DotNetCoreCLI@2
inputs:
command: 'push'
nugetFeedType: 'external'
externalEndPoint: 'MyNuGetServiceConnection'
esempi di Pack
Comprimere un pacchetto NuGetPackage in una directory di output specifica
# Pack a NuGet package to a test directory
- task: DotNetCoreCLI@2
inputs:
command: 'pack'
outputDir: '$(Build.ArtifactStagingDirectory)/TestDir'
Comprimere un pacchetto di simboli
# Pack a symbol package along with NuGet package
- task: DotNetCoreCLI@2
inputs:
command: 'pack'
includesymbols: true
Pubblicare esempi
Pubblicare progetti nella cartella specificata
# 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
esempi di ripristino
#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
esempi di test
Eseguire test nel repository
# Run tests and auto publish test results.
- task: DotNetCoreCLI@2
inputs:
command: 'test'
Fabbisogno
| Requisito | Descrizione |
|---|---|
| Tipi di pipeline | YAML, build classica, versione classica |
| Viene eseguito in | Agente |
| Demands | Nessuno |
| Funzionalità | Questa attività non soddisfa alcuna richiesta di attività successive nel processo. |
| restrizioni dei comandi | Qualunque |
| variabili impostabili | Qualunque |
| Versione dell'agente | 2.144.0 o versione successiva |
| Categoria attività | Costruire |
| Requisito | Descrizione |
|---|---|
| Tipi di pipeline | YAML, build classica, versione classica |
| Viene eseguito in | Agente |
| Demands | Nessuno |
| Funzionalità | Questa attività non soddisfa alcuna richiesta di attività successive nel processo. |
| restrizioni dei comandi | Qualunque |
| variabili impostabili | Qualunque |
| Versione dell'agente | 2.115.0 o versione successiva |
| Categoria attività | Costruire |