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
, patch
oder 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.