Partilhar via


NuGetCommand@2 - Tarefa NuGet v2

Use esta tarefa para restaurar, empacotar ou enviar pacotes NuGet ou executar um comando NuGet. Esta tarefa suporta feeds NuGet.org e autenticados como Azure Artifacts e MyGet. Essa tarefa também usa NuGet.exe e funciona com aplicativos do .NET Framework. Para aplicativos .NET Core e .NET Standard, use a tarefa .NET Core.

Sintaxe

# NuGet v2
# Restore, pack, or push NuGet packages, or run a NuGet command. Supports NuGet.org and authenticated feeds like Azure Artifacts and MyGet. Uses NuGet.exe and works with .NET Framework apps. For .NET Core and .NET Standard apps, use the .NET Core task.
- task: NuGetCommand@2
  inputs:
    command: 'restore' # 'restore' | 'pack' | 'push' | 'custom'. Required. Command. Default: restore.
    restoreSolution: '**/*.sln' # string. Alias: solution. Required when command = restore. Path to solution, packages.config, or project.json. Default: **/*.sln.
    #packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.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. 
    #allowPackageConflicts: false # boolean. Optional. Use when command = push && nuGetFeedType = internal. Allow duplicates to be skipped. Default: false.
    #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).
    #packDestination: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package folder. Default: $(Build.ArtifactStagingDirectory).
    #arguments: # string. Required when command = custom. Command and arguments. 
  # 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. Select from the dropdown or enter [project name/]feed name. 
    #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.
    #disableParallelProcessing: false # boolean. Optional. Use when command = restore. Disable parallel processing. Default: false.
    #restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory. 
    #verbosityRestore: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = restore. Verbosity. Default: Detailed.
  # Advanced
    #publishPackageMetadata: true # boolean. Optional. Use when command = push && nuGetFeedType = internal. Publish pipeline metadata. Default: true.
    #verbosityPush: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = push. Verbosity. Default: Detailed.
  # Pack options
    #versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
    #includeReferencedProjects: false # boolean. Optional. Use when versioningScheme = off && command = pack. Include referenced projects. Default: false.
    #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.
    #packTimezone: 'utc' # 'utc' | 'local'. Optional. Use when versioningScheme = byPrereleaseNumber && command = pack. Time zone. Default: utc.
    #includeSymbols: false # boolean. Optional. Use when command = pack. Create symbols package. Default: false.
    #toolPackage: false # boolean. Optional. Use when command = pack. Tool Package. Default: false.
  # Advanced
    #buildProperties: # string. Optional. Use when command = pack. Additional build properties. 
    #basePath: # string. Optional. Use when command = pack. Base path. 
    #verbosityPack: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = pack. Verbosity. Default: Detailed.
# NuGet v2
# Restore, pack, or push NuGet packages, or run a NuGet command. Supports NuGet.org and authenticated feeds like Azure Artifacts and MyGet. Uses NuGet.exe and works with .NET Framework apps. For .NET Core and .NET Standard apps, use the .NET Core task.
- task: NuGetCommand@2
  inputs:
    command: 'restore' # 'restore' | 'pack' | 'push' | 'custom'. Required. Command. Default: restore.
    restoreSolution: '**/*.sln' # string. Alias: solution. Required when command = restore. Path to solution, packages.config, or project.json. Default: **/*.sln.
    #packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.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. 
    #allowPackageConflicts: false # boolean. Optional. Use when command = push && nuGetFeedType = internal. Allow duplicates to be skipped. Default: false.
    #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).
    #packDestination: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package folder. Default: $(Build.ArtifactStagingDirectory).
    #arguments: # string. Required when command = custom. Command and arguments. 
  # 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.
    #disableParallelProcessing: false # boolean. Optional. Use when command = restore. Disable parallel processing. Default: false.
    #restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory. 
    #verbosityRestore: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = restore. Verbosity. Default: Detailed.
  # Advanced
    #publishPackageMetadata: true # boolean. Optional. Use when command = push && nuGetFeedType = internal. Publish pipeline metadata. Default: true.
    #verbosityPush: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = push. Verbosity. Default: Detailed.
  # Pack options
    #versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
    #includeReferencedProjects: false # boolean. Optional. Use when versioningScheme = off && command = pack. Include referenced projects. Default: false.
    #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.
    #packTimezone: 'utc' # 'utc' | 'local'. Optional. Use when versioningScheme = byPrereleaseNumber && command = pack. Time zone. Default: utc.
    #includeSymbols: false # boolean. Optional. Use when command = pack. Create symbols package. Default: false.
    #toolPackage: false # boolean. Optional. Use when command = pack. Tool Package. Default: false.
  # Advanced
    #buildProperties: # string. Optional. Use when command = pack. Additional build properties. 
    #basePath: # string. Optional. Use when command = pack. Base path. 
    #verbosityPack: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = pack. Verbosity. Default: Detailed.
# NuGet v2
# Restore, pack, or push NuGet packages, or run a NuGet command. Supports NuGet.org and authenticated feeds like Package Management and MyGet. Uses NuGet.exe and works with .NET Framework apps. For .NET Core and .NET Standard apps, use the .NET Core task.
- task: NuGetCommand@2
  inputs:
    command: 'restore' # 'restore' | 'pack' | 'push' | 'custom'. Required. Command. Default: restore.
    restoreSolution: '**/*.sln' # string. Alias: solution. Required when command = restore. Path to solution, packages.config, or project.json. Default: **/*.sln.
    #packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg' # string. Alias: searchPatternPush. Required when command = push. Path to NuGet package(s) to publish. Default: $(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.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. 
    #allowPackageConflicts: false # boolean. Optional. Use when command = push && nuGetFeedType = internal. Allow duplicates to be skipped. Default: false.
    #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).
    #packDestination: '$(Build.ArtifactStagingDirectory)' # string. Alias: outputDir. Optional. Use when command = pack. Package folder. Default: $(Build.ArtifactStagingDirectory).
    #arguments: # string. Required when command = custom. Command and arguments. 
  # 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 account/collection. 
  # Advanced
    #noCache: false # boolean. Optional. Use when command = restore. Disable local cache. Default: false.
    #disableParallelProcessing: false # boolean. Optional. Use when command = restore. Disable parallel processing. Default: false.
    #restoreDirectory: # string. Alias: packagesDirectory. Optional. Use when command = restore. Destination directory. 
    #verbosityRestore: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = restore. Verbosity. Default: Detailed.
  # Advanced
    #verbosityPush: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = push. Verbosity. Default: Detailed.
  # Pack options
    #versioningScheme: 'off' # 'off' | 'byPrereleaseNumber' | 'byEnvVar' | 'byBuildNumber'. Required when command = pack. Automatic package versioning. Default: off.
    #includeReferencedProjects: false # boolean. Optional. Use when versioningScheme = off && command = pack. Include referenced projects. Default: false.
    #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.
    #packTimezone: 'utc' # 'utc' | 'local'. Optional. Use when versioningScheme = byPrereleaseNumber && command = pack. Time zone. Default: utc.
    #includeSymbols: false # boolean. Optional. Use when command = pack. Create symbols package. Default: false.
    #toolPackage: false # boolean. Optional. Use when command = pack. Tool Package. Default: false.
  # Advanced
    #buildProperties: # string. Optional. Use when command = pack. Additional build properties. 
    #basePath: # string. Optional. Use when command = pack. Base path. 
    #verbosityPack: 'Detailed' # 'Quiet' | 'Normal' | 'Detailed'. Optional. Use when command = pack. Verbosity. Default: Detailed.

Insumos

command - de comando
string. Necessário. Valores permitidos: restore, pack, push, custom. Valor padrão: restore.

Especifica o comando NuGet a ser executado. Use o valor custom para adicionar argumentos ou usar um comando diferente.


restoreSolution - Caminho para solução, packages.configou project.json
Alias de entrada: solution. string. Necessário quando command = restore. Valor padrão: **/*.sln.

Especifica o caminho para a solução, packages.configou project.json arquivo que faz referência aos pacotes a serem restaurados.


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 padrão: select.

Especifica um feed de Artefatos e/ou NuGet.org do Azure para a tarefa usar com o valor select. Como alternativa, você pode confirmar um arquivo de NuGet.config em seu repositório de código-fonte e definir seu caminho como o valor usando o valor config.


vstsFeed - Use pacotes deste feed do Azure Artifacts/TFS. Selecione na lista suspensa ou digite [nome do projeto/]nome do feed.
Alias de entrada: feedRestore. string. Opcional. Use quando selectOrConfig = select && command = restore.

Especifica o feed selecionado no NuGet.configgerado . Você deve ter o Gerenciamento de Pacotes instalado e licenciado para especificar um feed aqui.


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

Especifica o feed selecionado no NuGet.configgerado . Você deve ter o Gerenciamento de Pacotes instalado e licenciado para especificar um feed aqui.


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

Inclui NuGet.org no NuGet.configgerado .


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

Especifica o caminho para o NuGet.config em seu repositório que determina 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 selectOrConfig = config && command = restore.

Especifica as credenciais a serem usadas para registros externos localizados no NuGet.configselecionado. Este é o nome da sua conexão de serviço NuGet. Para feeds nesta organização ou coleção, deixe isso em branco; As credenciais da compilação são usadas automaticamente.


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

Especifica as credenciais a serem usadas para registros externos localizados no NuGet.configselecionado. Este é o nome da sua conexão de serviço NuGet. Para feeds nesta conta ou coleção, deixe isso em branco; As credenciais da compilação são usadas automaticamente.


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

Impede que o NuGet use pacotes de caches de máquinas locais quando definido como true.


disableParallelProcessing - Desativar o processamento paralelo
boolean. Opcional. Use quando command = restore. Valor padrão: false.

Impede que o NuGet instale vários pacotes em processos paralelos quando definido como true.


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 em uma pasta packages/ ao lado da solução selecionada, packages.configou project.json.


verbosityRestore - Verbosity
string. Opcional. Use quando command = restore. Valores permitidos: Quiet, Normal, Detailed. Valor padrão: Detailed.

Especifica a quantidade de detalhes exibidos na saída.


packagesToPush - Caminho para o(s) pacote(s) NuGet para publicar
Alias de entrada: searchPatternPush. string. Necessário quando command = push. Valor padrão: $(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg.

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


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 contas/coleções)). Valor padrão: internal.

Especifica se o feed de destino é um feed/coleção interno ou um servidor NuGet externo.


nuGetFeedType - Local do feed de destino
string. Necessário quando command = push. Valores permitidos: internal (Esta conta/coleção), external (Servidor NuGet externo (incluindo outras contas/coleções)). Valor padrão: internal.

Especifica se o feed de destino é um feed/coleção interno ou um servidor NuGet externo.


publishVstsFeed - Feed de destino
Alias de entrada: feedPublish. string. Necessário quando command = push && nuGetFeedType = internal.

Especifica um feed hospedado nessa conta. Você deve ter os Artefatos do Azure instalados e licenciados para selecionar um feed aqui.


publishPackageMetadata - Publicar metadados de pipeline
boolean. Opcional. Use quando command = push && nuGetFeedType = internal. Valor padrão: true.

Altera o número da versão do subconjunto de pacotes alterados dentro de um conjunto de pacotes publicados continuamente.


allowPackageConflicts - Permitir que duplicatas sejam ignoradas
boolean. Opcional. Use quando command = push && nuGetFeedType = internal. Valor padrão: false.

Relata o sucesso da tarefa mesmo se alguns de seus pacotes forem rejeitados com erros de conflito 409.

Atualmente, essa opção só está disponível em Pipelines do Azure e agentes do Windows. Se NuGet.exe encontrar um conflito, a tarefa falhará. Essa opção não funcionará e a publicação falhará se você estiver em um ambiente de proxy.


publishFeedCredentials - servidor NuGet
Alias de entrada: externalEndpoint. string. Necessário quando command = push && nuGetFeedType = external.

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


verbosityPush - Verbosity
string. Opcional. Use quando command = push. Valores permitidos: Quiet, Normal, Detailed. Valor padrão: Detailed.

Especifica a quantidade de detalhes exibidos na saída.


packagesToPack - Caminho para arquivo(s) csproj ou nuspec para empacotar
Alias de entrada: searchPatternPack. string. Necessário quando command = pack. Valor padrão: **/*.csproj.

Especifica o padrão que a tarefa usa para procurar diretórios csproj 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.


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

Especifica a configuração a ser empacotada ao usar um arquivo csproj.


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

Especifica a pasta onde a tarefa cria pacotes. Se o valor estiver vazio, a tarefa criará pacotes na raiz de origem.


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 padrão: off.

Aplica o controle de versão automático do pacote dependendo do valor especificado. Esta cadeia de caracteres não pode ser usada com includeReferencedProjects. Os valores permitidos são:

  • byPrereleaseNumber - Use a data e hora: A tarefa gerará uma versão compatível com SemVerformatada como X.Y.Z-ci-datetime, onde você especifica os valores de X, Y e Z.
  • byEnvVar - Usar uma variável de ambiente: A tarefa usará uma variável de ambiente que você especificar e contém o número da versão que você deseja usar.
  • byBuildNumber - Use o número de compilação: A tarefa usará o número de compilação para fazer a versão do pacote.

Observação

Em Geral, defina o formato de compilação como $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r).


includeReferencedProjects - Incluir projetos referenciados
boolean. Opcional. Use quando versioningScheme = off && command = pack. Valor padrão: false.

Inclui projetos referenciados como dependências ou como parte do pacote. Não pode ser usado com o controle automático de versão de pacotes. Se um projeto referenciado tiver um arquivo nuspec correspondente que tenha o mesmo nome do projeto, esse projeto referenciado será adicionado como uma dependência. Caso contrário, o projeto referenciado é adicionado como parte do pacote. Saiba mais sobre como usando o comando pack para a CLI do NuGet para criar pacotes NuGet.


versionEnvVar - Variável 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 padrão: 1.

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


minorVersion - Menor
Alias de entrada: requestedMinorVersion. string. Necessá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. Necessário quando versioningScheme = byPrereleaseNumber && command = pack. Valor padrão: 0.

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


packTimezone - Fuso horário
string. Opcional. Use quando versioningScheme = byPrereleaseNumber && command = pack. Valores permitidos: utc, local (hora local do agente). Valor padrão: utc.

Especifica o fuso horário desejado usado para produzir a versão do pacote. Selecionar utc é recomendado se você estiver usando agentes de compilação hospedados, pois sua data e hora podem ser diferentes.


includeSymbols - Criar pacotes de símbolos
boolean. Opcional. Use quando command = pack. Valor padrão: false.

Especifica que o pacote contém fontes e símbolos. Quando usado com um arquivo .nuspec, isso cria um arquivo de pacote NuGet regular e o pacote de símbolos correspondente.


toolPackage - Pacote de ferramentas
boolean. Opcional. Use quando command = pack. Valor padrão: false.

Determina se os arquivos de saída do projeto devem estar na pasta da ferramenta.


buildProperties - Propriedades de compilação adicionais
string. Opcional. Use quando command = pack.

Especifica uma lista de pares 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.


basePath - do caminho base
string. Opcional. Use quando command = pack.

Especifica o caminho base dos arquivos definidos no arquivo nuspec.


verbosityPack - Verbosity
string. Opcional. Use quando command = pack. Valores permitidos: Quiet, Normal, Detailed. Valor padrão: Detailed.

Especifica a quantidade de detalhes exibidos na saída.


arguments - Comando e argumentos
string. Necessário quando command = custom.

Especifica o comando e os argumentos que serão passados para NuGet.exe para execução. Se o NuGet 3.5 ou posterior for usado, comandos autenticados como list, restoree publish em qualquer feed nesta organização ou coleção que o Serviço de Compilação de Coleção de Projetos tenha acesso serão autenticados automaticamente.


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 maneira recomendada de autenticar com Artefatos do Azure e outros repositórios NuGet. Essa tarefa não requer mais novos recursos e apenas bugs críticos são resolvidos.

Use esta tarefa para instalar e atualizar dependências de pacotes NuGet ou empacotar e publicar pacotes NuGet. Usa NuGet.exe e funciona com aplicativos .NET Framework. Para aplicativos .NET Core e .NET Standard, use a tarefa .NET Core.

Se o seu código depender de pacotes NuGet, certifique-se de adicionar esta etapa antes de sua tarefa Visual Studio Build. Certifique-se também de desmarcar a caixa de seleção Restaurar pacotes NuGet preterida nessa tarefa.

Se você estiver trabalhando com o .NET Core ou o .NET Standard, use a tarefa .NET Core, que tem suporte total para todos os cenários de pacote e é atualmente suportada pelo dotnet.

Dica

Esta versão da tarefa NuGet usa o NuGet 4.1.0 por padrão. Para selecionar uma versão diferente do NuGet, use o Tool Installer.

Esquemas de controle de versão

Para byPrereleaseNumber, a versão será definida com os valores escolhidos para a versão principal, a versão secundária e o patch, além da data e hora, no formato yyyymmdd-hhmmss.

Para byEnvVar, a versão será definida para o valor da variável de ambiente que tem o nome especificado pelo parâmetro versionEnvVar, por exemplo, MyVersion (sem $, apenas o nome da variável de ambiente). Verifique se a variável de ambiente está definida como um SemVer adequado, como 1.2.3 ou 1.2.3-beta1.

Para byBuildNumber, a versão será definida usando o número de compilação da execução do pipeline. Este é o valor especificado para a propriedade name do pipeline, que é salva na variável de ambiente BUILD_BUILDNUMBER). Certifique-se de que o número de compilação que está sendo usado contém um SemVer adequado, como 1.0.$(Rev:r). Ao usar byBuildNumber, a tarefa extrairá a versão pontilhada, 1.2.3.4, da cadeia de caracteres do número de compilação e usará apenas essa parte. O restante da string será descartado. Se você quiser usar o número de compilação como está, você pode usar byEnvVar como descrito acima e definir versionEnvVar como BUILD_BUILDNUMBER.

Migrar do NuGetInstaller@0 ou NuGetRestore@1

NuGetInstaller@0 e NuGetRestore@1 foram preteridos e você deve substituí-los em seu pipeline por NuGetCommand@2.

Se você estava usando NuGetInstaller@0 com restoreMode: restore, configure as seguintes entradas ao usar NuGetCommand@2.

NuGetCommand@2 entrada de tarefas Valor
command restore
restoreSolution Caminho do arquivo .sln

Se você estava usando NuGetInstaller@0 com restoreMode: install, configure as seguintes entradas ao usar NuGetCommand@2.

NuGetCommand@2 entrada de tarefas Valor
command custom
arguments Qual seria a aparência do comando de instalação completa na CLI do NuGet. Por exemplo, se você quiser executar o equivalente a nuget install ninject -OutputDirectory c:\proj em seu pipeline, o parâmetro arguments será install ninject -OutputDirectory c:\proj. Se você estava usando o parâmetro NuGetInstaller@0nuGetRestoreArgs estes também agora vão em arguments.

Se você estava usando NuGetRestore@1, configure as seguintes entradas ao usar NuGetCommand@2.

NuGetCommand@2 entrada de tarefas Valor
command restore
restoreSolution Caminho do arquivo .sln

Semelhante ao uso NuGetRestore@1 ou a opção NuGetInstaller@0restore, NuGetCommand@2 tem entradas para definir o feed, decidir entre select ou config, especificar o caminho para o arquivo NuGet.config e usar pacotes de nuget.org.

Para obter mais informações, consulte os seguintes exemplos.

Suporte para imagens mais recentes hospedadas no Ubuntu

A partir do Ubuntu 24.04, os agentes hospedados pela Microsft não serão fornecidos com mono que é necessário para executar o cliente NuGet subjacente que alimenta NuGetCommand@2. Os usuários desta tarefa no Ubuntu devem migrar para o NuGetAuthenticate@1 de tarefas multiplataforma suportado a longo prazo com a CLI do .NET.

Migrando para a CLI do .NET no Ubuntu

A tarefa NuGet Authenticate tratará da injeção de credenciais nos locais necessários para que as ferramentas do cliente se autentiquem como sua identidade de pipeline. Consulte a documentação vinculada para obter instruções, perguntas frequentes e exemplos de uso do NuGet Authenticate com dotnet.

Se comandos da CLI dotnet não oferecer suporte ao seu cenário, informe isso à equipe da CLI do .NET como um problema. Você pode continuar a fixar sua imagem de agente para Ubuntu 22.04 ou anterior. O suporte ao Ubuntu 22.04 continuará até que o Ubuntu 26.04 seja disponibilizado ao público, não antes de 2026.

Exemplos

Restaurar

Restaure todas as suas soluções com pacotes a partir de um feed selecionado.

# Restore from a project scoped feed in the same organization
- task: NuGetCommand@2
  inputs:
    command: 'restore'
    feedsToUse: 'select'
    vstsFeed: 'my-project/my-project-scoped-feed'
    includeNuGetOrg: false
    restoreSolution: '**/*.sln'
# Restore from an organization scoped feed in the same organization
- task: NuGetCommand@2
  inputs:
    command: 'restore'
    feedsToUse: 'select'
    vstsFeed: 'my-organization-scoped-feed'
    restoreSolution: '**/*.sln'
# Restore from a feed in a different organization
- task: NuGetCommand@2
  inputs:
    command: 'restore'
    feedsToUse: config
    nugetConfigPath: ./nuget.config
    restoreSolution: '**/*.sln'
    externalFeedCredentials: 'MyServiceConnectionName'
    noCache: true
  continueOnError: true
# Restore from feed(s) set in nuget.config
- task: NuGetCommand@2
  inputs:
    command: 'restore'
    feedsToUse: 'config'
    nugetConfigPath: 'nuget.config'

Embalagem

Crie um pacote NuGet na pasta de destino.

# Package a project
- task: NuGetCommand@2
  inputs:
    command: 'pack'
    packagesToPack: '**/*.csproj'
    packDestination: '$(Build.ArtifactStagingDirectory)'

Empurrar

Observação

Os artefatos de pipeline são baixados para o diretório Pipeline.Workspace e para o diretório System.ArtifactsDirectory para pipelines de liberação clássicos. packagesToPush valor pode ser definido como $(Pipeline.Workspace)/**/*.nupkg ou $(System.ArtifactsDirectory)/**/*.nupkg, respectivamente.

  • Enviar/publicar um pacote em um feed definido em seu NuGet.config.

    # Push a project
    - task: NuGetCommand@2
      inputs:
        command: 'push'
        packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg'
        feedsToUse: 'config'
        nugetConfigPath: '$(Build.WorkingDirectory)/NuGet.config'
    
  • Enviar/publicar um pacote em um feed com escopo da organização

    # Push a project
    - task: NuGetCommand@2
      inputs:
        command: 'push'
        nuGetFeedType: 'internal'
        publishVstsFeed: 'my-organization-scoped-feed'
    
  • Enviar/publicar um pacote em um feed com escopo de projeto

    # Push a project
    - task: NuGetCommand@2
      inputs:
        command: 'push'
        nuGetFeedType: 'internal'
        publishVstsFeed: 'my-project/my-project-scoped-feed'
    
  • Enviar/publicar um pacote para NuGet.org

    # Push a project
    - task: NuGetCommand@2
      inputs:
        command: 'push'
        feedsToUse: 'config'
        includeNugetOrg: 'true'
    

Personalizado

Execute qualquer outro comando do NuGet além dos padrão: pack, push e restore.

# list local NuGet resources.
- task: NuGetCommand@2
  displayName: 'list locals'
  inputs:
    command: custom
    arguments: 'locals all -list'

Requerimentos

Exigência Descrição
Tipos de pipeline YAML, Construção clássica, Versão clássica
Funciona em Agente, DeploymentGroup
Exigências Nenhum
Capacidades 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 Embalagem
Exigência Descrição
Tipos de pipeline YAML, Construção clássica, Versão clássica
Funciona em Agente, DeploymentGroup
Exigências Nenhum
Capacidades 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 Embalagem