Konfiguriere und verwende Yarn mitCodeArtifact - CodeArtifact

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Konfiguriere und verwende Yarn mitCodeArtifact

Nachdem Sie ein Repository erstellt haben, können Sie den Yarn-Client verwenden, um npm-Pakete zu verwalten.

Anmerkung

Yarn 1.Xliest und verwendet Informationen aus Ihrer npm-Konfigurationsdatei (.npmrc), währendYarn 2.Xtut es nicht. Die Konfiguration fürYarn 2.Xmuss in der Datei.yarnrc.yml definiert sein.

Konfiguriere Yarn 1.X mit demaws codeartifact loginbeherrschen

FürYarn 1.X, du kannst Yarn konfigurieren mitCodeArtifactunter Verwendung deraws codeartifact loginBefehl. DerloginDer Befehl konfiguriert Ihre ~/.npmrc-Datei mit IhremCodeArtifactInformationen und Anmeldeinformationen zum Repository-Endpunkt. MitYarn 1.X,yarnBefehle verwenden die Konfigurationsinformationen aus der ~/.npmrc-Datei.

Um zu konfigurierenYarn 1.Xmit dem Login-Befehl
  1. Falls Sie dies noch nicht getan haben, konfigurieren Sie IhrAWSAnmeldeinformationen für die Verwendung mitAWS CLI, wie beschrieben inErste Schritte mit CodeArtifact.

  2. Um das auszuführenaws codeartifact loginBefehl erfolgreich, npm muss installiert sein. sieheNode.js und npm herunterladen und installierenin dernpm-Dokumentationfür Installationsanweisungen.

  3. Benutze dieaws codeartifact loginBefehl zum AbrufenCodeArtifactAnmeldeinformationen und konfiguriere deine ~/.npmrc-Datei.

    • Ersetzenmeine_domainmit deinemCodeArtifactDomainname.

    • Ersetzen111122223333mit demAWSKonto-ID des Besitzers der Domain. Wenn Sie auf ein Repository in einer Domain zugreifen, die Ihnen gehört, müssen Sie das nicht angeben--domain-owner. Weitere Informationen finden Sie unter Kontenübergreifende Domänen.

    • Ersetzenmein_repomit deinemCodeArtifactName des Repositorys.

    aws codeartifact login --tool npm --domain my_domain --domain-owner 111122223333 --repository my_repo

    DerloginDer Befehl nimmt die folgenden Änderungen an Ihrer ~/.npmrc-Datei vor:

    • Fügt ein Autorisierungstoken hinzu, nachdem es abgerufen wurde vonCodeArtifactmit deinemAWSReferenzen.

    • Setzt die npm-Registrierung auf das vom--repositoryOption.

    • Für npm 6 und niedriger:Fügt hinzu"always-auth=true"Das Autorisierungstoken wird also für jeden npm-Befehl gesendet.

    Der Standard-Autorisierungszeitraum nach dem Anrufloginist 12 Stunden, undloginmuss aufgerufen werden, um das Token regelmäßig zu aktualisieren. Weitere Informationen zu dem Autorisierungstoken, das mit dem erstellt wurdeloginBefehl, sieheMit dem login Befehl erstellte Tokens.

  4. Für npm 7.X und 8.X, du musst hinzufügenalways-auth=truezu Ihrer ~/.npmrc-Datei, um Yarn zu verwenden.

    1. Öffnen Sie Ihre ~/.npmrc-Datei in einem Texteditor und fügen Siealways-auth=truein einer neuen Zeile.

Sie können das verwendenyarn config listBefehl, um zu überprüfen, ob Yarn die richtige Konfiguration verwendet. Nachdem Sie den Befehl ausgeführt haben, überprüfen Sie die Werte in derinfo npm configAbschnitt. Der Inhalt sollte dem folgenden Snippet ähneln.

info npm config { registry: 'https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/npm/my_repo/', '//my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/npm/my_repo/:_authToken': 'eyJ2ZXI...', 'always-auth': true }

Konfiguriere Yarn 2.X mit demyarn config setbeherrschen

Das folgende Verfahren beschreibt die KonfigurationYarn 2.Xindem du deine aktualisierst.yarnrc.ymlKonfiguration von der Kommandozeile aus mit demyarn config setBefehl.

Um die zu aktualisierenyarnrc.ymlKonfiguration über die Befehlszeile
  1. Falls Sie dies noch nicht getan haben, konfigurieren Sie IhrAWSAnmeldeinformationen für die Verwendung mitAWS CLI, wie beschrieben inErste Schritte mit CodeArtifact.

  2. Benutze dieaws codeartifact get-repository-endpointBefehl, um deinCodeArtifactEndpunkt des Repositorys.

    • Ersetzenmeine_domainmit deinemCodeArtifactDomainname.

    • Ersetzen111122223333mit demAWSKonto-ID des Besitzers der Domain. Wenn Sie auf ein Repository in einer Domain zugreifen, die Ihnen gehört, müssen Sie das nicht angeben--domain-owner. Weitere Informationen finden Sie unter Kontenübergreifende Domänen.

    • Ersetzenmein_repomit deinemCodeArtifactName des Repositorys.

    aws codeartifact get-repository-endpoint --domain my_domain --domain-owner 111122223333 --repository my_repo --format npm
  3. Aktualisiere dienpmRegistryServerWert in Ihrer .yarnrc.yml-Datei mit Ihrem Repository-Endpunkt.

    yarn config set npmRegistryServer "https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/npm/my_repo/"
  4. Holen Sie sich einCodeArtifactAutorisierungstoken und speichern Sie es in einer Umgebungsvariablen.

    Anmerkung

    Der folgende Befehl gilt für macOS- oder Linux-Maschinen. Hinweise zur Konfiguration von Umgebungsvariablen auf einem Windows-Computer finden Sie unterÜbergeben Sie ein Authentifizierungstoken mithilfe einer Umgebungsvariablen.

    • Ersetzenmeine_domainmit deinemCodeArtifactDomainname.

    • Ersetzen111122223333mit demAWSKonto-ID des Besitzers der Domain. Wenn Sie auf ein Repository in einer Domain zugreifen, die Ihnen gehört, müssen Sie das nicht angeben--domain-owner. Weitere Informationen finden Sie unter Kontenübergreifende Domänen.

    • Ersetzenmein_repomit deinemCodeArtifactName des Repositorys.

    export CODEARTIFACT_AUTH_TOKEN=`aws codeartifact get-authorization-token --domain my_domain --domain-owner 111122223333 --query authorizationToken --output text`
  5. Benutze dieyarn config setBefehl zum Hinzufügen Ihres CodeArtifact Authentifizierungstoken für Ihre .yarnrc.yml-Datei. Ersetzen Sie die URL im folgenden Befehl durch die URL Ihres Repository-Endpunkts aus Schritt 2.

    yarn config set 'npmRegistries["https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/npm/my_repo/"].npmAuthToken' "${CODEARTIFACT_AUTH_TOKEN}"
  6. Benutze dieyarn config setBefehl zum Festlegen des Werts vonnpmAlwaysAuthzutrue. Ersetzen Sie die URL im folgenden Befehl durch die URL Ihres Repository-Endpunkts aus Schritt 2.

    yarn config set 'npmRegistries["https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/npm/my_repo/"].npmAlwaysAuth' "true"

Nach der Konfiguration sollte Ihre .yarnrc.yml-Konfigurationsdatei einen Inhalt haben, der dem folgenden Snippet ähnelt.

npmRegistries: "https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/npm/my_repo/": npmAlwaysAuth: true npmAuthToken: eyJ2ZXI... npmRegistryServer: "https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/npm/my_repo/"

Sie können auch das verwendenyarn configBefehl zur Überprüfung der Werte vonnpmRegistriesundnpmRegistryServer.