Veröffentlichen und Herunterladen von universellen Paketen in Azure Artifacts
Azure DevOps Services
Mit universalen Paketen können Entwickler eine vielzahl von Pakettypen speichern, die über die herkömmlichen pakete wie NuGet, npm, Python-Pakete usw. hinausgehen. Mit Azure CLI können Sie universelle Pakete direkt über die Befehlszeile veröffentlichen und herunterladen. Obwohl die Größe der veröffentlichten Pakete variieren kann und bis zu 4 TB erreichen kann, müssen sie stets die wesentliche Anforderung erfüllen, einen Namen und eine Versionsnummer zu enthalten. In diesem Artikel werden Sie durch die Schritte zum Veröffentlichen und Herunterladen von Universellen Paketen aus Ihrem Azure Artifacts-Feed geführt.
Voraussetzungen
Eine Azure DevOps-Organisation und ein Projekt. Erstellen Sie ein organization oder ein Projekt, falls noch nicht geschehen.
Installieren Sie die Azure DevOps-Erweiterung Version 0.14.0 oder höher.
Einen Feed erstellen
Wenn Sie bereits über einen Feed verfügen, können Sie zum nächsten Abschnitt wechseln. Führen Sie andernfalls die folgenden Schritte aus, um einen neuen Azure Artifacts-Feed zu erstellen:
Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie dann zu Ihrem Projekt.
Wählen Sie Artefakte und dann Ihren Feed erstellen aus.
Geben Sie für Ihren Feed einen beschreibenden Namen ein und legen Sie mithilfe der Option Anzeige fest, wer Pakete in Ihrem Feed anzeigen kann. Definieren Sie den Gültigkeitsbereich Ihres Feeds, und aktivieren Sie anschließend das Kontrollkästchen Upstreamquellen, wenn Sie Pakete aus öffentlichen Registrierungen einschließen möchten.
Wählen Sie Erstellen, wenn Sie fertig sind.
Anmerkung
Neu erstellte Feeds weisen die Build Service-Rolle des Projekts standardmäßig als Feed und Upstream Reader (Projektmitarbeiter) zu.
Installieren der Azure DevOps-Erweiterung
Durch die Verwendung der CLI können Sie Ihre Aufgaben optimieren. Bevor Sie fortfahren, stellen Sie sicher, dass Sie Azure CLI (Version 2.10.1 oder höher) installiert haben. Darüber hinaus müssen wir die Azure DevOps-Erweiterung installieren, um Azure DevOps-Dienste über die Befehlszeile zu verwalten.
Führen Sie den folgenden Befehl aus, um die Azure DevOps-Erweiterung zu installieren:
az extension add --name azure-devops
Wenn Sie die Azure DevOps-Erweiterung bereits installiert haben und auf die neuesten Aktualisieren möchten, führen Sie den folgenden Befehl aus:
az extension update --name azure-devops
Verbindung mit Feed herstellen
Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie dann zu Ihrem Projekt.
Wählen Sie Artefakte und dann Ihren Feed im Dropdownmenü aus.
Wählen Sie Mit Feed verbinden aus, und wählen Sie dann im linken Navigationsbereich Universelle Pakete aus.
Befolgen Sie die Anweisungen im Abschnitt Einrichtung des Projekts, um eine Verbindung mit Ihrem Feed herzustellen.
Führen Sie den folgenden Befehl aus, um sich bei der Azure CLI anzumelden:
az login
Führen Sie den folgenden Befehl aus, um Ihr Projekt und Ihre Organisation als Standardkonfiguration der CLI festzulegen:
az devops configure --defaults project=<YOUR_PROJECT_NAME> organization=https://dev.azure.com/<YOUR_ORGANIZATION_NAME>
Anmerkung
Wenn Ihre Organisation eine Firewall oder einen Proxy-Server verwendet, stellen Sie sicher, dass Sie Domain-URLs und IP-Adressen für Azure Artifacts zulassen.
Universelle Pakete veröffentlichen
Um ein Universelles Paket in Ihrem Feed zu veröffentlichen, müssen Sie einen Paketnamen und eine Versionsnummer angeben.
Der Paketname sollte in Kleinbuchstaben geschrieben sein, mit Buchstaben oder Zahlen beginnen und enden, und nur Buchstaben, Zahlen sowie nicht aufeinanderfolgende Bindestriche, Unterstriche und Punkte enthalten. Die Paketversion sollte außerdem in Kleinbuchstaben angegeben werden und keine Buildmetadaten (+-Suffix) enthalten. Weitere Informationen finden Sie unter semantische Versionsverwaltung.
Führen Sie den folgenden Befehl aus, um Ihr universelles Paket in Ihrem Feed zu veröffentlichen:
Organisationsbezogener Feed:
az artifacts universal publish --organization https://dev.azure.com/<YOUR_ORGANIZATION> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <PACKAGE_DIRECTORY> --description <PACKAGE_DESCRIPTION>
Projektbezogener Feed:
az artifacts universal publish --organization https://dev.azure.com/<YOUR_ORGANIZATION> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <PACKAGE_DIRECTORY> --description <PACKAGE_DESCRIPTION>
Anmerkung
Universelle Pakete mit einer außergewöhnlich großen Anzahl von Dateien (100K+) können möglicherweise nicht veröffentlicht werden. Empfehlen wir in diesem Fall, die Dateien in einem ZIP-Archiv oder einem TAR-Archiv zu bündeln, um die Anzahl der Dateien zu verringern.
Veröffentlichte Pakete anzeigen
Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie dann zu Ihrem Projekt.
Wählen Sie Artefakte aus und klicken Sie dann im Dropdownmenü auf Ihren Feed. Nachdem der Veröffentlichungsprozess erfolgreich abgeschlossen wurde, sollte Ihr Paket in Ihrem Feed verfügbar sein.
Universelle Pakete herunterladen
Führen Sie den folgenden Befehl aus, um ein bestimmtes universelles Paket aus Ihrem Feed mit Azure CLI herunterzuladen:
Organisationsbezogener Feed:
az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH>
Projektbezogener Feed:
az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH>
Herunterladen bestimmter Dateien
Wenn Sie nur bestimmte Dateien herunterladen möchten, verwenden Sie den parameter --file-filter
, um eine Teilmenge von Dateien abzurufen. Weitere Informationen finden Sie in der Referenz zu Dateiabgleichsmustern.
Organisationsbezogener Feed:
az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH> --file-filter <MATCH_PATTERN>
Projektbezogener Feed:
az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH> --file-filter <MATCH_PATTERN>
Beispiel: Wenn Sie --file-filter logs/.log verwenden, werden alle Dateien angezeigt, deren Dateinamen „logs“ enthalten und der mit der Erweiterung „.log“ enden (z. B. build_logs.log).
Laden Sie die neueste Version herunter.
Sie können Platzhalter *
verwenden, um die aktuelle Version Ihres Universalpakets herunterzuladen.
Beispiele:
--version '*'
: Laden Sie die neueste Version herunter.--version '1.*'
: Laden Sie die aktuelle Version mit Hauptversion 1 herunter.--version '1.2.*'
: Laden Sie die neueste Patchversion mit Hauptversion 1 und Nebenversion 2 herunter.
Anmerkung
Platzhaltermuster werden für Vorabversionen (Pakete, deren Versionsnummer einen Gedankenstrich enthält) nicht unterstützt.