Verwenden von NPM-Paketen in CodeBuild - 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.

Verwenden von NPM-Paketen in CodeBuild

Die folgenden Schritte wurden mit den Betriebssystemen getestet, die in den Docker-Images von aufgeführt sind. CodeBuild

Richten Sie Berechtigungen mit IAM-Rollen ein

Diese Schritte sind erforderlich, wenn Sie npm-Pakete von CodeArtifact in verwenden. CodeBuild

  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die IAM-Konsole unter. https://console.aws.amazon.com/iam/

  2. Wählen Sie im Navigationsbereich Rollen. Bearbeiten Sie auf der Seite Rollen die Rolle, die von Ihrem CodeBuild Build-Projekt verwendet wird. Diese Rolle muss über die folgenden Berechtigungen verfügen.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codeartifact:GetAuthorizationToken", "codeartifact:GetRepositoryEndpoint", "codeartifact:ReadFromRepository" ], "Resource": "*" }, { "Effect": "Allow", "Action": "sts:GetServiceBearerToken", "Resource": "*", "Condition": { "StringEquals": { "sts:AWSServiceName": "codeartifact.amazonaws.com" } } } ] }
    Wichtig

    Wenn Sie die Option auch zum Veröffentlichen von Paketen verwenden CodeBuild möchten, fügen Sie die codeartifact:PublishPackageVersion entsprechende Berechtigung hinzu.

    Weitere Informationen finden Sie unter Ändern einer Rolle im IAM-Benutzerhandbuch.

Melden Sie sich an und verwenden Sie npm

Um npm-Pakete von zu verwenden CodeBuild, führen Sie den login Befehl aus dem pre-build Abschnitt Ihres Projekts aus, aus buildspec.yaml dem Pakete abgerufen werden npm sollen. CodeArtifact Weitere Informationen finden Sie unter Authentifizierung mit npm.

Nach login erfolgreicher Ausführung können Sie npm Befehle aus dem build Abschnitt zur Installation von NPM-Paketen ausführen.

Linux

Anmerkung

Ein Upgrade ist nur erforderlich, pip3 install awscli --upgrade --user wenn Sie ein älteres CodeBuild Image verwenden. AWS CLI Wenn Sie die neuesten Image-Versionen verwenden, können Sie diese Zeile entfernen.

pre_build: commands: - pip3 install awscli --upgrade --user - aws codeartifact login --tool npm --domain my_domain --domain-owner 111122223333 --repository my_repo build: commands: - npm install

Windows

version: 0.2 phases: install: commands: - '[Net.ServicePointManager]::SecurityProtocol = "Tls12"; Invoke-WebRequest https://awscli.amazonaws.com/AWSCLIV2.msi -OutFile $env:TEMP/AWSCLIV2.msi' - Start-Process -Wait msiexec "/i $env:TEMP\AWSCLIV2.msi /quiet /norestart" pre_build: commands: - '&"C:\Program Files\Amazon\AWSCLIV2\aws" codeartifact login --tool npm --domain my_domain --domain-owner 111122223333 --repository my_repo' build: commands: - npm install