Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Construir, testar, empacotar ou publicar uma aplicação .NET, ou executar um comando .NET CLI personalizado.
Sintaxe
# .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.
Insumos
azureSubscription
-
Azure Resource Manager ligação
Alias de entrada: ConnectedServiceName.
string.
Especifique uma ligação de serviço Azure Resource Manager configurada com federação de identidade de carga de trabalho para usar AzurePipelinesCredential em testes de integração. Para obter mais informações, consulte Usar AzurePipelinesCredential em testes de integração.
Observação
Essa entrada oferece suporte apenas a conexões de serviço ARM configuradas para usar a federação de identidades de carga de trabalho.
command
-
Comando
string. Necessário. Valores permitidos: build, push (nuget push), pack, publish, restore, run, test, custom. Valor predefinido: build.
O comando dotnet a ser executado. Especifique custom adicionar argumentos ou usar um comando não listado aqui.
Importante
A tarefa NuGet Authenticate é a nova forma recomendada de autenticação com Artefactos do Azure e outros repositórios NuGet. Os comandos restore e push desta tarefa .NET Core CLI já não aceitam novas funcionalidades e apenas bugs críticos são corrigidos. Ver observações para mais pormenores.
publishWebProjects
-
Publicar projetos web
boolean. Opcional. Use quando command = publish. Valor predefinido: true.
Se essa entrada estiver definida como true, o valor da propriedade projects será ignorado e a tarefa tentará localizar os projetos da Web no repositório e executar o comando publish neles. Os projetos da Web são identificados pela presença de um arquivo web.config ou de uma pasta wwwroot no diretório. Na ausência de um ficheiro web.config ou de uma pasta wwwroot, são selecionados projetos que utilizam um SDK web, como Microsoft.NET.Sdk.Web.
projects
-
Caminho para projeto(s) ou solução(ões)
string. Opcional. Use quando command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false.
O caminho para o(s) arquivo(s) .csproj ou .sln usar. Você pode usar curingas (por exemplo, **/*.csproj para todos os arquivos .csproj em todas as subpastas). Para obter mais informações, consulte a referência de padrões de correspondência de arquivo .
Esse caminho é relativo à raiz do repositório, independentemente da configuração workingDirectory.
projects
-
Caminho para o(s) projeto(s)
string. Opcional. Use quando command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false.
O caminho para o(s) arquivo(s) .csproj usar. Você pode usar curingas (por exemplo, **/*.csproj para todos os arquivos .csproj em todas as subpastas). Para obter mais informações, consulte a referência de padrões de correspondência de arquivo .
Esse caminho é relativo à raiz do repositório, independentemente da configuração workingDirectory.
custom
-
Comando personalizado
string. Necessário quando command = custom.
O comando a ser passado para dotnet.exe para execução. Para obter uma lista completa dos comandos disponíveis, consulte a documentação da CLI do dotnet.
arguments
-
Argumentos
string. Opcional. Use quando command = build || command = publish || command = run || command = test || command = custom.
Especifica os argumentos para o comando selecionado. Por exemplo, configuração de compilação, pasta de saída e tempo de execução. Os argumentos dependem do comando selecionado.
Atualmente, essa entrada só aceita argumentos para build, publish, run, teste custom. Se você quiser adicionar argumentos para um comando não listado, use custom.
restoreArguments
-
Argumentos
string. Opcional. Use quando command = restore.
Grava os argumentos adicionais a serem passados para o comando restore.
publishTestResults
-
Publicar resultados de testes e cobertura de código
boolean. Opcional. Use quando command = test. Valor predefinido: true.
Ativar esta opção irá gerar um arquivo TRX test results em $(Agent.TempDirectory)e os resultados serão publicados no servidor.
Para VSTest, esta opção acrescenta-se --logger trx --results-directory $(Agent.TempDirectory) aos argumentos da linha de comandos.
Para o Microsoft.Testing.Platform, quando detetado como executor de testes em global.json, esta opção adiciona-se --report-trx --results-directory $(Agent.TempDirectory) aos argumentos da linha de comandos.
A cobertura de código pode ser recolhida adicionando a --collect "Code coverage" opção (para VSTest) ou --coverage (para Microsoft.Testing.Platform) aos argumentos da linha de comandos.
testRunTitle
-
Título da execução de teste
string. Opcional. Use quando command = test.
Fornece um nome para a execução de teste.
zipAfterPublish
-
Zip publicou projetos
boolean. Opcional. Use quando command = publish. Valor predefinido: true.
Se essa entrada estiver definida como true, as pastas criadas pelo comando publish serão compactadas e excluídas.
modifyOutputPath
-
Adicionar o nome da pasta do projeto para publicar o caminho
boolean. Opcional. Use quando command = publish. Valor predefinido: true.
Se essa entrada estiver definida como true, as pastas criadas pelo comando publish terão o nome do arquivo de projeto prefixado para seus nomes de pasta quando o caminho de saída for especificado explicitamente em argumentos. Isso é útil se você quiser publicar vários projetos na mesma pasta.
feedsToUse
-
Feeds para usar
Alias de entrada: selectOrConfig.
string. Necessário quando command = restore. Valores permitidos: select (Feed(s) que seleciono aqui), config (Feeds no meu NuGet.config). Valor predefinido: select.
Pode selecionar um feed de Artefactos do Azure e/ou NuGet.org aqui, ou pode fazer commit de um ficheiro nuget.config no seu repositório de código-fonte e definir o seu caminho usando a entrada nugetConfigPath.
vstsFeed
-
Use pacotes deste feed de Artefactos do Azure. Selecione no menu suspenso ou introduza [nome do projeto/]nome do feed.
Alias de entrada: feedRestore.
string. Opcional. Use quando feedsToUse = select && command = restore.
Inclui o feed selecionado no NuGet.configgerado . Você deve ter o Gerenciamento de Pacotes instalado e licenciado para selecionar um feed aqui.
projectName
/
feedName são usados para feeds com escopo de projeto. Somente FeedName é usado para feeds com escopo da organização. Nota: Isso não é suportado para o comando test.
vstsFeed
-
Usa pacotes deste feed Artefactos do Azure
Alias de entrada: feedRestore.
string. Opcional. Use quando feedsToUse = select && command = restore.
Inclui o feed selecionado no NuGet.configgerado . Você deve ter o Gerenciamento de Pacotes instalado e licenciado para selecionar um feed aqui.
projectName
/
feedName são usados para feeds com escopo de projeto. Somente FeedName é usado para feeds com escopo da organização. Nota: Isso não é suportado para o comando test.
includeNuGetOrg
-
Use pacotes de NuGet.org
boolean. Opcional. Use quando feedsToUse = select && command = restore. Valor predefinido: true.
Inclui NuGet.org no NuGet.configgerado .
nugetConfigPath
-
caminho para a NuGet.config
string. Opcional. Use quando feedsToUse = config && command = restore.
O NuGet.config em seu repositório que especifica os feeds a partir dos quais restaurar pacotes.
externalFeedCredentials
-
Credenciais para feeds fora desta organização/coleção
Alias de entrada: externalEndpoints.
string. Opcional. Use quando feedsToUse = config && command = restore.
O nome da conexão de serviço a ser usada para registros externos listados no .NuGet.config Para feeds dentro da mesma organização ou coleção, deixe essa entrada em branco; As credenciais da compilação são usadas automaticamente.
noCache
-
Desativar de cache local
boolean. Opcional. Use quando command = restore. Valor predefinido: false.
Impede que o NuGet use pacotes de caches de máquinas locais.
restoreDirectory
-
Diretório de destino
Alias de entrada: packagesDirectory.
string. Opcional. Use quando command = restore.
Especifica a pasta na qual os pacotes são instalados. Se nenhuma pasta for especificada, os pacotes serão restaurados no cache de pacotes NuGet padrão.
verbosityRestore
-
Verbosidade
string. Opcional. Use quando command = restore. Valores permitidos: -, Quiet, Minimal, Normal, Detailed, Diagnostic. Valor predefinido: Normal.
Especifica a quantidade de detalhes exibidos na saída para o comando restore.
verbosityRestore
-
Verbosidade
string. Opcional. Use quando command = restore. Valores permitidos: -, Quiet, Minimal, Normal, Detailed, Diagnostic. Valor predefinido: Detailed.
Especifica a quantidade de detalhes exibidos na saída para o comando restore.
packagesToPush
-
Caminho para o(s) pacote(s) NuGet para publicar
Alias de entrada: searchPatternPush.
string. Necessário quando command = push. Valor predefinido: $(Build.ArtifactStagingDirectory)/*.nupkg.
O padrão a ser correspondido ou o caminho para nupkg arquivos a serem carregados. Vários padrões podem ser separados por um ponto-e-vírgula, e você pode tornar um padrão negativo prefixando-o com !. Exemplo: **/*.nupkg;!**/*.Tests.nupkg.
nuGetFeedType
-
Local do feed de destino
string. Necessário quando command = push. Valores permitidos: internal (Esta organização/coleção), external (Servidor NuGet externo (incluindo outras organizações/coleções)). Valor predefinido: internal.
Especifica se o feed de destino é interno ou externo.
publishVstsFeed
-
Feed alvo
Alias de entrada: feedPublish.
string. Necessário quando command = push && nuGetFeedType = internal.
Especifica um feed hospedado nesta organização. Você deve ter o Gerenciamento de Pacotes instalado e licenciado para selecionar um feed aqui.
publishPackageMetadata
-
Publicar metadados de pipeline
boolean. Opcional. Use quando command = push && nuGetFeedType = internal. Valor predefinido: true.
Associa os metadados desse pipeline de compilação/liberação (run #, informações do código-fonte) ao pacote.
publishFeedCredentials
-
Servidor NuGet
Alias de entrada: externalEndpoint.
string. Necessário quando command = push && nuGetFeedType = external.
O de conexão de serviço do NuGet
packagesToPack
-
Caminho para arquivo(s) csproj ou nuspec para empacotar
Alias de entrada: searchPatternPack.
string. Necessário quando command = pack. Valor predefinido: **/*.csproj.
O padrão para procurar .csproj ou .nuspec arquivos para empacotar.
Você pode separar vários padrões com um ponto-e-vírgula e pode tornar um padrão negativo prefixando-o com !. Exemplo: **/*.csproj;!**/*.Tests.csproj.
Configuração de configuration - para empacotar
Alias de entrada: configurationToPack.
string. Opcional. Use quando command = pack. Valor predefinido: $(BuildConfiguration).
Ao usar um arquivo .csproj, essa entrada especifica a configuração a ser empacotada.
packDirectory
-
pasta do pacote
Alias de entrada: outputDir.
string. Opcional. Use quando command = pack. Valor predefinido: $(Build.ArtifactStagingDirectory).
A pasta onde os pacotes serão criados. Se esta pasta estiver vazia, os pacotes serão criados juntamente com o arquivo csproj.
nobuild
-
Não crie
boolean. Opcional. Use quando command = pack. Valor predefinido: false.
Especifica que a tarefa não criará o projeto antes de empacotar. Esta tarefa corresponde ao parâmetro --no-build do comando build.
includesymbols
-
Incluir símbolos
boolean. Opcional. Use quando command = pack. Valor predefinido: false.
Cria pacotes NuGet de símbolo. Esta tarefa corresponde ao parâmetro de linha de comando --include-symbols.
includesource
-
Incluir de origem
boolean. Opcional. Use quando command = pack. Valor predefinido: false.
Inclui código-fonte no pacote. Esta tarefa corresponde ao parâmetro de linha de comando --include-source.
versioningScheme
-
Versionamento automático de pacotes
string. Necessário quando command = pack. Valores permitidos: off, byPrereleaseNumber (Usar a data e hora), byEnvVar (Usar uma variável de ambiente), byBuildNumber (Usar o número de compilação), bySemVerBuildNumber (Usar o número completo de compilação do SemVer). Valor predefinido: off.
Esta tarefa não pode ser usada com projetos referenciados incluídos. Se você escolher
Se você escolher Use an environment variable, deverá selecionar uma variável de ambiente e garantir que ela contenha o número da versão que você deseja usar.
Se você escolher Use the build number, isso usará o número de compilação para a versão do seu pacote.
Nota: Em Options, defina o formato do número de compilação como $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r).
versioningScheme
-
Versionamento automático de pacotes
string. Necessário quando command = pack. Valores permitidos: off, byPrereleaseNumber (Usar a data e a hora), byEnvVar (Usar uma variável de ambiente) byBuildNumber (Usar o número de compilação). Valor predefinido: off.
Esta tarefa não pode ser usada com projetos referenciados incluídos. Se você escolher
Se você escolher Use an environment variable, deverá selecionar uma variável de ambiente e garantir que ela contenha o número da versão que você deseja usar.
Se você escolher Use the build number, isso usará o número de compilação para a versão do seu pacote.
Nota: Em Options, defina o formato do número de compilação como $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r).
versionEnvVar
-
Variável de ambiente
string. Necessário quando versioningScheme = byEnvVar && command = pack.
Especifica o nome da variável sem $, $envou %.
majorVersion
-
Major:
Alias de entrada: requestedMajorVersion.
string. Necessário quando versioningScheme = byPrereleaseNumber && command = pack. Valor predefinido: 1.
O X na versão X.Y.Z.
minorVersion
-
Menor
Alias de entrada: requestedMinorVersion.
string. Necessário quando versioningScheme = byPrereleaseNumber && command = pack. Valor predefinido: 0.
O Y na versão X.Y.Z.
patchVersion
-
Adesivo
Alias de entrada: requestedPatchVersion.
string. Necessário quando versioningScheme = byPrereleaseNumber && command = pack. Valor predefinido: 0.
O Z na versão X.Y.Z.
buildProperties
-
Propriedades de compilação adicionais
string. Opcional. Use quando command = pack.
Especifica uma lista de pares de token = value, separados por ponto-e-vírgula, onde cada ocorrência de $token$ no arquivo .nuspec será substituída pelo valor fornecido. Os valores podem ser cadeias de caracteres entre aspas.
verbosityPack
-
Verbosidade
string. Opcional. Use quando command = pack. Valores permitidos: -, Quiet, Minimal, Normal, Detailed, Diagnostic. Valor predefinido: Normal.
Especifica a quantidade de detalhes exibidos na saída para o comando pack.
verbosityPack
-
Verbosidade
string. Opcional. Use quando command = pack. Valores permitidos: -, Quiet, Minimal, Normal, Detailed, Diagnostic. Valor predefinido: Detailed.
Especifica a quantidade de detalhes exibidos na saída para o comando pack.
workingDirectory
-
Diretório de trabalho
string. Opcional. Use quando command != restore && command != push && command != pack.
O diretório de trabalho atual onde o script é executado.
Empty é a raiz do repo (build) ou artifacts (release), que é $(System.DefaultWorkingDirectory).
requestTimeout
-
Definir tempo limite para solicitação de download de pacote
string. Valor predefinido: 300000.
Forneça um valor de timeout para os pedidos HTTP que a tarefa faz para obter o pacote .NET. O valor é em milissegundos. O padrão é 300000 milissegundos (5 minutos). Não pode ser superior a 600000 milissegundos (10 minutos).
Opções de controlo de tarefas
Todas as tarefas têm opções de controle, além de suas entradas de tarefas. Para obter mais informações, consulte Opções de controle de e propriedades de tarefas comuns.
Variáveis de saída
Nenhuma.
Comentários
Importante
A tarefa NuGet Authenticate é a nova forma recomendada de autenticação com Artefactos do Azure e outros repositórios NuGet. Os comandos restore e push desta tarefa .NET Core CLI já não aceitam novas funcionalidades e apenas bugs críticos são corrigidos.
Usar AzurePipelinesCredential em testes de integração
As bibliotecas Azure Identity para .NET, C++, Go, Java, JavaScript e Python fornecem suporte para federação de identidade de carga de trabalho, pelo que o código executado a partir das tarefas AzureCLI@2 e AzurePowerShell@5 pode autenticar-se com Microsoft Entra ID (por exemplo, para aceder Azure) usando a classe AzurePipelinesCredential.
Muitos clientes estão a usar bibliotecas de clientes do SDK do Azure em testes de integração invocados a partir de outras tarefas. As tarefas DotNetCoreCLI@2, Maven@4 e VSTest@3 podem aceder a Azure recursos usando a classe AzurePipelinesCredential.
Pode definir a propriedade connectedServiceName para uma ligação de serviço Azure configurada com federação de identidade de carga de trabalho. O AzurePipelinesCredential exige que SYSTEM_ACCESSTOKEN sejam definidos.
O exemplo a seguir mostra a entrada de connectedServiceName na tarefa DotNetCoreCLI@2.
VSTest@3 e Maven@4 uso é semelhante.
- task: DotNetCoreCLI@2
inputs:
command: 'run'
connectedServiceName: <Azure service connection configured with workload identity federation>
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
Para mais informações sobre AzurePipelinesCredential, consulte Melhorar a postura de segurança nas ligações de serviço Azure com AzurePipelinesCredential.
Por que minha etapa de compilação, publicação ou teste está falhando ao restaurar pacotes?
A maioria dos comandos dotnet, incluindo build, publishe test incluem uma etapa de restore implícita. Isso falhará em feeds autenticados, mesmo que você tenha executado um dotnet restore bem-sucedido em uma etapa anterior, porque a etapa anterior terá limpo as credenciais usadas.
Para corrigir esse problema, adicione o sinalizador --no-restore à caixa de texto Arguments.
Além disso, o comando test não reconhece os argumentos feedRestore ou vstsFeed e os feeds especificados dessa maneira não serão incluídos no arquivo de NuGet.config gerado quando a etapa de restore implícita for executada. Recomenda-se que uma etapa de dotnet restore explícita seja usada para restaurar pacotes. O comando restore respeita os argumentos feedRestore e vstsFeed.
Por que estou recebendo avisos do NU1507 com o Package Source Mapping embora ao construir na minha máquina ele não tenha avisos?
Os vários comandos que fazem uma restauração do NuGet ou acessam um feed do NuGet criam um arquivo NuGet.config temporário especial que adiciona autenticação NuGet para feeds NuGet de artefatos do Azure. A maneira como isso é feito está em conflito com o esquema que o Mapeamento de Origem de Pacote usa para mapear os pacotes para os códigos-fonte e quebra a configuração do Mappin de Origem do Pacote no arquivo de NuGet.config em seu repositório.
Para contornar esse conflito, você pode usar a tarefa NuGet Authenticate para autenticar e, posteriormente, o comando personalizado para invocar o comando dotnet desejado sem a modificação NuGet.config.
# 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 que devo fazer check-in em um NuGet.config?
Verificar um NuGet.config no controle do código-fonte garante que uma das principais informações necessárias para criar seu projeto — o local de seus pacotes — esteja disponível para todos os desenvolvedores que verificam seu código.
No entanto, para situações em que uma equipa de programadores trabalha numa grande variedade de projetos, também é possível adicionar um feed de Artefactos do Azure ao NuGet.config global na máquina de cada programador. Nessas situações, usar a opção Feeds I select here na tarefa NuGet replica essa configuração.
Solução de problemas
O projeto que usa o Entity Framework parou de funcionar em agentes hospedados
O .NET Core não tem o Entity Framework (EF) incorporado. Terás de instalar o EF antes de iniciar a execução ou adicionar global.json ao projeto com a versão necessária .NET do Core SDK. Isso garantirá que o SDK correto seja usado para criar o projeto EF. Se a versão necessária não estiver presente na máquina, adicione a tarefa UseDotNetV2 ao pipeline para instalar a versão necessária. Para mais informações, veja Obtenha o tempo de execução Entity Framework Core.
Exemplos
- Crie exemplos
- Exemplos de push
- Exemplos de push
- Exemplos de Pack
- Publicar exemplos
- Restaurar exemplos
- Exemplos de teste
Crie exemplos
Construir um projeto
# Build project
- task: DotNetCoreCLI@2
inputs:
command: 'build'
Crie vários projetos
# 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.
Exemplos de push
Enviar pacotes NuGet para 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'
Enviar pacotes NuGet para feed externo
# Push all NuGet packages from a build to external Feed
- task: DotNetCoreCLI@2
inputs:
command: 'push'
nugetFeedType: 'external'
externalEndPoint: 'MyNuGetServiceConnection'
Exemplos de Pack
Empacote um NuGetPackage em um diretório de saída específico
# Pack a NuGet package to a test directory
- task: DotNetCoreCLI@2
inputs:
command: 'pack'
outputDir: '$(Build.ArtifactStagingDirectory)/TestDir'
Embale um pacote de símbolos
# Pack a symbol package along with NuGet package
- task: DotNetCoreCLI@2
inputs:
command: 'pack'
includesymbols: true
Publicar exemplos
Publicar projetos na pasta 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
Restaurar exemplos
#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
Exemplos de teste
Executar testes em seu repositório
# Run tests and auto publish test results.
- task: DotNetCoreCLI@2
inputs:
command: 'test'
Requerimentos
| Exigência | Descrição |
|---|---|
| Tipos de pipeline | YAML, Construção clássica, Versão clássica |
| Funciona em | Agente |
| Demands | Nenhum |
| Capabilities | Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho. |
| Restrições de comando | Qualquer |
| Variáveis configuráveis | Qualquer |
| Versão do agente | 2.144.0 ou superior |
| Categoria de tarefa | Construir |
| Exigência | Descrição |
|---|---|
| Tipos de pipeline | YAML, Construção clássica, Versão clássica |
| Funciona em | Agente |
| Demands | Nenhum |
| Capabilities | Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho. |
| Restrições de comando | Qualquer |
| Variáveis configuráveis | Qualquer |
| Versão do agente | 2.115.0 ou superior |
| Categoria de tarefa | Construir |