Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Используйте эту задачу для восстановления, упаковки или отправки пакетов NuGet или выполнения команды NuGet. Эта задача поддерживает NuGet.org и прошедшие проверку подлинности веб-каналы, такие как Артефакты Azure и MyGet. Эта задача также использует NuGet.exe и работает с приложениями .NET Framework. Для приложений .NET Core и .NET Standard используйте задачу .NET Core.
Tip
Используйте NuGetAuthenticate@1 в воронке продаж перед этой задачей. Дополнительные сведения см. в статье Почему конвейер сборки завершается сбоем и запрашивает проверку подлинности одного Sign-On (SSO)?.
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. 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.
Inputs
command
-
Команда
string. Required. Допустимые значения: restore, pack, push, custom. Значение по умолчанию: restore.
Указывает команду NuGet для выполнения. Используйте значение custom, чтобы добавить аргументы или использовать другую команду.
restoreSolution
-
Путь к решению, packages.configили project.json
Псевдоним ввода: solution.
string. Требуется, если command = restore. Значение по умолчанию: **/*.sln.
Указывает путь к решению, packages.configили файлу project.json, который ссылается на пакеты для восстановления.
веб-каналы feedsToUse - для использования
Псевдоним ввода: selectOrConfig.
string. Требуется, если command = restore. Допустимые значения: select (веб-каналы) я выбираем здесь), config (веб-каналы в моей NuGet.config). Значение по умолчанию: select.
Указывает веб-канал из артефактов Azure и/или NuGet.org для задачи, используемой с значением select. Кроме того, можно зафиксировать файл NuGet.config в репозитории исходного кода и задать путь в качестве значения с помощью значения config.
vstsFeed
-
Использовать пакеты из этого веб-канала Артефактов Azure или TFS. Выберите в раскрывающемся списке или введите [имя проекта/]имя веб-канала.
Псевдоним ввода: feedRestore.
string. Optional. Используется при selectOrConfig = select && command = restore.
Указывает выбранный веб-канал в созданном NuGet.config. Необходимо установить и лицензировать управление пакетами, чтобы указать здесь веб-канал.
vstsFeed
-
Использовать пакеты из этого веб-канала Azure Artifacts/TFS
Псевдоним ввода: feedRestore.
string. Optional. Используется при selectOrConfig = select && command = restore.
Указывает выбранный веб-канал в созданном NuGet.config. Необходимо установить и лицензировать управление пакетами, чтобы указать здесь веб-канал.
includeNuGetOrg
-
Использование пакетов из NuGet.org
boolean. Optional. Используется при selectOrConfig = select && command = restore. Значение по умолчанию: true.
Включает NuGet.org в созданный NuGet.config.
Путь к NuGet.confignugetConfigPath -
string. Optional. Используется при selectOrConfig = config && command = restore.
Указывает путь к NuGet.config в репозитории, который определяет каналы, из которых необходимо восстановить пакеты.
externalFeedCredentials
-
Учетные данные для веб-каналов за пределами этой организации или коллекции
Псевдоним ввода: externalEndpoints.
string. Optional. Используется при selectOrConfig = config && command = restore.
Указывает учетные данные, используемые для внешних реестров, расположенных в выбранной NuGet.config. Это имя подключения службы NuGet. Для веб-каналов в этой организации или коллекции оставьте это пустым; Учетные данные сборки используются автоматически.
noCache
-
Отключить локальный кэш
boolean. Optional. Используется при command = restore. Значение по умолчанию: false.
Не позволяет NuGet использовать пакеты из локальных кэшей компьютеров, если задано значение true.
disableParallelProcessing
-
Отключить параллельную обработку
boolean. Optional. Используется при command = restore. Значение по умолчанию: false.
Не позволяет NuGet устанавливать несколько пакетов в параллельных процессах при установке true.
restoreDirectory
-
Каталог назначения
Псевдоним ввода: packagesDirectory.
string. Optional. Используется при command = restore.
Указывает папку, в которой установлены пакеты. Если папка не указана, пакеты восстанавливаются в папку packages/ вместе с выбранным решением, packages.configили project.json.
verbosityRestore
-
Многословие
string. Optional. Используется при command = restore. Допустимые значения: Quiet, Normal, Detailed. Значение по умолчанию: Detailed.
Указывает объем сведений, отображаемых в выходных данных.
packagesToPush
-
Путь к пакетам NuGet для публикации
Псевдоним ввода: searchPatternPush.
string. Требуется, если command = push. Значение по умолчанию: $(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg.
Указывает шаблон, соответствующий или путь к nupkg файлам для отправки. Несколько шаблонов можно разделить точкой с запятой.
расположение целевого веб-канала nuGetFeedType -
string. Требуется, если command = push. Допустимые значения: internal (эта организация или коллекция), external (внешний сервер NuGet (включая другие учетные записи и коллекции)). Значение по умолчанию: internal.
Указывает, является ли целевой веб-канал внутренним веб-каналом или коллекцией или внешним сервером NuGet.
publishVstsFeed
-
Целевой фид
Псевдоним ввода: feedPublish.
string. Требуется, если command = push && nuGetFeedType = internal.
Указывает веб-канал, размещенный в этой учетной записи. Чтобы выбрать веб-канал, необходимо установить и лицензировать Azure Artifacts.
publishPackageMetadata
-
публикации метаданных конвейера
boolean. Optional. Используется при command = push && nuGetFeedType = internal. Значение по умолчанию: true.
Изменяет номер версии подмножества измененных пакетов в наборе постоянно опубликованных пакетов.
allowPackageConflicts
-
Разрешить пропускать повторяющиеся
boolean. Optional. Используется при command = push && nuGetFeedType = internal. Значение по умолчанию: false.
Сообщает об успешном выполнении задачи, даже если некоторые из пакетов отклонены с ошибками конфликта 409.
В настоящее время этот параметр доступен только в Azure Pipelines и агентах Windows. Если NuGet.exe сталкивается с конфликтом, задача завершится ошибкой. Этот параметр не будет работать, и публикация завершится ошибкой, если вы находитесь в прокси-среде.
publishFeedCredentials
-
Сервер NuGet
Псевдоним ввода: externalEndpoint.
string. Требуется, если command = push && nuGetFeedType = external.
Указывает подключение службы NuGet, содержащее учетные данные внешнего сервера NuGet.
verbosityPush
-
Многословие
string. Optional. Используется при command = push. Допустимые значения: Quiet, Normal, Detailed. Значение по умолчанию: Detailed.
Указывает объем сведений, отображаемых в выходных данных.
packagesToPack
-
Путь к csproj или nuspec-файлам для упаковки
Псевдоним ввода: searchPatternPack.
string. Требуется, если command = pack. Значение по умолчанию: **/*.csproj.
Указывает шаблон, используемый задачей для поиска каталогов csproj для упаковки.
Можно разделить несколько шаблонов с запятой, и вы можете сделать шаблон отрицательным, префиксируя его с помощью !. Пример: **\*.csproj;!**\*.Tests.csproj.
Конфигурация configuration - для упаковки
Псевдоним ввода: configurationToPack.
string. Optional. Используется при command = pack. Значение по умолчанию: $(BuildConfiguration).
Указывает конфигурацию для упаковки при использовании csproj-файла.
packDestination
-
Папка с пакетами
Псевдоним ввода: outputDir.
string. Optional. Используется при command = pack. Значение по умолчанию: $(Build.ArtifactStagingDirectory).
Указывает папку, в которой задача создает пакеты. Если значение пусто, задача создает пакеты в корневом каталоге источника.
versioningScheme
-
автоматическое управление версиями пакетов
string. Требуется, если command = pack. Допустимые значения: off, byPrereleaseNumber (использовать дату и время), byEnvVar (использование переменной среды), byBuildNumber (использовать номер сборки). Значение по умолчанию: off.
Применяет автоматическое управление версиями пакетов в зависимости от указанного значения. Эту строку нельзя использовать с includeReferencedProjects. Допустимые значения:
-
byPrereleaseNumber- Использоватьдаты и времени: задача создаст версию SemVer,совместимую сX.Y.Z-ci-datetime, где указаны значения X, Y и Z. -
byEnvVar- Использовать переменную среды. Задача будет использовать переменную среды, указанную и содержащую номер версии, который требуется использовать. -
byBuildNumber- использовать номер сборки: задача будет использовать номер сборки для версии пакета.
Note
В разделе "Общие" задайте формат сборки для $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r).
includeReferencedProjects
-
Включить ссылки на проекты
boolean. Optional. Используется при versioningScheme = off && command = pack. Значение по умолчанию: false.
Включает ссылки на проекты в виде зависимостей или в составе пакета. Невозможно использовать с автоматическим управление версиями пакетов. Если у указанного проекта есть соответствующий файл nuspec, имеющий то же имя, что и проект, то этот ссылающийся проект добавляется в качестве зависимости. В противном случае указанный проект добавляется как часть пакета. Дополнительные сведения о с помощью команды пакета для Интерфейса командной строки NuGet для создания пакетов NuGet.
versionEnvVar
-
Переменная окружения
string. Требуется, если versioningScheme = byEnvVar && command = pack.
Задает имя переменной без $, $envили %.
majorVersion
-
Майор
Псевдоним ввода: requestedMajorVersion.
string. Требуется, если versioningScheme = byPrereleaseNumber && command = pack. Значение по умолчанию: 1.
В X версии X.Y.Z.
minorVersion
-
Несовершеннолетний
Псевдоним ввода: requestedMinorVersion.
string. Требуется, если versioningScheme = byPrereleaseNumber && command = pack. Значение по умолчанию: 0.
В Y версии X.Y.Z.
patchVersion
-
Заплата
Псевдоним ввода: requestedPatchVersion.
string. Требуется, если versioningScheme = byPrereleaseNumber && command = pack. Значение по умолчанию: 0.
В Z версии X.Y.Z.
packTimezone
-
Часовой пояс
string. Optional. Используется при versioningScheme = byPrereleaseNumber && command = pack. Допустимые значения: utc, local (локальное время агента). Значение по умолчанию: utc.
Указывает требуемый часовой пояс, используемый для создания версии пакета. При использовании размещенных агентов сборки рекомендуется выбрать utc, так как их дата и время могут отличаться.
includeSymbols
-
создание пакета символов
boolean. Optional. Используется при command = pack. Значение по умолчанию: false.
Указывает, что пакет содержит источники и символы. При использовании с файлом .nuspec это создает обычный файл пакета NuGet и соответствующий пакет символов.
toolPackage
-
Набор инструментов
boolean. Optional. Используется при command = pack. Значение по умолчанию: false.
Определяет, должны ли выходные файлы проекта находиться в папке средства.
buildProperties
-
дополнительные свойства сборки
string. Optional. Используется при command = pack.
Указывает список пар token=value, разделенных точкой с запятой, где каждое вхождение $token$ в файле .nuspec будет заменено заданным значением. Значения могут быть строками в кавычках.
basePath
-
Путь к основанию
string. Optional. Используется при command = pack.
Указывает базовый путь к файлам, определенным в файле nuspec.
verbosityPack
-
Многословие
string. Optional. Используется при command = pack. Допустимые значения: Quiet, Normal, Detailed. Значение по умолчанию: Detailed.
Указывает объем сведений, отображаемых в выходных данных.
arguments
-
команды и аргументы
string. Требуется, если command = custom.
Указывает команду и аргументы, которые будут переданы в NuGet.exe для выполнения. Если используется NuGet 3.5 или более поздней версии, прошедшие проверку подлинности команды, такие как list, restoreи publish для любого веб-канала в этой организации или коллекции, к которым служба сборки проекта имеет доступ, будет автоматически проходить проверку подлинности.
Параметры управления задачами
Все задачи имеют параметры управления в дополнение к входным данным задачи. Дополнительные сведения см. в разделе Параметры управления и общие свойства задач.
Выходные переменные
None.
Remarks
Important
Если вы хотите пройти проверку подлинности с помощью Azure Artifacts или других репозиториев NuGet, необходимо использовать задачу NuGet Authenticate вместо задачи NuGetCommand@2 . Задача NuGetCommand@2 больше не обновляется новыми функциями, а устраняются только критические ошибки.
Используйте эту задачу для восстановления, упаковки или отправки пакетов NuGet, а также для выполнения команд NuGet. Эта задача использует NuGet.exe и работает с приложениями .NET Framework. Если вы работаете с .NET Core или .NET Standard, используйте задачу .NET Core , которая полностью поддерживает все сценарии пакетов и в настоящее время поддерживается dotnet.
Если код зависит от пакетов NuGet и вам необходимо восстановить эти зависимости перед сборкой проекта с помощью задачи "Сборка Visual Studio ", вы можете использовать задачи nugetAuthenticate и командной строки для восстановления пакетов. Поместите обе задачи перед этапом сборки, чтобы убедиться, что все зависимости доступны до начала сборки. Дополнительные сведения см. в статье Восстановление пакетов NuGet .
При использовании задачи "Сборка Visual Studio" обязательно оставьте аргумент restoreNugetPackages пустым, так как параметр "Восстановить пакеты NuGet" в задаче VSBuild@1 является устаревшим.
Tip
Эта версия задачи NuGet использует NuGet 4.1.0 по умолчанию. Чтобы выбрать другую версию NuGet, используйте установщик средств.
Схемы управления версиями
Для byPrereleaseNumber в качестве версии будут установлены значения, выбранные вами для основной версии, дополнительной версии и патча, а также дата и время в формате yyyymmdd-hhmmss.
Для byEnvVar версия будет установлена в значение переменной окружения, имя которой указано в параметре versionEnvVar , например MyVersion (нет $, просто имя переменной окружения). Убедитесь, что для переменной среды задано соответствующее значение SemVer, например 1.2.3 или 1.2.3-beta1.
Для byBuildNumber версия будет задана с использованием номера сборки прогона конвейера. Это значение, указанное для свойства name конвейера, которое сохраняется в переменной среды BUILD_BUILDNUMBER). Убедитесь, что используемый номер сборки содержит правильный SemVer, например 1.0.$(Rev:r). При использовании byBuildNumber задача извлечет версию 1.2.3.4с точкой , из строки номера сборки и будет использовать только эту часть. Остальная часть строки будет удалена. Если вы хотите использовать номер сборки как есть, вы можете использовать byEnvVar , как описано выше, и установить versionEnvVar в значение BUILD_BUILDNUMBER.
Миграция из NuGetInstaller@0 или NuGetRestore@1
NuGetInstaller@0 и NuGetRestore@1 устарели, и их следует заменить на NuGetCommand@2.
Если вы использовали NuGetInstaller@0 с restoreMode: restore, настройте следующие входные данные при использовании NuGetCommand@2.
| входные данные задачи NuGetCommand@2 | Value |
|---|---|
command |
restore |
restoreSolution |
Путь к файлу .sln |
Если вы использовали NuGetInstaller@0 с restoreMode: install, настройте следующие входные данные при использовании NuGetCommand@2.
| входные данные задачи NuGetCommand@2 | Value |
|---|---|
command |
custom |
arguments |
Как будет выглядеть полная команда установки в интерфейсе командной строки NuGet. Например, если вы хотите запустить эквивалент nuget install ninject -OutputDirectory c:\proj в конвейере, параметр arguments будет install ninject -OutputDirectory c:\proj. Если вы использовали параметр NuGetInstaller@0nuGetRestoreArgs, они также теперь идут в arguments. |
Если вы использовали NuGetRestore@1, настройте следующие входные данные при использовании NuGetCommand@2.
| входные данные задачи NuGetCommand@2 | Value |
|---|---|
command |
restore |
restoreSolution |
Путь к файлу .sln |
Аналогично использованию NuGetRestore@1 или параметру NuGetInstaller@0restore, NuGetCommand@2 имеет входные данные для задания веб-канала, выбора между select или config, укажите путь к файлу NuGet.config и использовать пакеты из nuget.org.
Дополнительные сведения см. в следующих примерах.
Поддержка новых размещенных образов Ubuntu
Начиная с Ubuntu 24.04, размещенные в Microsft агенты не будут отправляться с моно, который требуется для запуска базового клиента NuGet, который выполняет NuGetCommand@2. Пользователи этой задачи в Ubuntu должны перейти на долгосрочную кроссплатформенную задачу NuGetAuthenticate@1 с помощью .NET CLI.
Миграция в .NET CLI в Ubuntu
Задача NuGet Authenticate будет обрабатывать внедрение учетных данных в необходимые места для проверки подлинности клиентских средств в качестве удостоверения конвейера. Дополнительные сведения об использовании NuGet Authenticate с dotnet см. в разделах Примеры и примечания.
Если команды dotnet CLI не поддерживают сценарий, сообщите об этом команде .NET CLI в качестве проблемы. Вы можете продолжать закрепить образ агента для Ubuntu 22.04 или более ранних версий. Поддержка Ubuntu 22.04 будет продолжаться до тех пор, пока Ubuntu 26.04 не станет общедоступной, не более 2026 года.
Почему в конвейере сборки происходит сбой и выдается запрос на проверку подлинности с помощью одного Sign-On (SSO)?
Сборки могут завершиться ошибкой, если срок действия учетных данных истек. Чтобы избежать этих сбоев, рекомендуется использовать задачу NuGet Authenticate для переустановки поставщика учетных данных и автоматического обновления учетных данных. Это обеспечивает бесперебойный доступ во время выполнения конвейера.
steps:
# Authenticate with NuGet to ensure credentials are refreshed
- task: NuGetAuthenticate@1
# Restore NuGet packages
- task: NuGetCommand@2
inputs:
command: 'restore'
restoreSolution: '**/*.sln'
feedsToUse: 'select'
Examples
Restore
Восстановите все решения с помощью пакетов из выбранного веб-канала.
# 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'
Package
Создайте пакет NuGet в целевой папке.
# Package a project
- task: NuGetCommand@2
inputs:
command: 'pack'
packagesToPack: '**/*.csproj'
packDestination: '$(Build.ArtifactStagingDirectory)'
Push
Note
Артефакты конвейера загружаются в каталог Pipeline.Workspace и в каталог System.ArtifactsDirectory для классических конвейеров выпуска. значение packagesToPush можно задать для $(Pipeline.Workspace)/**/*.nupkg или $(System.ArtifactsDirectory)/**/*.nupkg соответственно.
Отправка и публикация пакета в веб-канал, определенный в NuGet.config.
# Push a project - task: NuGetCommand@2 inputs: command: 'push' packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg' feedsToUse: 'config' nugetConfigPath: '$(Build.WorkingDirectory)/NuGet.config'Отправка и публикация пакета в веб-канале с областью действия организации
# Push a project - task: NuGetCommand@2 inputs: command: 'push' nuGetFeedType: 'internal' publishVstsFeed: 'my-organization-scoped-feed'Отправка и публикация пакета в веб-канале с областью действия проекта
# Push a project - task: NuGetCommand@2 inputs: command: 'push' nuGetFeedType: 'internal' publishVstsFeed: 'my-project/my-project-scoped-feed'Отправка и публикация пакета в NuGet.org
# Push a project - task: NuGetCommand@2 inputs: command: 'push' feedsToUse: 'config' includeNugetOrg: 'true'
Custom
Выполните любую другую команду NuGet, помимо стандартных: пакет, отправка и восстановление.
# list local NuGet resources.
- task: NuGetCommand@2
displayName: 'list locals'
inputs:
command: custom
arguments: 'locals all -list'
Requirements
| Requirement | Description |
|---|---|
| Типы трубопроводов | YAML, классическая сборка, классический выпуск |
| Бежит дальше | Агент, DeploymentGroup |
| Demands | None |
| Capabilities | Эта задача не удовлетворяет требованиям к последующим задачам в задании. |
| Ограничения команд | Any |
| Настраиваемые переменные | Any |
| Версия агента | 2.144.0 или более поздней версии |
| Категория задач | Package |
| Requirement | Description |
|---|---|
| Типы трубопроводов | YAML, классическая сборка, классический выпуск |
| Бежит дальше | Агент, DeploymentGroup |
| Demands | None |
| Capabilities | Эта задача не удовлетворяет требованиям к последующим задачам в задании. |
| Ограничения команд | Any |
| Настраиваемые переменные | Any |
| Версия агента | 2.115.0 или более поздней версии |
| Категория задач | Package |