tarefa DotNetCoreCLI@2 – .NET Core v2

Crie, teste, empacote ou publique um aplicativo dotnet ou execute um comando dotnet personalizado.

Crie, teste, empacote ou publique um aplicativo dotnet ou execute um comando dotnet personalizado. Para comandos de pacote, é compatível com feeds autenticados e NuGet.org, como Gerenciamento de Pacotes e MyGet.

Importante

A tarefa Autenticação do NuGet é a nova maneira recomendada de autenticar com o Azure Artifacts e outros repositórios NuGet. Os restore comandos e push desta tarefa da CLI do .NET Core não têm mais novos recursos e apenas bugs críticos são resolvidos. Confira comentários para obter detalhes.

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.

Entradas

command - Comando
string. Obrigatórios. Valores permitidos: build, push (push nuget), pack, publish, restore, run, , test, custom. Valor padrão: build.

O comando dotnet a ser executado. Especifique custom para adicionar argumentos ou usar um comando não listado aqui.

Importante

A tarefa Autenticação do NuGet é a nova maneira recomendada de autenticar com o Azure Artifacts e outros repositórios NuGet. Os restore comandos e push desta tarefa da CLI do .NET Core não têm mais novos recursos e apenas bugs críticos são resolvidos. Confira comentários para obter detalhes.


publishWebProjects - Publicar projetos Web
boolean. Opcional. Use quando command = publish. Valor padrão: true.

Se essa entrada for definida como true, o valor da projects propriedade será ignorado e a tarefa tentará localizar os projetos Web no repositório e executar o comando publish neles. Os projetos Web são identificados pela presença de um web.config arquivo ou uma wwwroot pasta no diretório. Na ausência de um web.config arquivo ou uma wwwroot pasta, os projetos que usam um SDK da Web, como Microsoft.NET.Sdk.Web, são selecionados.


publishWebProjects - Publicar projetos Web
boolean. Opcional. Use quando command = publish. Valor padrão: true.

Se essa entrada for definida como true, o valor da projects propriedade será ignorado e a tarefa tentará localizar os projetos Web no repositório e executar o comando publish neles. Os projetos Web são identificados pela presença de um web.config arquivo ou uma wwwroot pasta no diretório. Na ausência de um web.config arquivo ou uma wwwroot pasta, os projetos que usam um SDK da Web, como Microsoft.NET.Sdk.Web, são selecionados.


projects - Caminho para projetos ou soluções
string. Opcional. Use quando command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false.

O caminho para os .csproj arquivos ou .sln a serem usados. Você pode usar curingas (por exemplo **/*.csproj , para todos os .csproj arquivos 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 workingDirectory configuração.


projects - Caminho para projetos
string. Opcional. Use quando command = build || command = restore || command = run || command = test || command = custom || publishWebProjects = false.

O caminho para os .csproj arquivos a serem usados. Você pode usar curingas (por exemplo **/*.csproj , para todos os .csproj arquivos 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 workingDirectory configuração.


custom - Comando personalizado
string. Obrigatório quando command = custom.

O comando a ser passado para a dotnet.exe execução. Para obter uma lista completa de 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 build, pasta de saída e runtime. Os argumentos dependem do comando selecionado.

Atualmente, essa entrada aceita apenas 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 restore comando .


publishTestResults - Publicar resultados de teste e cobertura de código
boolean. Opcional. Use quando command = test. Valor padrão: true.

Habilitar essa opção gerará um test results arquivo TRX no $(Agent.TempDirectory)e os resultados serão publicados no servidor.

Essa opção acrescenta --logger trx --results-directory $(Agent.TempDirectory) aos argumentos de linha de comando.

A cobertura de código pode ser coletada adicionando a opção --collect "Code coverage" aos argumentos de linha de comando.


testRunTitle - Título da execução de teste
string. Opcional. Use quando command = test.

Fornece um nome para a execução do teste.


zipAfterPublish - Projetos publicados zip
boolean. Opcional. Use quando command = publish. Valor padrão: true.

Se essa entrada for definida como true, as pastas criadas pelo comando publish serão compactadas e excluídas.


zipAfterPublish - Projetos publicados zip
boolean. Opcional. Use quando command = publish. Valor padrão: true.

Se essa entrada for definida como true, a pasta criada pelo comando publish será compactada e excluída.


modifyOutputPath - Adicionar o nome da pasta do projeto ao caminho de publicação
boolean. Opcional. Use quando command = publish. Valor padrão: true.

Se essa entrada for definida como true, as pastas criadas pelo comando publish terão o nome do arquivo de projeto prefixado em seus nomes de pasta quando o caminho de saída for especificado explicitamente em argumentos. Isso será útil se você quiser publicar vários projetos na mesma pasta.


modifyOutputPath - Adicionar o nome do projeto ao caminho de publicação
boolean. Opcional. Use quando command = publish. Valor padrão: true.

Se essa entrada for definida como true, as pastas criadas pelo comando publish terão o nome do arquivo de projeto prefixado em seus nomes de pasta quando o caminho de saída for especificado explicitamente em argumentos. Isso será útil se você quiser publicar vários projetos na mesma pasta.


feedsToUse - Feeds a serem usados
Alias de entrada: selectOrConfig. string. Obrigatório quando command = restore. Valores permitidos: select (Feed(s) eu seleciono aqui) config (Feeds no meu NuGet.config). Valor padrão: select.

Você pode selecionar um feed do Azure Artifacts e/ou NuGet.org aqui ou confirmar um nuget.config arquivo no repositório de código-fonte e definir seu caminho usando a nugetConfigPath entrada.


vstsFeed - Usar pacotes deste feed do Azure Artifacts
Alias de entrada: feedRestore. string. Opcional. Use quando selectOrConfig = select && command = restore.

Inclui o feed selecionado no gerado NuGet.config. Você deve ter o Gerenciamento de Pacotes instalado e licenciado para selecionar um feed aqui. projectName/feedName são usados para feeds no escopo do projeto. Somente FeedName é usado para feeds no escopo da organização. Observação: não há suporte para o comando de teste.


vstsFeed - Usar pacotes deste feed do Azure Artifacts/TFS
Alias de entrada: feedRestore. string. Opcional. Use quando selectOrConfig = select && command = restore.

Inclui o feed selecionado no gerado NuGet.config. Você deve ter o Gerenciamento de Pacotes instalado e licenciado para selecionar um feed aqui. projectName/feedName são usados para feeds no escopo do projeto. Somente FeedName é usado para feeds no escopo da organização. Observação: não há suporte para o comando de teste.


includeNuGetOrg - Usar pacotes de NuGet.org
boolean. Opcional. Use quando selectOrConfig = select && command = restore. Valor padrão: true.

Inclui NuGet.org no gerado NuGet.config.


nugetConfigPath - Caminho para NuGet.config
string. Opcional. Use quando selectOrConfig = config && command = restore.

O NuGet.config no repositório que especifica os feeds dos quais restaurar pacotes.


externalFeedCredentials - Credenciais para feeds fora desta organização/coleção
Alias de entrada: externalEndpoints. string. Opcional. Use quando selectOrConfig = config && command = restore.

As credenciais a serem usadas para registros externos localizados no selecionado NuGet.config. Para feeds nesta organização/coleção, deixe essa entrada em branco; As credenciais do build são usadas automaticamente.


noCache - Desabilitar o cache local
boolean. Opcional. Use quando command = restore. Valor padrão: false.

Impede que o NuGet use pacotes dos caches de computador locais.


restoreDirectory - Diretório de destino
Alias de entrada: packagesDirectory. string. Opcional. Use quando command = restore.

Especifica a pasta na qual os pacotes estã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 padrão: Detailed.

Especifica a quantidade de detalhes exibida na saída do comando restore.


packagesToPush - Caminho para pacotes NuGet a serem publicados
Alias de entrada: searchPatternPush. string. Obrigatório quando command = push. Valor padrão: $(Build.ArtifactStagingDirectory)/*.nupkg.

O padrão a ser correspondido ou caminho para nupkg arquivos a serem carregados. Vários padrões podem ser separados por um ponto e vírgula e você pode tornar o padrão negativo prefixando-o com !. Exemplo: **/*.nupkg;!**/*.Tests.nupkg.


nuGetFeedType - Local do feed de destino
string. Obrigatório quando command = push. Valores permitidos: internal (esta organização/coleção), external (servidor NuGet externo (incluindo outras organizações/coleções)). Valor padrão: internal.

Especifica se o feed de destino é interno ou externo.


publishVstsFeed - Feed de destino
Alias de entrada: feedPublish. string. Obrigató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 && command = push. Valor padrão: true.

Associa os metadados desse pipeline de build/versão (executar #, informações de código-fonte) ao pacote.


publishFeedCredentials - Servidor NuGet
Alias de entrada: externalEndpoint. string. Obrigatório quando command = push && nuGetFeedType = external.

A conexão de serviço NuGet que contém as credenciais do servidor NuGet externo.


packagesToPack - Caminho para csproj ou arquivos nuspec para empacotar
Alias de entrada: searchPatternPack. string. Obrigatório quando command = pack. Valor padrão: **/*.csproj.

O padrão a ser .csproj pesquisado ou .nuspec os arquivos a serem empacotados.

Você pode separar vários padrões com um ponto e vírgula e você pode tornar o padrão negativo prefixando-o com !. Exemplo: **/*.csproj;!**/*.Tests.csproj.


configuration - Configuração para Pacote
Alias de entrada: configurationToPack. string. Opcional. Use quando command = pack. Valor padrão: $(BuildConfiguration).

Ao usar um .csproj arquivo, essa entrada especifica a configuração a ser empacotada.


packDirectory - Pasta do Pacote
Alias de entrada: outputDir. string. Opcional. Use quando command = pack. Valor padrão: $(Build.ArtifactStagingDirectory).

A pasta em que os pacotes serão criados. Se essa pasta estiver vazia, os pacotes serão criados junto com o csproj arquivo .


nobuild - Não compilar
boolean. Opcional. Use quando command = pack. Valor padrão: false.

Especifica que a tarefa não compilará o projeto antes do empacotamento. Essa tarefa corresponde ao --no-build parâmetro do build comando .


includesymbols - Incluir símbolos
boolean. Opcional. Use quando command = pack. Valor padrão: false.

Cria pacotes NuGet de símbolo. Essa tarefa corresponde ao parâmetro de --include-symbols linha de comando.


includesource - Incluir origem
boolean. Opcional. Use quando command = pack. Valor padrão: false.

Inclui o código-fonte no pacote. Essa tarefa corresponde ao parâmetro de --include-source linha de comando.


versioningScheme - Controle de versão automático de pacote
string. Obrigatório quando command = pack. Valores permitidos: off, byPrereleaseNumber (Usar a data e a hora), byEnvVar (Usar uma variável de ambiente) byBuildNumber (Use o número de build). Valor padrão: off.

Esta tarefa não pode ser usada com projetos referenciados incluídos. Se você escolher Use the date and time, isso gerará uma versão compatível com SemVer formatada como X.Y.Z-ci-datetime onde você escolher X, Ye Z.

Se você escolher Use an environment variable, deverá selecionar uma variável de ambiente e garantir que ela contenha o número de versão que deseja usar.

Se você escolher Use the build number, isso usará o número de build para versão do pacote. Nota: Em Options, defina o formato de número de build como $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r).


versionEnvVar - Variável de ambiente
string. Obrigatório quando versioningScheme = byEnvVar && command = pack.

Especifica o nome da variável sem $, $envou %.


majorVersion - Principais
Alias de entrada: requestedMajorVersion. string. Obrigatório quando versioningScheme = byPrereleaseNumber && command = pack. Valor padrão: 1.

O X na versão X.Y.Z.


minorVersion - Menor
Alias de entrada: requestedMinorVersion. string. Obrigatório quando versioningScheme = byPrereleaseNumber && command = pack. Valor padrão: 0.

O Y na versão X.Y.Z.


patchVersion - Patch
Alias de entrada: requestedPatchVersion. string. Obrigatório quando versioningScheme = byPrereleaseNumber && command = pack. Valor padrão: 0.

O Z na versão X.Y.Z.


buildProperties - Propriedades de build adicionais
string. Opcional. Use quando command = pack.

Especifica uma lista de token = value pares, separados por ponto e vírgula, em que cada ocorrência de $token$ no .nuspec arquivo 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 padrão: Detailed.

Especifica a quantidade de detalhes exibida na saída do comando pack.


workingDirectory - Diretório de trabalho
string. Opcional. Use quando command != restore && command != push && command != pack && command != pack && command != push && command != restore.

O diretório de trabalho atual em que o script é executado. Empty é a raiz do repositório (build) ou artefatos (versão), que é $(System.DefaultWorkingDirectory).


workingDirectory - Diretório de Trabalho
string. Opcional. Use quando command != pack && command != push && command != restore.

O diretório de trabalho atual em que o script é executado. Empty é a raiz do repositório (build) ou artefatos (versão), que é $(System.DefaultWorkingDirectory).


Opções de controle da tarefa

Todas as tarefas têm opções de controle além de suas entradas de tarefa. Para obter mais informações, consulte Opções de controle e propriedades comuns da tarefa.

Variáveis de saída

Nenhum.

Comentários

Importante

A tarefa Autenticação do NuGet é a nova maneira recomendada de autenticar com o Azure Artifacts e outros repositórios NuGet. Os restore comandos e push dessa tarefa da CLI do .NET Core não levam mais novos recursos e apenas bugs críticos são resolvidos.

Por que minha etapa de compilação, publicação ou teste está falhando ao restaurar os pacotes?

A maioria dos comandos dotnet, incluindo build, publish e test incluem uma etapa implícita restore. Isso falhará em feeds autenticados, mesmo que você tenha executado um dotnet restore bem-sucedido em uma etapa anterior, pois a etapa anterior terá limpado as credenciais usadas.

Para corrigir esse problema, adicione o --no-restore sinalizador à Arguments caixa de texto.

Além disso, o test comando não reconhece os feedRestore argumentos ou vstsFeed e os feeds especificados dessa maneira não serão incluídos no arquivo gerado NuGet.config quando a etapa implícita restore for executada. É recomendável que uma etapa explícita dotnet restore seja usada para restaurar pacotes. O comando restore respeita os argumentos feedRestore e vstsFeed.

Por que estou recebendo avisos NU1507 com o Mapeamento de Origem do Pacote , embora ao compilar no meu computador 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 temporário NuGet.config especial que adiciona autenticação do NuGet para feeds NuGet de artefatos do Azure. A maneira como isso é feito está em conflito com o esquema que o Mapeamento de Origem do Pacote usa para mapear os pacotes para as fontes e quebra a configuração do Mapeador de Origem do NuGet.config Pacote no arquivo em seu repositório. Para contornar esse conflito, você pode usar a tarefa Autenticação do NuGet para autenticar e, posteriormente, o comando personalizado para invocar o comando dotnet desejado sem a NuGet.config modificação.

# 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 eu deveria fazer check-in do NuGet.config?

Verificar um NuGet.config no controle do código-fonte garante que uma parte fundamental das informações necessárias para compilar seu projeto — o local de seus pacotes — esteja disponível para todos os desenvolvedores que conferem seu código.

No entanto, para situações em que uma equipe de desenvolvedores trabalha em uma grande variedade de projetos, também é possível adicionar um feed do Azure Artifacts ao global NuGet.config no computador de cada desenvolvedor. 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 EF (Entity Framework) interno. Você precisará instalar o EF antes de iniciar a execução ou adicionar global.json ao projeto com a versão necessária do SDK do .NET Core. Isso garantirá que o SDK correto será usado para compilar um projeto EF. Se a versão necessária não estiver presente no computador, adicione a UseDotNetV2 tarefa ao pipeline para instalar a versão necessária. Para obter mais informações, consulte Obter o runtime do Entity Framework Core.

Exemplos

Exemplos de build

Compilar um projeto

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

Compilar projetos múltiplos

# 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 por push para o 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 por push para o feed externo

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

Exemplos de pacote

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

Empacotar 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
    projects: '**/*.csproj'
    arguments: '-o $(Build.ArtifactStagingDirectory)/Output'
    zipAfterPublish: true
    modifyOutputPath: true

Exemplos de restauração

#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 no repositório

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

Requisitos

Requisito Descrição
Tipos de pipeline YAML, build clássico, versão clássica
É executado em Agente
Demandas Nenhum
Funcionalidades Essa tarefa não atende a nenhuma demanda por tarefas subsequentes no trabalho.
Restrições de comando Qualquer
Variáveis configuráveis Qualquer
Versão do agente 2.144.0 ou superior
Categoria da tarefa Build
Requisito Descrição
Tipos de pipeline YAML, build clássico, versão clássica
É executado em Agente
Demandas Nenhum
Funcionalidades Essa tarefa não atende a nenhuma demanda por tarefas subsequentes no trabalho.
Restrições de comando Qualquer
Variáveis configuráveis Qualquer
Versão do agente 2.115.0 ou superior
Categoria da tarefa Build
Requisito Descrição
Tipos de pipeline YAML, build clássico, versão clássica
É executado em Agente
Demandas Nenhum
Funcionalidades Essa tarefa não atende a nenhuma demanda por tarefas subsequentes no trabalho.
Restrições de comando Qualquer
Variáveis configuráveis Qualquer
Versão do agente 2.0.0 ou superior
Categoria da tarefa Build