Teilen über


Veröffentlichen und Herunterladen von universellen Paketen mit Azure-Pipelines

Azure DevOps Services-

Mit universalen Paketen können Sie eine beliebige Anzahl von Dateien eines beliebigen Typs verpacken und für Ihr Team freigeben. Mithilfe der Aufgabe "Universelles Paket" in Azure Pipelines können Sie Pakete verschiedener Größen packen, veröffentlichen und herunterladen, bis zu 4 TB. Jedes Paket wird eindeutig mit einem Namen und einer Versionsnummer identifiziert. Sie können Azure CLI oder Azure Pipelines verwenden, um Pakete aus Ihren Artefaktenfeeds zu veröffentlichen und zu nutzen.

Anmerkung

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

Kopieren von Dateien

Die Aufgabe "Universal Packages" in Azure Pipelines ist so festgelegt, dass $(Build.ArtifactStagingDirectory) als Standardveröffentlichungsverzeichnis verwendet wird. Um Ihr Universelles Paket für die Veröffentlichung vorzubereiten, verschieben Sie die Dateien, die Sie in diesem Verzeichnis veröffentlichen möchten. Sie können auch den Task Zum Kopieren von Dateien verwenden, um diese Dateien in das Veröffentlichungsverzeichnis zu kopieren.

Veröffentlichen eines universellen Pakets

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

- task: UniversalPackages@0
  displayName: Publish a Universal Package
  inputs:
    command: publish
    publishDirectory: '$(Build.ArtifactStagingDirectory)'
    vstsFeedPublish: '<projectName>/<feedName>'
    vstsFeedPackagePublish: '<Package name>'
    packagePublishDescription: '<Package description>'
Argument Beschreibung
publishDirectory Speicherort der Dateien, die Sie veröffentlichen möchten.
vstsFeedPublish Der Projekt- und Feedname, in dem veröffentlicht werden soll. Geben Sie nur den Feed-Namen an, wenn Sie mit einem organisationsweit festgelegten Feed arbeiten.
vstsFeedPackagePublish Der Paketname. Muss klein geschrieben werden. Verwenden Sie nur Buchstaben, Zahlen und Gedankenstriche.
packagePublishDescription Beschreibung des Paketinhalts.

Um Pakete in einem Azure Artifacts-Feed aus Ihrer Pipeline zu veröffentlichen, muss die Pipelineidentität über die Rolle Feedherausgeber (Mitwirkender) für den Feed verfügen. Weitere Informationen finden Sie unter Pipelinesberechtigungen.

Um sie in einem externen Feed zu veröffentlichen, müssen Sie zuerst eine Dienstverbindung erstellen, um sich bei Ihrem Feed zu authentifizieren. Weitere Informationen finden Sie unter Verwalten der Dienstverbindung.

Paketversionsverwaltung

Universelle Pakete folgen der Spezifikation für die semantische Versionsverwaltung und können anhand ihrer Namen und Versionsnummern identifiziert werden. Semantische Versionsnummern bestehen aus drei numerischen Komponenten, Major, Minor und Patch, im Format: Major.Minor.Patch.

Die Nebenversionsnummer wird erhöht, wenn neue Features hinzugefügt werden, die abwärtskompatibel mit früheren Versionen sind, in diesem Fall erhöhen Sie die Nebenversion und setzen die Patchversion auf 0 zurück (1.4.17 auf 1.5.0). Die Nummer der Hauptversion wird erhöht, wenn erhebliche Änderungen vorhanden sind, die die Kompatibilität mit früheren Versionen beeinträchtigen könnten. In diesem Fall erhöhen Sie die Hauptversion und setzen die Neben- und Patchversionen auf 0 zurück (2.6.5 auf 3.0.0). Die Patchversionsnummer sollte erhöht werden, wenn nur Fehlerkorrekturen oder andere kleine Änderungen vorgenommen werden, die sich nicht auf die Kompatibilität mit früheren Versionen auswirken (1.0.0 zu 1.0.1).

Beim Veröffentlichen eines neuen Pakets wählt die Aufgabe "Universelle Pakete" automatisch die nächste Haupt-, Neben- oder Patchversion für Sie aus.

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.

Wenn Sie custom auswählen, 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.0verfügen und die Option Hauptversion auswählen, wird Ihr neues Paket testPackage 2.0.0. Wenn Sie die Option neben auswählen, wird Ihre Paketversion 1.1.0, und wenn Sie die Option Patch auswählen, wird Ihre Paketversion 1.0.1.

Wenn Sie die Option custom auswählen, müssen Sie auch einen versionPublish Wert wie folgt angeben:

- task: UniversalPackages@0
  displayName: Publish a Universal Package
  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 Dateien, die Sie veröffentlichen möchten.
vstsFeedPublish Der Projekt- und Feedname, an den veröffentlicht werden soll. Wenn Sie mit einem organisationsübergreifenden Feed arbeiten, geben Sie nur den Namen des Feeds an.
vstsFeedPackagePublish Der Paketname. Muss klein geschrieben werden. Verwenden Sie nur Buchstaben, Zahlen und Gedankenstriche.
Versionsoption Wählen Sie eine Versionsverwaltungsstrategie aus. Optionen: major, minor, patch, custom.
versionPublish Die benutzerdefinierte Paketversion.
packagePublishDescription Beschreibung des Paketinhalts.

Herunterladen eines universellen Pakets

Um ein Universelles Paket aus einem Feed in Ihrer Organisation herunterzuladen, verwenden Sie die Aufgabe "Universelles Paket" mit dem Befehl "download" wie folgt:

steps:
- task: UniversalPackages@0
  displayName: Download a Universal Package
  inputs:
    command: download
    vstsFeed: '<projectName>/<feedName>'
    vstsFeedPackage: '<packageName>'
    vstsPackageVersion: '<packageVersion>'
    downloadDirectory: '$(Build.SourcesDirectory)\someFolder'
Argument Beschreibung
vstsFeed Der Artefaktfeed, der das Paket hostet, das heruntergeladen werden soll.
vstsFeedPackage Der Name des pakets, das heruntergeladen werden soll.
vstsPackageVersion Version des Pakets, das heruntergeladen werden soll.
downloadDirectory Der Paketzielordner. Standardwert: $(System.DefaultWorkingDirectory).

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

steps:
- task: UniversalPackages@0
  displayName: Download a Universal Package
  inputs:
    command: download
    feedsToUse: external
    externalFeedCredentials: 'MSENG2'
    feedDownloadExternal: 'fabrikamFeedExternal'
    packageDownloadExternal: 'fabrikam-package'
    versionDownloadExternal: 1.0.0
Argument Beschreibung
feedsToUse Legen Sie den Wert beim Herunterladen aus einer externen Quelle auf external fest.
externalFeedCredentials Name der Dienstverbindung mit dem externen Feed. Weitere Informationen finden Sie unter Dienstverbindungen verwalten.
feedDownloadExternal Name des externen Feeds.
packageDownloadExternal Der Paketname, den Sie herunterladen möchten.
versionDownloadExternal Die Version des Pakets, das Sie herunterladen möchten.

Tipp

Mit Wildcards können Sie die neueste Version eines Universellen Pakets herunterladen. Weitere Informationen finden Sie unter Laden Sie die neueste Versionherunter.