Freigeben über


NuGetCommand@2: NuGet v2-Aufgabe

Verwenden Sie diese Aufgabe, um NuGet-Pakete wiederherzustellen, zu packen oder zu pushen oder einen NuGet-Befehl auszuführen. Diese Aufgabe unterstützt NuGet.org und authentifizierte Feeds wie Azure Artifacts und MyGet. Diese Aufgabe verwendet auch NuGet.exe und funktioniert mit .NET Framework-Apps. Verwenden Sie für .NET Core- und .NET Standard-Apps die .NET Core-Aufgabe.

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.

Eingaben

command - Befehl
string. Erforderlich. Zulässige Werte: restore, pack, push, custom. Standardwert. restore.

Gibt den auszuführenden NuGet-Befehl an. Verwenden Sie den custom Wert, um Argumente hinzuzufügen oder einen anderen Befehl zu verwenden.


restoreSolution - Pfad zur Lösung, packages.config oder project.json
Eingabealias: solution. string. Erforderlich, wenn command = restore. Standardwert. **/*.sln.

Gibt den Pfad zu der Projektmappe, oder Datei anproject.json, packages.configdie auf die wiederherzustellenden Pakete verweist.


feedsToUse - Zu verwendende Feeds
Eingabealias: selectOrConfig. string. Erforderlich, wenn command = restore. Zulässige Werte: select (Feed(s) Ich wähle hier aus), config (Feeds in meinem NuGet.config). Standardwert. select.

Gibt einen Feed aus Azure Artifacts und/oder NuGet.org für die Aufgabe an, die mit dem select -Wert verwendet werden soll. Alternativ können Sie eine NuGet.config Datei in Ihr Quellcoderepository committen und deren Pfad mit dem config -Wert als Wert festlegen.


vstsFeed - Verwenden von Paketen aus diesem Azure Artifacts/TFS-Feed
Eingabealias: feedRestore. string. Optional. Verwenden Sie , wenn selectOrConfig = select && command = restore.

Gibt den ausgewählten Feed im generierten NuGet.configan. Sie müssen die Paketverwaltung installiert und lizenziert haben, um hier einen Feed angeben zu können.


includeNuGetOrg - Verwenden von Paketen aus NuGet.org
boolean. Optional. Verwenden Sie , wenn selectOrConfig = select && command = restore. Standardwert. true.

Schließt NuGet.org in die generierte NuGet.configein.


nugetConfigPath - Pfad zu NuGet.config
string. Optional. Verwenden Sie , wenn selectOrConfig = config && command = restore.

Gibt den Pfad zu in NuGet.config Ihrem Repository an, der die Feeds bestimmt, aus denen Pakete wiederhergestellt werden sollen.


externalFeedCredentials - Anmeldeinformationen für Feeds außerhalb dieser organization/Sammlung
Eingabealias: externalEndpoints. string. Optional. Verwenden Sie , wenn selectOrConfig = config && command = restore.

Gibt die Anmeldeinformationen an, die für externe Registrierungen verwendet werden sollen, die sich im ausgewählten NuGet.configbefinden. Dies ist der Name Ihrer NuGet-Dienstverbindung. Lassen Sie für Feeds in dieser organization oder Sammlung dieses Werts leer. Die Anmeldeinformationen des Builds werden automatisch verwendet.


externalFeedCredentials - Anmeldeinformationen für Feeds außerhalb dieses Kontos/dieser Sammlung
Eingabealias: externalEndpoints. string. Optional. Verwenden Sie , wenn selectOrConfig = config && command = restore.

Gibt die Anmeldeinformationen an, die für externe Registrierungen verwendet werden sollen, die sich im ausgewählten NuGet.configbefinden. Dies ist der Name Ihrer NuGet-Dienstverbindung. Lassen Sie für Feeds in diesem Konto oder in dieser Sammlung dieses Felds leer. die Anmeldeinformationen des Builds werden automatisch verwendet.


noCache - Deaktivieren des lokalen Caches
boolean. Optional. Verwenden Sie , wenn command = restore. Standardwert. false.

Verhindert, dass NuGet Pakete aus lokalen Computercaches verwendet, wenn auf truefestgelegt ist.


disableParallelProcessing - Deaktivieren der parallelen Verarbeitung
boolean. Optional. Verwenden Sie , wenn command = restore. Standardwert. false.

Verhindert, dass NuGet mehrere Pakete in parallelen Prozessen installiert, wenn auf truefestgelegt ist.


restoreDirectory - Zielverzeichnis
Eingabealias: packagesDirectory. string. Optional. Verwenden Sie , wenn command = restore.

Gibt den Ordner an, in dem Pakete installiert sind. Wenn kein Ordner angegeben ist, werden Pakete in einem packages/ Ordner zusammen mit der ausgewählten Projektmappe, packages.configoder project.jsonwiederhergestellt.


verbosityRestore - Ausführlichkeit
string. Optional. Verwenden Sie , wenn command = restore. Zulässige Werte: Quiet, Normal und Detailed. Standardwert. Detailed.

Gibt die Menge der Details an, die in der Ausgabe angezeigt werden.


packagesToPush - Pfad zu zu veröffentlichenden NuGet-Paketen
Eingabealias: searchPatternPush. string. Erforderlich, wenn command = push. Standardwert. $(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg.

Gibt das Muster an, das oder der Pfad zu nupkg den hochzuladenden Dateien abgeglichen werden soll. Mehrere Muster können durch ein Semikolon getrennt werden.


nuGetFeedType - Zielfeedspeicherort
string. Erforderlich, wenn command = push. Zulässige Werte: internal (Diese organization/Sammlung), external (externer NuGet-Server (einschließlich anderer Konten/Sammlungen)). Standardwert. internal.

Gibt an, ob es sich bei dem Zielfeed um einen internen Feed bzw. um eine interne Sammlung oder um einen externen NuGet-Server handelt.


nuGetFeedType - Zielfeedspeicherort
string. Erforderlich, wenn command = push. Zulässige Werte: internal (Dieses Konto/diese Sammlung), external (Externer NuGet-Server (einschließlich anderer Konten/Sammlungen)). Standardwert. internal.

Gibt an, ob es sich bei dem Zielfeed um einen internen Feed bzw. um eine interne Sammlung oder um einen externen NuGet-Server handelt.


publishVstsFeed - Zielfeed
Eingabealias: feedPublish. string. Erforderlich, wenn command = push && nuGetFeedType = internal.

Gibt einen Feed an, der in diesem Konto gehostet wird. Azure Artifacts muss installiert und lizenziert sein, damit Sie hier einen Feed auswählen können.


publishPackageMetadata - Veröffentlichen von Pipelinemetadaten
boolean. Optional. Verwenden Sie , wenn command = push && nuGetFeedType = internal && command = push. Standardwert. true.

Ändert die Versionsnummer der Teilmenge der geänderten Pakete innerhalb einer Reihe von ständig veröffentlichten Paketen.


allowPackageConflicts - Übersprungen von Duplikaten zulassen
boolean. Optional. Verwenden Sie , wenn command = push && nuGetFeedType = internal. Standardwert. false.

Meldet den Vorgangserfolg, auch wenn einige Ihrer Pakete mit 409 Konfliktfehlern abgelehnt werden.

Diese Option ist derzeit nur für Azure Pipelines- und Windows-Agents verfügbar. Wenn NuGet.exe ein Konflikt auftritt, schlägt die Aufgabe fehl. Diese Option funktioniert nicht, und die Veröffentlichung schlägt fehl, wenn Sie sich in einer Proxyumgebung befinden.


publishFeedCredentials - NuGet-Server
Eingabealias: externalEndpoint. string. Erforderlich, wenn command = push && nuGetFeedType = external.

Gibt die NuGet-Dienstverbindung an, die die Anmeldeinformationen des externen NuGet-Servers enthält.


verbosityPush - Ausführlichkeit
string. Optional. Verwenden Sie , wenn command = push. Zulässige Werte: Quiet, Normal und Detailed. Standardwert. Detailed.

Gibt die Menge der Details an, die in der Ausgabe angezeigt werden.


packagesToPack - Pfad zu csproj- oder nuspec-Dateien, die verpackt werden sollen
Eingabealias: searchPatternPack. string. Erforderlich, wenn command = pack. Standardwert. **/*.csproj.

Gibt das Muster an, das der Task verwendet, um nach csproj-Verzeichnissen zu suchen, die verpackt werden sollen.

Sie können mehrere Muster durch ein Semikolon trennen, und Sie können ein Muster als negativ festlegen, indem Sie ihm das Präfix ! voranstellen. Beispiel: **\*.csproj;!**\*.Tests.csproj.


configuration - Konfiguration zum Packen
Eingabealias: configurationToPack. string. Optional. Verwenden Sie , wenn command = pack. Standardwert. $(BuildConfiguration).

Gibt die Konfiguration an, die bei Verwendung einer csproj-Datei verpackt werden soll.


packDestination - Paketordner
Eingabealias: outputDir. string. Optional. Verwenden Sie , wenn command = pack. Standardwert. $(Build.ArtifactStagingDirectory).

Gibt den Ordner an, in dem die Aufgabe Pakete erstellt. Wenn der Wert leer ist, erstellt der Task Pakete im Quellstamm.


versioningScheme - Automatische Paketversionsverwaltung
string. Erforderlich, wenn command = pack. Zulässige Werte: off, byPrereleaseNumber (Datum und Uhrzeit verwenden), byEnvVar (Verwenden Sie eine Umgebungsvariable), byBuildNumber (Verwenden Sie die Buildnummer). Standardwert. off.

Wendet die automatische Paketversionsverwaltung abhängig vom angegebenen Wert an. Diese Zeichenfolge kann nicht mit includeReferencedProjectsverwendet werden. Zulässige Werte sind:

  • byPrereleaseNumber - Datum und Uhrzeit verwenden: Der Task generiert eine SemVer-kompatible Version, die als X.Y.Z-ci-datetimeformatiert ist, wobei Sie die Werte von X, Y und Z angeben.
  • byEnvVar- Verwenden einer Umgebungsvariablen: Der Task verwendet eine von Ihnen angegebene Umgebungsvariable, die die versionsnummer enthält, die Sie verwenden möchten.
  • byBuildNumber - Buildnummer verwenden: Der Task verwendet die Buildnummer, um das Paket zu versionieren.

Hinweis

Legen Sie unter Allgemein das Buildformat auf $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r)fest.


includeReferencedProjects - Einschließen von Projekten, auf die verwiesen wird
boolean. Optional. Verwenden Sie , wenn versioningScheme = off && command = pack. Standardwert. false.

Schließt Projekte ein, auf die verwiesen wird, entweder als Abhängigkeiten oder als Teil des Pakets. Kann nicht mit der automatischen Paketversionsverwaltung verwendet werden. Wenn ein Projekt, auf das verwiesen wird, über eine entsprechende nuspec Datei mit demselben Namen wie das Projekt verfügt, wird dieses Projekt, auf das verwiesen wird, als Abhängigkeit hinzugefügt. Andernfalls wird das Projekt, auf das verwiesen wird, als Teil des Pakets hinzugefügt. Erfahren Sie mehr über die Verwendung des Paketbefehls für die NuGet CLI zum Erstellen von NuGet-Paketen.


versionEnvVar - Umgebungsvariable
string. Erforderlich, wenn versioningScheme = byEnvVar && command = pack.

Gibt den Variablennamen ohne $, $envoder %an.


majorVersion - Haupt
Eingabealias: requestedMajorVersion. string. Erforderlich, wenn versioningScheme = byPrereleaseNumber && command = pack. Standardwert. 1.

Die X in Version X.Y.Z.


minorVersion - Kleiner
Eingabealias: requestedMinorVersion. string. Erforderlich, wenn versioningScheme = byPrereleaseNumber && command = pack. Standardwert. 0.

Die Y in Version X.Y.Z.


patchVersion - Patch
Eingabealias: requestedPatchVersion. string. Erforderlich, wenn versioningScheme = byPrereleaseNumber && command = pack. Standardwert. 0.

Die Z in Version X.Y.Z.


packTimezone - Zeitzone
string. Optional. Verwenden Sie , wenn versioningScheme = byPrereleaseNumber && command = pack. Zulässige Werte: utc, local (Agent-Ortszeit). Standardwert. utc.

Gibt die gewünschte Zeitzone zum Erstellen der Version des Pakets an. Die Auswahl utc wird empfohlen, wenn Sie gehostete Build-Agents verwenden, da sich Datum und Uhrzeit unterscheiden können.


includeSymbols - Symbolpaket erstellen
boolean. Optional. Verwenden Sie , wenn command = pack. Standardwert. false.

Gibt an, dass das Paket Quellen und Symbole enthält. Bei Verwendung mit einer .nuspec Datei werden eine reguläre NuGet-Paketdatei und das entsprechende Symbolpaket erstellt.


toolPackage - Toolpaket
boolean. Optional. Verwenden Sie , wenn command = pack. Standardwert. false.

Legt fest, ob die Ausgabedateien des Projekts im Toolordner gespeichert werden sollen.


buildProperties - Zusätzliche Buildeigenschaften
string. Optional. Verwenden Sie , wenn command = pack.

Gibt eine Liste von token=wert-Paaren an, die durch Semikolons getrennt sind, wobei jedes Vorkommen von $token$ in der .nuspec Datei durch den angegebenen Wert ersetzt wird. Die Werte können Zeichenfolgen in Anführungszeichen sein.


basePath - Basispfad
string. Optional. Verwenden Sie , wenn command = pack.

Gibt den Basispfad der in der Datei definierten Dateien an nuspec .


verbosityPack - Ausführlichkeit
string. Optional. Verwenden Sie , wenn command = pack. Zulässige Werte: Quiet, Normal und Detailed. Standardwert. Detailed.

Gibt die Menge der Details an, die in der Ausgabe angezeigt werden.


arguments - Befehle und Argumente
string. Erforderlich, wenn command = custom.

Gibt den Befehl und die Argumente an, die NuGet.exe zur Ausführung übergeben werden. Wenn NuGet 3.5 oder höher verwendet wird, werden authentifizierte Befehle wie list, restoreund publish für jeden Feed in dieser organization oder Sammlung, auf den der Project Collection Build Service Zugriff hat, automatisch authentifiziert.


Optionen für die Vorgangskontrolle

Alle Vorgänge verfügen zusätzlich zu ihren Eingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerungsoptionen und allgemeine Aufgabeneigenschaften.

Ausgabevariablen

Keine.

Hinweise

Wichtig

Die Aufgabe NuGet-Authentifizierung ist die neue empfohlene Methode für die Authentifizierung bei Azure Artifacts und anderen NuGet-Repositorys. Diese Aufgabe übernimmt keine neuen Features mehr, und es werden nur kritische Fehler behoben.

Verwenden Sie diese Aufgabe, um NuGet-Paketabhängigkeiten zu installieren und zu aktualisieren oder um NuGet-Pakete zu verpacken und zu veröffentlichen. Verwendet NuGet.exe und funktioniert mit .NET Framework Apps. Verwenden Sie für .NET Core- und .NET Standard-Apps die .NET Core-Aufgabe.

Wenn Ihr Code von NuGet-Paketen abhängt, fügen Sie diesen Schritt vor dem Visual Studio-Buildtask hinzu. Deaktivieren Sie außerdem das veraltete Kontrollkästchen NuGet-Pakete wiederherstellen in dieser Aufgabe.

Wenn Sie mit .NET Core oder .NET Standard arbeiten, verwenden Sie die .NET Core-Aufgabe , die vollständige Unterstützung für alle Paketszenarien bietet und derzeit von dotnet unterstützt wird.

Tipp

Diese Version der NuGet-Aufgabe verwendet standardmäßig NuGet 4.1.0. Eine andere Version von NuGet kann mithilfe des Toolinstallationsprogramms ausgewählt werden.

Versionsverwaltungsschemas

Für byPrereleaseNumber wird die Version auf die Werte festgelegt, die Sie für die Hauptversion, die Nebenversion und den Patch sowie das Datum und die Uhrzeit im Format yyyymmdd-hhmmssauswählen.

Für byEnvVar wird die Version auf den Wert der Umgebungsvariablen festgelegt, die den über den Parameter versionEnvVar angegebenen Namen besitzt – beispielsweise MyVersion (ohne $; nur der Name der Umgebungsvariablen). Stellen Sie sicher, dass die Umgebungsvariable auf ein richtiges SemVer festgelegt ist, z 1.2.3 . B. oder 1.2.3-beta1.

Für byBuildNumber wird die Version unter Verwendung der Buildnummer der Pipelineausführung festgelegt. Dies ist der Wert, der für die Eigenschaft name der Pipeline angegeben ist (wird in der Umgebungsvariablen BUILD_BUILDNUMBER gespeichert). Stellen Sie sicher, dass die verwendete Buildnummer ein richtiges SemVer enthält, z. B 1.0.$(Rev:r). . Bei Verwendung von byBuildNumber extrahiert der Task die gepunktete Version ( 1.2.3.4) aus der Buildnummerzeichenfolge und verwendet nur diesen Teil. Der Rest der Zeichenfolge wird gelöscht. Wenn Sie die Buildnummer unverändert verwenden möchten, können Sie byEnvVar wie oben beschrieben verwenden und versionEnvVar auf BUILD_BUILDNUMBERfestlegen.

Migrieren von NuGetInstaller@0 oder NuGetRestore@1

NuGetInstaller@0 und NuGetRestore@1 sind veraltet, und Sie sollten sie in Ihrer Pipeline durch NuGetCommand@2ersetzen.

Wenn Sie mit restoreMode: restoreverwendet NuGetInstaller@0 haben, konfigurieren Sie die folgenden Eingaben, wenn Sie verwendenNuGetCommand@2.

NuGetCommand@2 Aufgabeneingabe Wert
command restore
restoreSolution Pfad für die .sln-Datei

Wenn Sie mit restoreMode: installverwendet NuGetInstaller@0 haben, konfigurieren Sie die folgenden Eingaben, wenn Sie verwendenNuGetCommand@2.

NuGetCommand@2 Aufgabeneingabe Wert
command custom
arguments Wie der vollständige Installationsbefehl in der NuGet CLI aussehen würde. Wenn Sie z. B. das Äquivalent von nuget install ninject -OutputDirectory c:\proj in Ihrer Pipeline ausführen möchten, ist install ninject -OutputDirectory c:\projder arguments Parameter . Wenn Sie den NuGetInstaller@0nuGetRestoreArgs Parameter verwendet haben, werden diese jetzt auch in argumentsangezeigt.

Wenn Sie verwendet NuGetRestore@1haben, konfigurieren Sie die folgenden Eingaben, wenn Sie verwenden NuGetCommand@2.

NuGetCommand@2 Aufgabeneingabe Wert
command restore
restoreSolution Pfad für die .sln-Datei

Ähnlich wie bei der Verwendung NuGetRestore@1 oder derrestoreNuGetInstaller@0Option hat Eingaben, NuGetCommand@2 um den Feed festzulegen, zwischen select oder configzu entscheiden, den Pfad zur NuGet.config Datei anzugeben und Pakete aus nuget.org zu verwenden.

Weitere Informationen finden Sie in den folgenden Beispielen.

Beispiele

Restore

Stellen Sie alle Ihre Projektmappen mit Paketen aus einem ausgewählten Feed wieder her.

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

Paket

Erstellen Sie ein NuGet-Paket im Zielordner.

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

Push

Hinweis

Pipelineartefakte werden in das Verzeichnis Pipeline.Workspace (und bei klassischen Releasepipelines in das Verzeichnis System.ArtifactsDirectory) heruntergeladen. Der packagesToPush-Wert kann auf $(Pipeline.Workspace)/**/*.nupkg oder $(System.ArtifactsDirectory)/**/*.nupkg festgelegt werden.

  • Pushen (veröffentlichen) Sie ein Paket in einen Feed, der in der Datei „NuGet.config“ definiert ist.

    # Push a project
    - task: NuGetCommand@2
      inputs:
        command: 'push'
        packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg'
        feedsToUse: 'config'
        nugetConfigPath: '$(Build.WorkingDirectory)/NuGet.config'
    
  • Pushen (veröffentlichen) Sie ein Paket in einen organisationsbezogenen Feed.

    # Push a project
    - task: NuGetCommand@2
      inputs:
        command: 'push'
        nuGetFeedType: 'internal'
        publishVstsFeed: 'my-organization-scoped-feed'
    
  • Pushen (veröffentlichen) Sie ein Paket in einen projektbezogenen Feed.

    # Push a project
    - task: NuGetCommand@2
      inputs:
        command: 'push'
        nuGetFeedType: 'internal'
        publishVstsFeed: 'my-project/my-project-scoped-feed'
    
  • Pushen (veröffentlichen) Sie ein Paket in NuGet.org.

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

Benutzerdefiniert

Führen Sie andere NuGet-Befehle als die Standardbefehle „pack“, „push“ und „restore“ aus.

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

Anforderungen

Anforderung BESCHREIBUNG
Pipelinetypen YAML, Klassischer Build, klassische Version
Wird ausgeführt auf Agent, DeploymentGroup
Forderungen Keine
Capabilities Diese Aufgabe erfüllt keine Anforderungen an nachfolgende Aufgaben im Auftrag.
Befehlseinschränkungen Any
Einstellbare Variablen Any
Agent-Version 2.144.0 oder höher
Aufgabenkategorie Paket
Anforderung BESCHREIBUNG
Pipelinetypen YAML, Klassischer Build, klassisches Release
Wird ausgeführt auf Agent, DeploymentGroup
Forderungen Keine
Capabilities Diese Aufgabe erfüllt keine Anforderungen an nachfolgende Aufgaben im Auftrag.
Befehlseinschränkungen Any
Setzbare Variablen Any
Agent-Version 2.115.0 oder höher
Aufgabenkategorie Paket