Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Mithilfe von Upstreamquellen in Azure Artifacts können Sie alle Anwendungsabhängigkeiten aus einem einzigen Feed verwalten. Es vereinfacht die Nutzung von Paketen aus öffentlichen Registern wie NuGet.org oder npmjs.com und bietet gleichzeitig Schutz vor Ausfällen oder kompromittierten Paketen. Sie können auch Eigene Pakete in demselben Feed veröffentlichen und alle Ihre Abhängigkeiten an einem Ort verwalten.
Dieses Lernprogramm führt Sie durch die Aktivierung von Upstreamquellen in Ihrem Feed und das Verwenden von Paketen aus öffentlichen Registrierungen wie NuGet.org oder npmjs.com.
Voraussetzungen
Erstellen eines Feeds und Aktivieren von Upstreamquellen
Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie dann zu Ihrem Projekt.
Wählen Sie Artefakte und dann "Feed erstellen" aus, um einen neuen Feed zu erstellen.
Geben Sie einen Namen für Ihren Feed ein, wählen Sie die Sichtbarkeit und den Bereich aus, und stellen Sie sicher, dass Sie das Kontrollkästchen "Pakete aus allgemeinen öffentlichen Quellen einschließen " aktivieren, um upstream-Quellen zu aktivieren.
Wählen Sie Erstellen, wenn Sie fertig sind.
Von Bedeutung
Um einen Feed aus einer anderen Organisation als Upstreamquelle hinzuzufügen, muss die Person, der der Zielfeed gehört, die Zielansicht mit Alle Feeds und Personen, die meinem Microsoft Entra-Mandanten zugeordnet sind freigeben. Erforderliche Schritte: Feedeinstellungen>Ansichten>, Schaltfläche mit den Auslassungspunkten für die angegebene Ansicht auswählen >Bearbeiten.
Authentifizieren mit dem Feed
Nachdem Sie Ihren Feed erstellt haben, wählen Sie die entsprechende Registerkarte basierend auf der verwendeten Technologie aus, und folgen Sie den Anweisungen, um Ihre Konfigurationsdatei einzurichten und eine Verbindung mit Ihrem Feed herzustellen:
Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie dann zu Ihrem Projekt.
Wählen Sie Artifacts, wählen Sie Ihren Feed aus dem Dropdown-Menü aus und wählen Sie dann Verbinden mit Futtermittel.
Wählen Sie "npm " im linken Navigationsbereich aus, und folgen Sie den bereitgestellten Anweisungen im Abschnitt "Project-Setup" , um Die Konfigurationsdatei einzurichten. Wenn Sie noch nicht über eine NPMRC-Datei verfügen, erstellen Sie eine neue datei im Stammverzeichnis Ihres Projekts (denselben Ordner wie Ihr package.json). Öffnen Sie die neue NPMRC-Datei , und fügen Sie den bereitgestellten Codeausschnitt ein.
Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie dann zu Ihrem Projekt.
Wählen Sie Artifacts, wählen Sie Ihren Feed aus dem Dropdown-Menü aus und wählen Sie dann Verbinden mit Futtermittel.
Wählen Sie im linken Navigationsbereich NuGet.exe aus, und kopieren Sie dann den im Abschnitt "Project Setup " angegebenen XML-Codeausschnitt.
Erstellen Sie eine neue nuget.config Datei im Stammverzeichnis Ihres Projekts, und fügen Sie den IM vorherigen Schritt kopierten XML-Codeausschnitt ein.
Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie dann zu Ihrem Projekt.
Wählen Sie Artifacts, wählen Sie Ihren Feed aus dem Dropdown-Menü aus und wählen Sie dann Verbinden mit Futtermittel.
Wählen Sie pip aus dem linken Navigationsbereich aus.
Erstellen Sie eine virtuelle Umgebung , wenn Sie dies noch nicht getan haben.
Fügen Sie Ihrer virtualenv eine pip.ini-Datei (Windows) oder pip.conf (Mac/Linux) hinzu, und fügen Sie den bereitgestellten Codeausschnitt in die Datei ein, der im Abschnitt „Projekt-Setup“ angegeben ist.
Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie dann zu Ihrem Projekt.
Wählen Sie Artifacts, wählen Sie Ihren Feed aus dem Dropdown-Menü aus und wählen Sie dann Verbinden mit Futtermittel.
Wählen Sie Maven im linken Navigationsbereich aus.
Fügen Sie den Codeausschnitt im Project-Setupabschnitt zu den <repositories>- und <distributionManagement>-Abschnitten in Ihrem pom.xml hinzu. Ihre Datei sollte etwa wie folgt aussehen:
<repository>
<id>[FEED-NAME]</id>
<url>https://pkgs.dev.azure.com/[ORGANIZATION-NAME]/_packaging/[FEED-NAME]/maven/v1</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
Fügen Sie den bereitgestellten <server> Codeausschnitt in ihre settings.xml Datei ein. Die Datei sollte etwa wie folgt aussehen:
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
https://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>[FEED-NAME]</id>
<username>[ORGANIZATION-NAME]</username>
<password>[PERSONAL_ACCESS_TOKEN]</password>
</server>
</servers>
</settings>
Erstellen Sie ein persönliches Zugriffstoken mit Packaging> undLese- und Schreibberechtigungen, und fügen Sie Ihr persönliches Zugriffstoken in das <password>-Tag in Ihrer settings.xml-Datei ein.
Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie dann zu Ihrem Projekt.
Wählen Sie Artifacts, wählen Sie Ihren Feed aus dem Dropdown-Menü aus und wählen Sie dann Verbinden mit Futtermittel.
Wählen Sie "Gradle " im linken Navigationsbereich aus.
Fügen Sie den Codeausschnitt im Project-Setupabschnitt zu den Repositorys und Veröffentlichungsabschnitten in der Datei build.gradle hinzu. Ihre Datei sollte wie folgt aussehen:
maven {
url 'https://pkgs.dev.azure.com/[ORGANIZATION-NAME]/_packaging/[FEED-NAME]/maven/v1'
name '[FEED-NAME]'
authentication {
basic(BasicAuthentication)
}
}
Fügen Sie den bereitgestellten <server> Codeausschnitt in ihre settings.xml Datei ein. Ihre Datei sollte wie folgt aussehen:
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
https://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>[FEED-NAME]</id>
<username>[ORGANIZATION-NAME]</username>
<password>[PERSONAL_ACCESS_TOKEN]</password>
</server>
</servers>
</settings>
Erstellen Sie ein persönliches Zugriffstoken mit Packaging>Lesen & Schreiben-Berechtigungen. Fügen Sie Ihr persönliches Zugriffstoken in das <password>-Tag in Ihrer settings.xml-Datei ein.
Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie zu Ihrem Projekt.
Wählen Sie Artifacts, wählen Sie Ihren Feed aus dem Dropdown-Menü aus und wählen Sie dann Verbinden mit Futtermittel.
Wählen Sie "Fracht" im linken Navigationsbereich aus.
Fügen Sie den Codeausschnitt im Abschnitt "Project setup" zu Ihrer Datei "cargo/config.toml" in Ihrem Quell-Repository hinzu. Die Datei "config.toml " sollte wie folgt aussehen:
[registries]
FEED_NAME = { index = "sparse+https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/Cargo/index/" }
```
Fügen Sie den zweiten Codeausschnitt, der im Abschnitt "Project-Setup " bereitgestellt wird, ihrer Datei "cargo/config.toml " hinzu, um die crates.io Quelle durch Ihren Feed zu ersetzen. Ihre Datei sollte wie folgt aussehen:
[source.crates-io]
replace-with = "FEED_NAME"
Konfigurieren eines Anmeldeinformationsanbieters
Melden Sie sich bei der Registrierung an
Pakete wiederherstellen
Nachdem Sie nun upstream-Quellen aktiviert und mit Ihrem Feed authentifiziert haben, wählen Sie die entsprechende Registerkarte basierend auf Ihrem Pakettyp aus, und folgen Sie den Anweisungen, um Pakete aus öffentlichen Registrierungen in Ihrem Azure Artifacts-Feed wiederherzustellen.
Entfernen Sie den ordner node_modules aus Ihrem Projekt.
Öffnen Sie ein Eingabeaufforderungsfenster, und führen Sie den folgenden Befehl aus, um Ihre Pakete wiederherzustellen. Sobald der Vorgang abgeschlossen ist, sollte Ihr Feed eine gespeicherte Kopie aller Pakete enthalten, die vom Upstream-Repository installiert wurden.
npm install --force
Hinweis
Das --force Flag stellt sicher, dass Pakete aus der Remotequelle abgerufen werden, auch wenn eine lokale Kopie vorhanden ist.
Löschen Sie den lokalen Cache.
nuget locals -clear all
Öffnen Sie ein Eingabeaufforderungsfenster, und führen Sie den folgenden Befehl aus, um Ihre Pakete wiederherzustellen. Sobald der Vorgang abgeschlossen ist, sollte Ihr Feed eine gespeicherte Kopie aller Pakete enthalten, die vom Upstream-Repository installiert wurden.
nuget.exe restore
Öffnen Sie ein Eingabeaufforderungsfenster, und führen Sie den folgenden Befehl in Ihrem Projektverzeichnis aus, um Ihre Pakete wiederherzustellen. Sobald der Vorgang abgeschlossen ist, sollte Ihr Feed eine gespeicherte Kopie aller Pakete enthalten, die vom Upstream-Repository installiert wurden.
pip install
Öffnen Sie ein Eingabeaufforderungsfenster, und führen Sie den folgenden Befehl in Ihrem Projektverzeichnis aus, um Ihre Pakete wiederherzustellen. Sobald der Vorgang abgeschlossen ist, sollte Ihr Feed eine gespeicherte Kopie aller Pakete enthalten, die vom Upstream-Repository installiert wurden.
mvn install
Öffnen Sie ein Eingabeaufforderungsfenster, und führen Sie den folgenden Befehl in Ihrem Projektverzeichnis aus, um Ihre Pakete wiederherzustellen. Sobald der Vorgang abgeschlossen ist, sollte Ihr Feed eine gespeicherte Kopie aller Pakete enthalten, die vom Upstream-Repository installiert wurden.
gradle build
Öffnen Sie ein Eingabeaufforderungsfenster, und führen Sie den folgenden Befehl in Ihrem Projektverzeichnis aus, um Ihre Pakete wiederherzustellen. Sobald der Vorgang abgeschlossen ist, sollte Ihr Feed eine gespeicherte Kopie aller Pakete enthalten, die vom Upstream-Repository installiert wurden.
cargo build
Verwandte Inhalte