Veröffentlichen und Herunterladen von universellen Paketen in Azure Pipelines

Azure DevOps Services

Mit universellen Paketen können Sie eine beliebige Anzahl von Dateien eines beliebigen Typs packen und mit Ihrem Team teilen. Mithilfe der Universellen Paketaufgabe können Sie Pakete mit verschiedenen Größen bis zu 4 TB packen, veröffentlichen und herunterladen. Jedes Paket wird eindeutig mit einem Namen und einer Versionsnummer identifiziert. Pakete können mithilfe der Azure CLI oder Azure Pipelines in und aus Artifacts Feeds veröffentlicht und genutzt werden.

Hinweis

Universelle Pakete sind nur in Azure DevOps Services verfügbar.

Vorbereiten eines universellen Pakets

Standardmäßig verwendet die Aufgabe "Universelle Pakete" das $(Build.ArtifactStagingDirectory) Veröffentlichungsverzeichnis. Wenn Sie ihr Universelles Paket für die Veröffentlichung vorbereiten möchten, platzieren Sie die Dateien, die Sie in diesem Verzeichnis veröffentlichen möchten. Sie können auch die Hilfsprogrammaufgabe "Dateien kopieren" verwenden, um diese Dateien in das Veröffentlichungsverzeichnis zu kopieren.

Veröffentlichen eines universellen Pakets

Um ein Universelles Paket in Ihrem Artifacts Feed zu veröffentlichen, fügen Sie die folgende Aufgabe zur Yaml-Datei Ihrer Pipeline hinzu.

# Publish a Universal Package
- task: UniversalPackages@0
  displayName: Universal Publish
  inputs:
    command: publish
    publishDirectory: '$(Build.ArtifactStagingDirectory)'
    vstsFeedPublish: '<projectName>/<feedName>'
    vstsFeedPackagePublish: '<Package name>'
    packagePublishDescription: '<Package description>'
Argument BESCHREIBUNG
publishDirectory Speicherort der zu veröffentlichenden Dateien.
vstsFeedPublish Der Projekt- und Feedname, in dem sie veröffentlicht werden sollen.
vstsFeedPackagePublish Der Paketname. Muss Kleinschreibung sein. Verwenden Sie nur Buchstaben, Zahlen und Striche.
packagePublishDescription Beschreibung des Inhalts des Pakets.

Um Pakete in einem Azure Artifacts Feed aus Ihrer Pipeline zu veröffentlichen, müssen Sie die Identität des Project Sammlungsbuilddiensts als Mitwirkender aus den Einstellungen des Feeds hinzufügen. Weitere Informationen finden Sie unter Hinzufügen von Benutzer/Gruppenberechtigungen zu einem Feed .

Zum Veröffentlichen in einem externen Feed müssen Sie zunächst eine Dienstverbindung erstellen, um auf diesen Feed zu verweisen. Weitere Informationen finden Sie unter "Dienstverbindung verwalten ".

Paketversionsverwaltung

Universelle Pakete folgen der semantischen Versionsverwaltungsspezifikation und werden durch ihre Namen und Versionsnummern identifiziert. Semantische Versionsnummern weisen drei numerische Komponenten, Major, Minor und Patch auf: Major.Minor.Patch

Wenn Sie ein neues abwärtskompatibles Feature freigeben, erhöhen Sie die Nebenversion und setzen die Patchversion auf 0 (1.4.17 auf 1.5.0) zurück, und wenn Sie eine abwärtskompatible Änderung vornehmen, erhöhen Sie die Hauptversion, und setzen Sie die Neben- und Patchversionen auf 0 (2.6.5 auf 3.0.0). Die Patchversionsnummer sollte bei der Behebung eines Fehlers (1.0.0 auf 1.0.1) erhöht werden.

Die Aufgabe "Universelle Pakete" wählt automatisch die nächste Haupt-, Neben- oder Patchversion für Sie aus, wenn Sie ein neues Paket veröffentlichen.

Um die Versionsverwaltung für Ihr Paket zu aktivieren, fügen Sie Ihrer YAML-Datei eine versionOption Eingabe hinzu. Die Optionen zum Veröffentlichen einer neuen Paketversion sind: major, minor, patchoder custom.

Durch Auswählen custom können Sie Ihre Paketversion manuell angeben. Die anderen Optionen erhalten die neueste Paketversion aus Ihrem Feed und erhöhen das ausgewählte Versionssegment um 1. Wenn Sie also über ein testPackage 1.0.0 verfügen und die Hauptoption auswählen, wird Ihr neues Paket testPackage 2.0.0 sein. Wenn Sie die Nebenoption auswählen, lautet Ihre Paketversion 1.1.0, und wenn Sie die Patchoption auswählen, lautet Ihre Paketversion 1.0.1.

Eine Sache, die Sie beachten sollten, ist, dass Sie, wenn Sie die custom Option auswählen, auch wie versionPublish folgt angeben müssen.

- task: UniversalPackages@0
  displayName: Universal Publish
  inputs:
    command: publish
    publishDirectory: '$(Build.ArtifactStagingDirectory)'
    vstsFeedPublish: '<projectName>/<feedName>'
    vstsFeedPackagePublish: '<Package name>'
    versionOption: custom
    versionPublish: '<Package version>'
    packagePublishDescription: '<Package description>'
Argument BESCHREIBUNG
publishDirectory Speicherort der zu veröffentlichenden Dateien.
vstsFeedPublish Der Projekt- und Feedname, in dem sie veröffentlicht werden sollen.
vstsFeedPackagePublish Der Paketname.
versionOption Wählen Sie eine Versionsinkrementierungsstrategie aus. Optionen: major, , minor, patchcustom
versionPublish Die benutzerdefinierte Paketversion
packagePublishDescription Beschreibung des Inhalts des Pakets.

Herunterladen eines universellen Pakets

Um ein Universelles Paket aus einem Feed in Ihrer Organisation herunterzuladen, verwenden Sie die Universelle Paketaufgabe mit der download Befehlseingabe wie folgt:

steps:
- task: UniversalPackages@0
  displayName: 'Universal download'
  inputs:
    command: download
    vstsFeed: '<projectName>/<feedName>'
    vstsFeedPackage: '<packageName>'
    vstsPackageVersion: '<packageVersion>'
    downloadDirectory: '$(Build.SourcesDirectory)\someFolder'
Argument BESCHREIBUNG
vstsFeed Der Artifacts Feed, der das zu herunterladende Paket hosten soll.
vstsFeedPackage Der Name des pakets, das heruntergeladen werden soll.
vstsPackageVersion Version des Pakets, das heruntergeladen werden soll.
downloadDirectory Der Zielordner des Pakets. Standardwert: $(System.DefaultWorkingDirectory).

Verwenden Sie den folgenden Codeausschnitt, um ein Universelles Paket aus einer externen Quelle herunterzuladen:

steps:
- task: UniversalPackages@0
  displayName: 'Universal download'
  inputs:
    command: download
    feedsToUse: external
    externalFeedCredentials: MSENG2
    feedDownloadExternal: 'fabrikamFeedExternal'
    packageDownloadExternal: 'fabrikam-package'
    versionDownloadExternal: 1.0.0
Argument BESCHREIBUNG
feedsToUse Legen Sie den Wert fest, der external beim Herunterladen aus einer externen Quelle erfolgt.
externalFeedCredentials Name der Dienstverbindung, die auf den externen Feed verweist. Weitere Informationen finden Sie unter Dienstverbindungen .
feedDownloadExternal Name des externen Feeds.
packageDownloadExternal Der Paketname, der heruntergeladen werden soll.
versionDownloadExternal Die Version des Pakets, das heruntergeladen werden soll.

Hinweis

Sie können Wildcards in der Zeichenfolge verwenden, die Sie an den Downloadbefehl übergeben, um die neueste Version eines universellen Pakets herunterzuladen. Weitere Details finden Sie in der Schnellstartanleitung für universelle Pakete .

Nächste Schritte