NuGetCommand@2 - Tarefa NuGet v2

Utilize esta tarefa para restaurar, empacotar ou emitir pacotes NuGet ou executar um comando NuGet. Esta tarefa suporta feeds NuGet.org e autenticados, como Artefactos do Azure e MyGet. Esta tarefa também utiliza NuGet.exe e funciona com aplicações .NET Framework. Para aplicações .NET Core e .NET Standard, utilize a tarefa .NET Core.

Syntax

# 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 && command = push. 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.

Entradas

command - Comando
string. Obrigatório. Valores permitidos: restore, pack, push, custom. Valor predefinido: restore.

Especifica o comando NuGet a executar. Utilize o custom valor para adicionar argumentos ou para utilizar um comando diferente.


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

Especifica o caminho para a solução, packages.configou project.json ficheiro que referencia os pacotes a serem restaurados.


feedsToUse - Feeds a utilizar
Alias de entrada: selectOrConfig. string. Necessário quando command = restore. Valores permitidos: select (Feeds selecionados aqui), config (Feeds na minha NuGet.config). Valor predefinido: select.

Especifica um feed dos Artefactos do Azure e/ou NuGet.org para a tarefa utilizar com o select valor. Em alternativa, pode consolidar um NuGet.config ficheiro no repositório de código fonte e definir o respetivo caminho como o valor com o config valor .


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

Especifica o feed selecionado no NuGet.config. Tem de ter a Gestão de Pacotes instalada e licenciada para especificar um feed aqui.


includeNuGetOrg - Utilizar pacotes do NuGet.org
boolean. Opcional. Utilize quando selectOrConfig = select && command = restore. Valor predefinido: true.

Inclui NuGet.org no . gerado NuGet.config.


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

Especifica o caminho para o NuGet.config no 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. Utilize quando selectOrConfig = config && command = restore.

Especifica as credenciais a utilizar para registos externos localizados no .NuGet.config Este é o nome da sua ligação de serviço NuGet. Para feeds nesta organização ou coleção, deixe isto em branco; As credenciais da compilação são utilizadas automaticamente.


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

Especifica as credenciais a utilizar para registos externos localizados no .NuGet.config Este é o nome da sua ligação de serviço NuGet. Para feeds nesta conta ou coleção, deixe isto em branco; As credenciais da compilação são utilizadas automaticamente.


noCache - Desativar a cache local
boolean. Opcional. Utilize quando command = restore. Valor predefinido: false.

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


disableParallelProcessing - Desativar o processamento paralelo
boolean. Opcional. Utilize quando command = restore. Valor predefinido: false.

Impede o NuGet de instalar vários pacotes em processos paralelos quando definido como true.


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

Especifica a pasta na qual os pacotes são instalados. Se não for especificada nenhuma pasta, os pacotes são restaurados para uma packages/ pasta juntamente com a solução selecionada, packages.config, ou project.json.


verbosityRestore - Verbosidade
string. Opcional. Utilize quando command = restore. Valores permitidos: Quiet, , NormalDetailed. Valor predefinido: Detailed.

Especifica a quantidade de detalhes apresentados na saída.


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

Especifica o padrão a corresponder ou o caminho para nupkg os ficheiros a carregar. Vários padrões podem ser separados por ponto e vírgula.


nuGetFeedType - Localização 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 predefinido: internal.

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


nuGetFeedType - Localização 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 predefinido: 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 alojado nesta conta. Tem de ter os Artefactos do Azure instalados e licenciados para selecionar um feed aqui.


publishPackageMetadata - Publicar metadados do pipeline
boolean. Opcional. Utilize quando command = push && nuGetFeedType = internal && command = push. Valor predefinido: true.

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


allowPackageConflicts - Permitir que os duplicados sejam ignorados
boolean. Opcional. Utilize quando command = push && nuGetFeedType = internal. Valor predefinido: false.

Comunica o êxito da tarefa mesmo que alguns dos seus pacotes sejam rejeitados com erros de Conflito 409.

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


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

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


verbosityPush - Verbosidade
string. Opcional. Utilize quando command = push. Valores permitidos: Quiet, , NormalDetailed. Valor predefinido: Detailed.

Especifica a quantidade de detalhes apresentados na saída.


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

Especifica o padrão que a tarefa utiliza para procurar diretórios csproj para embalar.

Pode separar múltiplos padrões com um ponto e vírgula e tornar um padrão negativo ao prefixá-lo com !. Exemplo: **\*.csproj;!**\*.Tests.csproj.


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

Especifica a configuração para empacotar ao utilizar um ficheiro csproj.


packDestination - Pasta do pacote
Alias de entrada: outputDir. string. Opcional. Utilize quando command = pack. Valor predefinido: $(Build.ArtifactStagingDirectory).

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


versioningScheme - Controlo de versões automática do pacote
string. Necessário quando command = pack. Valores permitidos: off, byPrereleaseNumber (Utilize a data e hora), byEnvVar (Utilize uma variável de ambiente) byBuildNumber (Utilize o número de compilação). Valor predefinido: off.

Aplica o controlo de versões automática do pacote consoante o valor especificado. Esta cadeia não pode ser utilizada com includeReferencedProjects. Os valores permitidos são:

  • byPrereleaseNumber - Utilize a data e hora: a tarefa irá gerar uma versão compatível com SemVer formatada como X.Y.Z-ci-datetime, onde especifica os valores de X, Y e Z.
  • byEnvVar- Utilizar uma variável de ambiente: a tarefa utilizará uma variável de ambiente que especifica e contém o número da versão que pretende utilizar.
  • byBuildNumber - Utilize o número da compilação: a tarefa utilizará o número de compilação para versão do pacote.

Nota

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


includeReferencedProjects - Incluir projetos referenciados
boolean. Opcional. Utilize quando versioningScheme = off && command = pack. Valor predefinido: false.

Inclui projetos referenciados como dependências ou como parte do pacote. Não é possível utilizar o controlo de versões automático do pacote. Se um projeto referenciado tiver um ficheiro correspondente nuspec com o mesmo nome que o projeto, esse projeto referenciado é adicionado como uma dependência. Caso contrário, o projeto referenciado é adicionado como parte do pacote. Saiba mais sobre como utilizar o comando pack para a CLI NuGet para criar pacotes NuGet.


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

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


majorVersion - Principal
Alias de entrada: requestedMajorVersion. string. Necessário quando versioningScheme = byPrereleaseNumber && command = pack. Valor predefinido: 1.

A X versão in X.Y.Z.


minorVersion - Menor
Alias de entrada: requestedMinorVersion. string. Necessário quando versioningScheme = byPrereleaseNumber && command = pack. Valor predefinido: 0.

A Y versão in X.Y.Z.


patchVersion - Patch
Alias de entrada: requestedPatchVersion. string. Necessário quando versioningScheme = byPrereleaseNumber && command = pack. Valor predefinido: 0.

A Z versão in X.Y.Z.


packTimezone - Fuso horário
string. Opcional. Utilize quando versioningScheme = byPrereleaseNumber && command = pack. Valores permitidos: utc, local (Hora local do agente). Valor predefinido: utc.

Especifica o fuso horário pretendido utilizado para produzir a versão do pacote. A seleção utc é recomendada se estiver a utilizar agentes de compilação alojados, uma vez que a respetiva data e hora poderão ser diferentes.


includeSymbols - Criar pacote de símbolos
boolean. Opcional. Utilize quando command = pack. Valor predefinido: false.

Especifica que o pacote contém origens e símbolos. Quando utilizado com um .nuspec ficheiro, este procedimento cria um ficheiro de pacote NuGet normal e o pacote de símbolos correspondente.


toolPackage - Pacote de Ferramentas
boolean. Opcional. Utilize quando command = pack. Valor predefinido: false.

Determina se os ficheiros de saída do projeto devem estar na pasta de ferramentas.


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

Especifica uma lista de pares token=valor, separados por ponto e vírgula, em que cada ocorrência de $token$ no .nuspec ficheiro será substituída pelo valor especificado. Os valores podem ser cadeias em aspas.


basePath - Caminho base
string. Opcional. Utilize quando command = pack.

Especifica o caminho base dos ficheiros definidos no nuspec ficheiro.


verbosityPack - Verbosidade
string. Opcional. Utilize quando command = pack. Valores permitidos: Quiet, , NormalDetailed. Valor predefinido: Detailed.

Especifica a quantidade de detalhes apresentados na saída.


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

Especifica o comando e os argumentos que serão transmitidos para a NuGet.exe execução. Se for utilizado o NuGet 3.5 ou posterior, os comandos autenticados como list, restoree publish contra qualquer feed nesta organização ou coleção a que o Project Collection Build Service tenha acesso serão automaticamente autenticados.


Opções de controlo de tarefas

Todas as tarefas têm opções de controlo para além das entradas de tarefas. Para obter mais informações, veja Opções de controlo e propriedades de tarefas comuns.

Variáveis de saída

Nenhum.

Observações

Importante

A tarefa Autenticar NuGet é a nova forma recomendada de autenticar com os Artefactos do Azure e outros repositórios NuGet. Esta tarefa já não utiliza novas funcionalidades e apenas são resolvidos erros críticos.

Utilize esta tarefa para instalar e atualizar dependências de pacotes NuGet ou empacotar e publicar pacotes NuGet. Utiliza o NuGet.exe e funciona com aplicações .NET Framework. Para aplicações .NET Core e .NET Standard, utilize a tarefa .NET Core.

Se o seu código depender de pacotes NuGet, certifique-se de que adiciona este passo antes da sua tarefa de Compilação do Visual Studio. Certifique-se também de que limpa a caixa de verificação Restaurar Pacotes NuGet preteridos nessa tarefa.

Se estiver a trabalhar com o .NET Core ou o .NET Standard, utilize a tarefa .NET Core , que tem suporte total para todos os cenários de pacotes e é atualmente suportada pelo dotnet.

Dica

Esta versão da tarefa NuGet utiliza o NuGet 4.1.0 por predefinição. Para selecionar uma versão diferente do NuGet, utilize o Instalador de Ferramentas.

Esquemas de controlo de versões

Para byPrereleaseNumber, a versão será definida para os valores que escolher 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 como o valor da variável de ambiente que tem o nome especificado pelo parâmetro versionEnvVar , por exemplo MyVersion (não $, apenas o nome da variável de ambiente). Certifique-se de que 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 com o número de compilação da execução do pipeline. Este é o valor especificado para a propriedade do name pipeline, que é guardada na variável de BUILD_BUILDNUMBER ambiente). Certifique-se de que o número de compilação que está a ser utilizado contém um SemVer adequado, como 1.0.$(Rev:r). Ao utilizar byBuildNumber, a tarefa extrairá a versão pontilhada, 1.2.3.4, da cadeia de número de compilação e utilizará apenas essa parte. O resto da cadeia será largado. Se quiser utilizar o número da compilação tal como está, pode utilizar byEnvVar conforme descrito acima e definir versionEnvVar como BUILD_BUILDNUMBER.

Migrar de NuGetInstaller@0 ou NuGetRestore@1

NuGetInstaller@0 e NuGetRestore@1 são preteridos e deve substituí-los no seu pipeline por NuGetCommand@2.

Se estava a utilizar NuGetInstaller@0 com restoreMode: restoreo , configure as seguintes entradas ao utilizar NuGetCommand@2.

entrada da tarefa NuGetCommand@2 Valor
command restore
restoreSolution Encaminhar o ficheiro .sln

Se estava a utilizar NuGetInstaller@0 com restoreMode: installo , configure as seguintes entradas ao utilizar NuGetCommand@2.

entrada da tarefa NuGetCommand@2 Valor
command custom
arguments O aspeto do comando de instalação completo na CLI nuGet. Por exemplo, se quiser executar o equivalente a nuget install ninject -OutputDirectory c:\proj no pipeline, o arguments parâmetro será install ninject -OutputDirectory c:\proj. Se estava a utilizar o NuGetInstaller@0nuGetRestoreArgs parâmetro, estes também serão agora apresentados em arguments.

Se estava a utilizar NuGetRestore@1, configure as seguintes entradas ao utilizar NuGetCommand@2.

entrada da tarefa NuGetCommand@2 Valor
command restore
restoreSolution Encaminhar o ficheiro .sln

Semelhante à utilização NuGetRestore@1 ou à opção NuGetInstaller@0restore , NuGetCommand@2 tem entradas para definir o feed, decidir entre select ou config, especificar o caminho para o NuGet.config ficheiro e utilizar pacotes de nuget.org.

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

Exemplos

Restauro

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'

Pacote

Crie um pacote NuGet na pasta de destino.

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

Push

Nota

Os artefactos do pipeline são transferidos para o Pipeline.Workspace diretório e para o System.ArtifactsDirectory diretório para pipelines de lançamento clássicos. packagesToPush o valor pode ser definido como $(Pipeline.Workspace)/**/*.nupkg ou $(System.ArtifactsDirectory)/**/*.nupkg respetivamente.

  • Emitir/Publicar um pacote num feed definido no 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 num feed com âmbito de organização

    # Push a project
    - task: NuGetCommand@2
      inputs:
        command: 'push'
        nuGetFeedType: 'internal'
        publishVstsFeed: 'my-organization-scoped-feed'
    
  • Enviar/Publicar um pacote num feed com âmbito 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 NuGet para além dos predefinidos: pack, push e restore.

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

Requisitos

Requisito Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agente, DeploymentGroup
Exigências Nenhuma
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes na tarefa.
Restrições de comandos Qualquer
Variáveis de tabelas definidas Qualquer
Versão do agente 2.144.0 ou superior
Categoria da tarefa Pacote
Requisito Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agente, DeploymentGroup
Exigências Nenhuma
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes na tarefa.
Restrições de comandos Qualquer
Variáveis de tabelas definidas Qualquer
Versão do agente 2.115.0 ou superior
Categoria da tarefa Pacote