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.
Ändern Sie die Build-Projekteinstellungen in AWS CodeBuild
Sie können die AWS CodeBuild Konsole oder AWS SDKs verwenden AWS CLI, um die Einstellungen eines Build-Projekts zu ändern.
Wenn Sie einem Build-Projekt Testberichte hinzufügen, stellen Sie sicher, dass Ihre IAM-Rolle über die unter beschriebenen Berechtigungen verfügt. Berechtigungen für Testberichte
Themen
Ändern der Einstellungen eines Build-Projekts (Konsole)
Gehen Sie wie folgt vor, um die Einstellungen für ein Build-Projekt zu ändern:
Öffnen Sie die AWS CodeBuild Konsole unter https://console.aws.amazon.com/codesuite/codebuild/home
. -
Wählen Sie im linken Navigationsbereich Build projects aus.
-
Führen Sie eine der folgenden Aktionen aus:
-
Klicken Sie auf den Link des Build-Projekts, das Sie bearbeiten möchten, und klicken Sie dann auf Build details (Build-Details).
-
Aktivieren Sie das Optionsfeld neben dem Build-Projekt, das Sie ändern möchten, klicken Sie auf View details (Details anzeigen) und klicken Sie dann auf Build details (Build-Details).
-
Sie können die folgenden Abschnitte ändern:
Sections
Konfiguration des Projekts
Wählen Sie im Abschnitt Projektkonfiguration die Option Bearbeiten aus. Wenn Ihre Änderungen abgeschlossen sind, wählen Sie Konfiguration aktualisieren, um die neue Konfiguration zu speichern.
Sie können die folgenden Eigenschaften ändern.
- Beschreibung
-
Geben Sie optional eine Beschreibung des Build-Projekts ein, damit andere Benutzer verstehen, wofür dieses Projekt verwendet wird.
- Abzeichen erstellen
-
Wählen Sie Enable build badge (Build Badge aktivieren) aus, damit der Build-Status Ihres Projekts sichtbar und integrierbar ist. Weitere Informationen finden Sie unter Build Badges-Beispiel.
Anmerkung
Das Build Badge gilt nicht, wenn Ihr Quellanbieter Amazon S3 ist.
- Aktivieren Sie das Limit für gleichzeitige Builds
-
Wenn Sie die Anzahl gleichzeitiger Builds für dieses Projekt einschränken möchten, gehen Sie wie folgt vor:
-
Wählen Sie „Anzahl gleichzeitiger Builds einschränken“, die mit diesem Projekt gestartet werden können.
-
Geben Sie im Feld Limit für gleichzeitige Builds die maximale Anzahl gleichzeitiger Builds ein, die für dieses Projekt zulässig sind. Dieses Limit darf nicht höher sein als das für das Konto festgelegte Limit für gleichzeitige Builds. Wenn Sie versuchen, eine Zahl einzugeben, die das Kontenlimit überschreitet, wird eine Fehlermeldung angezeigt.
Neue Builds werden nur gestartet, wenn die aktuelle Anzahl der Builds dieses Limit unterschreitet oder ihm entspricht. Wenn die aktuelle Build-Anzahl dieses Limit erreicht, werden neue Builds gedrosselt und nicht ausgeführt.
-
- Aktivieren Sie den öffentlichen Build-Zugriff
-
Um die Build-Ergebnisse Ihres Projekts der Öffentlichkeit zugänglich zu machen, einschließlich Benutzern ohne AWS Kontozugriff, wählen Sie Öffentlichen Build-Zugriff aktivieren aus und bestätigen Sie, dass Sie die Build-Ergebnisse veröffentlichen möchten. Die folgenden Eigenschaften werden für öffentliche Build-Projekte verwendet:
- Rolle des öffentlichen Build-Dienstes
-
Wählen Sie Neue Servicerolle, wenn Sie eine neue Servicerolle für Sie CodeBuild erstellen lassen möchten, oder Bestehende Servicerolle, wenn Sie eine vorhandene Servicerolle verwenden möchten.
Die öffentliche Build-Servicerolle CodeBuild ermöglicht das Lesen der CloudWatch Protokolle und das Herunterladen der Amazon S3-Artefakte für die Builds des Projekts. Dies ist erforderlich, um die Build-Protokolle und Artefakte des Projekts der Öffentlichkeit zugänglich zu machen.
- Rolle „Dienst“
-
Geben Sie den Namen der neuen Servicerolle oder einer vorhandenen Servicerolle ein.
Um die Build-Ergebnisse Ihres Projekts als privat zu kennzeichnen, deaktivieren Sie die Option Öffentlichen Build-Zugriff aktivieren.
Weitere Informationen finden Sie unter URLs für öffentliche Build-Projekte abrufen.
Warnung
Folgendes sollte beachtet werden, wenn Sie die Build-Ergebnisse Ihres Projekts veröffentlichen:
-
Alle Build-Ergebnisse, Logs und Artefakte eines Projekts, einschließlich Builds, die ausgeführt wurden, als das Projekt privat war, sind der Öffentlichkeit zugänglich.
-
Alle Build-Logs und Artefakte sind öffentlich zugänglich. Umgebungsvariablen, Quellcode und andere vertrauliche Informationen wurden möglicherweise in die Build-Logs und Artefakte ausgegeben. Sie müssen vorsichtig sein, welche Informationen in die Build-Logs ausgegeben werden. Einige bewährte Methoden sind:
-
Speichern Sie keine vertraulichen Werte, insbesondere AWS Zugriffsschlüssel-IDs und geheime Zugriffsschlüssel, in Umgebungsvariablen. Wir empfehlen, einen Amazon EC2 Systems Manager Parameter Store oder AWS Secrets Manager zum Speichern vertraulicher Werte zu verwenden.
-
Gehen Sie wie folgt vor, Bewährte Methoden für die Verwendung von Webhooks um zu begrenzen, welche Entitäten einen Build auslösen können, und speichern Sie die Buildspec nicht im Projekt selbst, um sicherzustellen, dass Ihre Webhooks so sicher wie möglich sind.
-
-
Ein böswilliger Benutzer kann öffentliche Builds verwenden, um bösartige Artefakte zu verbreiten. Wir empfehlen Projektadministratoren, alle Pull Requests zu überprüfen, um sicherzustellen, dass es sich bei dem Pull Request um eine legitime Änderung handelt. Wir empfehlen außerdem, alle Artefakte anhand ihrer Prüfsummen zu validieren, um sicherzustellen, dass die richtigen Artefakte heruntergeladen werden.
- Zusätzliche Informationen
-
Geben Sie für Tags den Namen und den Wert aller Tags ein, die unterstützende AWS Dienste verwenden sollen. Verwenden Sie Add row, um ein Tag hinzuzufügen. Sie können bis zu 50 Tags hinzufügen.
Quelle
Wählen Sie im Abschnitt Quelle die Option Bearbeiten aus. Wenn Ihre Änderungen abgeschlossen sind, wählen Sie Konfiguration aktualisieren, um die neue Konfiguration zu speichern.
Sie können die folgenden Eigenschaften ändern:
- Quellanbieter
-
Wählen Sie den Quellcode-Anbietertyp. Verwenden Sie die folgenden Listen, um die für Ihren Quellanbieter geeignete Auswahl zu treffen:
Anmerkung
CodeBuild unterstützt Bitbucket Server nicht.
Umgebung
Wählen Sie im Abschnitt Umgebung die Option Bearbeiten aus. Wenn Ihre Änderungen abgeschlossen sind, wählen Sie Konfiguration aktualisieren, um die neue Konfiguration zu speichern.
Sie können die folgenden Eigenschaften ändern:
- Modell der Bereitstellung
-
Um das Bereitstellungsmodell zu ändern, wählen Sie Bereitstellungsmodell ändern und führen Sie einen der folgenden Schritte aus:
-
Um On-Demand-Flotten zu verwenden, die von AWS CodeBuild verwaltet werden, wählen Sie. On-demand CodeBuild Bietet mit On-Demand-Flotten Rechenleistung für Ihre Builds. Die Maschinen werden zerstört, wenn der Bau abgeschlossen ist. On-demand Die Flotten werden vollständig verwaltet und verfügen über automatische Skalierungsfunktionen, um Nachfragespitzen zu bewältigen.
-
Um Flotten mit reservierter Kapazität zu verwenden, die von verwaltet werden AWS CodeBuild, wählen Sie Reservierte Kapazität und dann einen Flottennamen aus. Bei Flotten mit reservierter Kapazität konfigurieren Sie eine Reihe von dedizierten Instances für Ihre Build-Umgebung. Diese Maschinen bleiben im Leerlauf und sind bereit, Builds oder Tests sofort zu verarbeiten und reduzieren die Builddauer. Mit Flotten mit reservierter Kapazität sind Ihre Maschinen ständig in Betrieb und es fallen weiterhin Kosten an, solange sie bereitgestellt werden.
Weitere Informationen finden Sie unter Führen Sie Builds auf Flotten mit reservierter Kapazität aus.
-
- Bild der Umgebung
-
Um das Build-Image zu ändern, wählen Sie Image überschreiben und führen Sie einen der folgenden Schritte aus:
-
Um ein Docker-Image zu verwenden, das von verwaltet wird AWS CodeBuild, wählen Sie „Verwaltetes Image“ und wählen Sie dann „Betriebssystem“, „Runtime (s)“, „Image“ und „Image-Version“ aus. Treffen Sie eine Auswahl unter Environment type (Umgebungstyp), sofern verfügbar.
-
Wenn Sie ein anderes Docker-Image verwenden möchten, wählen Sie Custom image (Benutzerdefiniertes Image) aus. Wählen Sie als Umgebungstyp ARM, Linux, Linux GPU oder Windows aus. Wenn Sie Andere Registrierung wählen , geben Sie unter Externe Registrierungs-URL den Namen und das Tag des Docker-Images in Docker Hub ein und verwenden Sie dabei das Format.
Wenn Sie Amazon ECR wählen, verwenden Sie das Amazon ECR-Repository und das Amazon ECR-Image, um das Docker-Image in Ihrem Konto auszuwählen. AWSdocker repository/docker image name -
Um ein privates Docker-Image zu verwenden, wählen Sie Benutzerdefiniertes Image. Wählen Sie als Umgebungstyp ARM, Linux, Linux GPU oder Windows aus. Wählen Sie unter Image registry (Abbildregistrierung) die Option Other registry (Andere Registrierung) aus und geben Sie dann den ARN der Anmeldeinformationen für Ihr privates Docker-Image ein. Die Anmeldeinformationen müssen von Secrets Manager erstellt werden. Weitere Informationen finden Sie unter Was ist AWS Secrets Manager? im AWS Secrets Manager -Benutzerhandbuch.
Anmerkung
CodeBuild überschreibt das
ENTRYPOINTfür benutzerdefinierte Docker-Images. -
- Rolle „Dienst“
Führen Sie eine der folgenden Aktionen aus:
-
Wenn Sie keine CodeBuild Servicerolle haben, wählen Sie Neue Servicerolle. Geben Sie im Feld Rollenname einen Namen für die neue Rolle ein.
-
Wenn Sie eine CodeBuild Servicerolle haben, wählen Sie Bestehende Servicerolle aus. Wählen Sie unter Role ARN die Servicerolle aus.
Anmerkung
Wenn Sie die Konsole verwenden, um ein Build-Projekt zu erstellen, können Sie gleichzeitig eine CodeBuild Servicerolle erstellen. In der Standardeinstellung funktioniert diese Rolle ausschließlich mit diesem Projekt. Wenn Sie die Konsole verwenden, um die Servicerolle mit einem anderen Build-Projekt zu verknüpfen, wird die Rolle so aktualisiert, dass sie mit dem anderen Build-Projekt funktioniert. Eine Servicerolle kann in bis zu zehn Build-Projekten verwendet werden.
-
- Zusätzliche Konfiguration
-
- Timeout (Zeitüberschreitung)
-
Geben Sie einen Wert zwischen 5 Minuten und 36 Stunden an, nach dessen Ablauf der Build CodeBuild beendet wird, falls er nicht abgeschlossen ist. Wenn Sie die Felder hours und minutes leer lassen, wird der Standardwert von 60 Minuten verwendet.
- Privilegiert
-
Wählen Sie Dieses Flag aktivieren, wenn Sie Docker-Images erstellen möchten oder möchten, dass Ihre Builds erhöhte Rechte erhalten. nur, wenn Sie dieses Build-Projekt zum Erstellen von Docker-Images verwenden möchten. Andernfalls schlagen alle zugehörigen Builds fehl, die versuchen, mit dem Docker-Daemon zu interagieren. Sie müssen zudem den Docker-Daemon müssen, damit Ihre Builds interagieren können. Eine Möglichkeit, dies zu tun, besteht darin, den Docker-Daemon in der
installPhase Ihrer Buildspec zu initialisieren, indem Sie die folgenden Build-Befehle ausführen. Führen Sie diese Befehle nicht aus, wenn Sie ein Image der Build-Umgebung ausgewählt haben, das von with Docker-Unterstützung bereitgestellt wird. CodeBuildAnmerkung
Standardmäßig ist der Docker-Daemon für Nicht-VPC-Builds aktiviert. Wenn Sie Docker-Container für VPC-Builds verwenden möchten, lesen Sie auf der Docker Docs-Website unter
Runtime Privilege und Linux Capabilities nach und aktivieren Sie den privilegierten Modus. Außerdem unterstützt Windows den privilegierten Modus nicht. - nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://127.0.0.1:2375 --storage-driver=overlay2 & - timeout 15 sh -c "until docker info; do echo .; sleep 1; done" - VPC
Wenn Sie mit Ihrer VPC arbeiten möchten CodeBuild :
-
Wählen Sie für VPC die VPC-ID aus, die verwendet wird. CodeBuild
-
Wählen Sie für VPC-Subnetze die Subnetze aus, die Ressourcen enthalten, die verwendet werden. CodeBuild
-
Wählen Sie für VPC-Sicherheitsgruppen die Sicherheitsgruppen aus, die den Zugriff auf Ressourcen in den VPCs ermöglichen. CodeBuild
Weitere Informationen finden Sie unter Verwendung AWS CodeBuild mit Amazon Virtual Private Cloud.
-
- Datenverarbeitung
-
Wählen Sie eine der verfügbaren Optionen.
- Anmeldeinformationen für die Registrierung
-
Geben Sie einen Registrierungsnachweis an, wenn das Projekt mit einem nicht privaten Registrierungsabbild konfiguriert ist.
Anmerkung
Diese Anmeldeinformationen werden nur verwendet, wenn die Images durch Bilder aus privaten Registrierungen überschrieben werden.
- Umgebungsvariablen
-
Geben Sie den Namen und den Wert ein und wählen Sie dann den Typ der einzelnen Umgebungsvariablen aus, die Builds verwenden sollen.
Anmerkung
CodeBuild legt die Umgebungsvariable für Ihre AWS Region automatisch fest. Sie müssen die folgenden Umgebungsvariablen festlegen, wenn Sie sie nicht zu Ihrer buildspec.yml hinzugefügt haben:
-
AWS_ACCOUNT_ID
-
IMAGE_REPO_NAME
-
IMAGE_TAG
Konsole und AWS CLI Benutzer können Umgebungsvariablen sehen. Wenn Sie keine Bedenken hinsichtlich der Sichtbarkeit Ihrer Umgebungsvariablen haben, stellen Sie die Felder Name und Value ein und legen Sie dann den Type auf Plaintext fest.
Wir empfehlen, dass Sie eine Umgebungsvariable mit einem vertraulichen Wert wie einer AWS Zugriffsschlüssel-ID, einem AWS geheimen Zugriffsschlüssel oder einem Passwort als Parameter im Amazon EC2 Systems Manager Parameter Store oder AWS Secrets Manager speichern.
Wenn Sie Amazon EC2 Systems Manager Parameter Store verwenden, wählen Sie als Typ die Option Parameter aus. Geben Sie als Name einen Bezeichner ein, CodeBuild auf den verwiesen werden soll. Geben Sie für Value den Namen des Parameters ein, der im Amazon EC2 Systems Manager Parameter Store gespeichert ist. Verwenden Sie beispielsweise einen Parameter mit der Bezeichnung
/CodeBuild/dockerLoginPasswordund wählen Sie für Type (Typ) Parameter Store aus. Geben Sie unter NameLOGIN_PASSWORDein. Geben Sie für Wert/CodeBuild/dockerLoginPasswordein.Wichtig
Wenn Sie Amazon EC2 Systems Manager Parameter Store verwenden, empfehlen wir Ihnen, Parameter mit Parameternamen zu speichern, die mit
/CodeBuild/(z. B.) beginnen./CodeBuild/dockerLoginPasswordSie können die CodeBuild Konsole verwenden, um einen Parameter in Amazon EC2 Systems Manager zu erstellen. Wählen Sie Create a parameter (Parameter erstellen) aus und befolgen Sie dann die Anweisungen im Dialogfeld. (In diesem Dialogfeld können Sie für den KMS-Schlüssel den ARN eines AWS KMS Schlüssels in Ihrem Konto angeben. Amazon EC2 Systems Manager verwendet diesen Schlüssel, um den Wert des Parameters beim Speichern zu verschlüsseln und beim Abrufen zu entschlüsseln.) Wenn Sie die CodeBuild Konsole verwenden, um einen Parameter zu erstellen, beginnt die Konsole den Parameternamen mit dem,/CodeBuild/wie er gespeichert wird. Weitere Informationen finden Sie im Amazon EC2 Systems Manager-Benutzerhandbuch unter Systems Manager Parameter Store und Walkthrough für die Systems Manager Parameter Store Console.Wenn Ihr Build-Projekt auf Parameter verweist, die im Amazon EC2 Systems Manager Parameter Store gespeichert sind, muss die Servicerolle des Build-Projekts die Aktion zulassen.
ssm:GetParametersWenn Sie zuvor „Neue Servicerolle“ ausgewählt haben, CodeBuild wird diese Aktion in die Standard-Servicerolle für Ihr Build-Projekt aufgenommen. Wenn Sie jedoch Existing service role (Vorhandene Servicerolle) ausgewählt haben, müssen Sie diese Aktion separat in Ihre Servicerolle aufnehmen.Wenn Ihr Build-Projekt auf Parameter verweist, die im Amazon EC2 Systems Manager Parameter Store mit Parameternamen gespeichert sind, die nicht mit beginnen
/CodeBuild/, und Sie Neue Servicerolle ausgewählt haben, müssen Sie diese Servicerolle aktualisieren, um den Zugriff auf Parameternamen zu ermöglichen, die nicht mit/CodeBuild/beginnen. Dies liegt daran, dass diese Service-Rolle nur auf Parameternamen zugreift, die mit/CodeBuild/beginnen.Wenn Sie Neue Servicerolle wählen, beinhaltet die Servicerolle die Berechtigung, alle Parameter unter dem
/CodeBuild/Namespace im Amazon EC2 Systems Manager-Parameterspeicher zu entschlüsseln.Von Ihnen gesetzte Umgebungsvariablen ersetzen vorhandene Umgebungsvariablen. Wenn das Docker-Image beispielsweise bereits eine Umgebungsvariable mit dem Namen
MY_VARund einem Wert vonmy_valueenthält und Sie eine Umgebungsvariable mit dem NamenMY_VARund einem Wert vonother_valuefestlegen, wirdmy_valuedurchother_valueersetzt. Wenn das Docker-Image demgegenüber bereits eine Umgebungsvariable mit dem NamenPATHund einem Wert von/usr/local/sbin:/usr/local/binenthält und Sie eine Umgebungsvariable mit dem NamenPATHund einem Wert von$PATH:/usr/share/ant/binfestlegen, wird/usr/local/sbin:/usr/local/bindurch den Literalwert$PATH:/usr/share/ant/binersetzt.Legen Sie keine Umgebungsvariable mit einem Namen fest, der mit
CODEBUILD_beginnt. Dieses Präfix ist zur -internen Verwendung reserviert.Wenn eine Umgebungsvariable mit identischem Namen an mehreren Orten definiert ist, wird der Wert folgendermaßen bestimmt:
-
Der Wert im Aufruf zum Starten des Build-Vorgangs hat den höchsten Vorrang.
-
Der Wert in der Build-Projektdefinition folgt darauf.
-
Der Wert in der buildspec-Deklaration hat die niedrigste Priorität.
Wenn Sie Secrets Manager verwenden, wählen Sie Secrets Manager als Typ aus. Geben Sie als Name einen Bezeichner ein, auf CodeBuild den verwiesen werden soll. Geben Sie unter Wert einen
reference-keymit dem Musterein. Weitere Informationen finden Sie unter Secrets Manager reference-key in the buildspec file.secret-id:json-key:version-stage:version-idWichtig
Wenn Sie Secrets Manager verwenden, empfehlen wir, Secrets mit Namen zu speichern, die mit
/CodeBuild/(z. B./CodeBuild/dockerLoginPassword) beginnen. Weitere Informationen finden Sie unter Was ist AWS Secrets Manager? im AWS Secrets Manager -Benutzerhandbuch.Wenn Ihr Build-Projekt auf Geheimnisse verweist, die in Secrets Manager gespeichert sind, muss die Servicerolle des Build-Projekts die
secretsmanager:GetSecretValueAktion zulassen. Wenn Sie zuvor „Neue Servicerolle“ ausgewählt haben CodeBuild , wird diese Aktion in die Standard-Servicerolle für Ihr Build-Projekt aufgenommen. Wenn Sie jedoch Existing service role (Vorhandene Servicerolle) ausgewählt haben, müssen Sie diese Aktion separat in Ihre Servicerolle aufnehmen.Wenn Ihr Build-Projekt auf Geheimnisse verweist, die in Secrets Manager mit geheimen Namen gespeichert sind, die nicht mit beginnen
/CodeBuild/, und Sie Neue Servicerolle ausgewählt haben, müssen Sie die Servicerolle aktualisieren, um den Zugriff auf geheime Namen zu ermöglichen, die nicht mit beginnen/CodeBuild/. Das liegt daran, dass die Servicerolle nur den Zugriff auf geheime Namen ermöglicht, die mit beginnen/CodeBuild/.Wenn Sie Neue Servicerolle wählen, beinhaltet die Servicerolle die Berechtigung, alle Geheimnisse unter dem
/CodeBuild/Namespace im Secrets Manager zu entschlüsseln. -
Spezifikation erstellen
Wählen Sie im Abschnitt Buildspec die Option Bearbeiten aus. Wenn Ihre Änderungen abgeschlossen sind, wählen Sie Konfiguration aktualisieren, um die neue Konfiguration zu speichern.
Sie können die folgenden Eigenschaften ändern:
- Spezifikationen erstellen
-
Führen Sie eine der folgenden Aktionen aus:
-
Wenn Ihr Quellcode eine buildspec-Datei enthält, wählen Sie Use a buildspec file (Eine buildspec-Datei verwenden) aus. Standardmäßig sucht CodeBuild nach einer Datei namens
buildspec.ymlim Quellcodestammverzeichnis. Wenn Ihre Buildspec-Datei einen anderen Namen oder Speicherort verwendet, geben Sie ihren Pfad vom Quellstammverzeichnis in das Feld Buildspec-Name ein (z. B. oder.buildspec-two.ymlconfiguration/buildspec.ymlWenn sich die Buildspec-Datei in einem S3-Bucket befindet, muss sie sich in derselben Region wie Ihr Build-Projekt befinden. AWS Geben Sie die Buildspec-Datei mithilfe ihres ARN an (z. B.).arn:aws:s3:::<my-codebuild-sample2>/buildspec.yml -
Wenn der Quellcode keine Build-Spezifikationsdatei enthält oder Sie andere Build-Befehle ausführen möchten, als für die
build-Phase in derbuildspec.yml-Datei im Stammverzeichnis des Quellcodes angegeben wurden, wählen Sie Insert build commands (Build-Befehle einfügen) aus. Geben Sie für Build commands (Build-Befehle) die Befehle ein, die in derbuild-Phase ausgeführt werden sollen. Bei mehreren Befehlen unterteilen Sie die einzelnen Befehle mit&&, (wie z. B.mvn test && mvn package). Um Befehle in anderen Phasen auszuführen oder wenn Sie eine lange Liste von Befehlen für diebuildPhase haben, fügen Sie einebuildspec.ymlDatei zum Quellcode-Stammverzeichnis hinzu, fügen Sie die Befehle zur Datei hinzu und wählen Sie dann Use the buildspec.yml im Quellcode-Stammverzeichnis.
Weitere Informationen hierzu finden Sie unter Build-Spezifikationsreferenz.
-
Batch-Konfiguration
Wählen Sie im Abschnitt Batch-Konfiguration die Option Bearbeiten aus. Wenn Ihre Änderungen abgeschlossen sind, wählen Sie Konfiguration aktualisieren, um die neue Konfiguration zu speichern. Weitere Informationen finden Sie unter Führen Sie Builds stapelweise aus.
Sie können die folgenden Eigenschaften ändern:
- Rolle „Batch-Service“
-
Stellt die Servicerolle für Batch-Builds bereit.
Wählen Sie eine der folgenden Optionen:
-
Wenn Sie keine Batch-Servicerolle haben, wählen Sie Neue Servicerolle aus. Geben Sie im Feld Servicerolle einen Namen für die neue Rolle ein.
-
Wenn Sie eine Batch-Servicerolle haben, wählen Sie Bestehende Servicerolle aus. Wählen Sie unter Servicerolle die Servicerolle aus.
Stapel-Builds führen eine neue Sicherheitsrolle in der Stapelkonfiguration ein. Diese neue Rolle ist erforderlich, da Sie in der Lage sein CodeBuild müssen
StartBuild, dieRetryBuildAktionenStopBuild, und in Ihrem Namen aufzurufen, um Builds als Teil eines Batches auszuführen. Kunden sollten aus zwei Gründen eine neue Rolle verwenden und nicht dieselbe Rolle, die sie in ihrem Build nutzen:-
Wenn Sie der Build-Rolle die Berechtigungen
StartBuild,StopBuildundRetryBuilderteilen, kann ein einzelnes Build mehr Builds über buildspec zu starten. -
CodeBuild Batch-Builds enthalten Einschränkungen, die die Anzahl der Builds und Berechnungstypen einschränken, die für die Builds im Batch verwendet werden können. Wenn die Build-Rolle über diese Berechtigungen verfügt, können die Builds selbst diese Einschränkungen möglicherweise umgehen.
-
- Zulässige Berechnungstypen für Batches
-
Wählen Sie die für den Batch zulässigen Berechnungstypen aus. Wählen Sie alle zutreffenden Antworten aus.
- Zulässige Flotten für Chargen
-
Wählen Sie die Flotten aus, die für den Batch zulässig sind. Wählen Sie alle zutreffenden Antworten aus.
- Maximal zulässige Anzahl von Builds im Batch
-
Geben Sie die maximale Anzahl von Builds ein, die im Stapel zulässig sind. Wenn ein Stapel diesen Grenzwert überschreitet, schlägt der Batch fehl.
- Timeout für den Batch
-
Geben Sie die maximale Zeit ein, bis die Batch-Erstellung abgeschlossen ist.
- Kombiniere Artefakte
-
Wählen Sie Alle Artefakte aus dem Stapel an einem einzigen Ort zusammenfassen aus, um alle Artefakte aus dem Stapel an einem einzigen Ort zusammenzufassen.
- Modus „Batch-Bericht“
-
Wählen Sie den gewünschten Build-Statusberichtsmodus für Batch-Builds aus.
Anmerkung
Dieses Feld ist nur verfügbar, GitHub wenn die Projektquelle Bitbucket oder GitHub Enterprise ist. Build-Status an den Quellanbieter melden, wenn Ihre Builds beginnen und enden, unter Quelle ausgewählt ist.
- Aggregierte Builds
-
Wählen Sie diese Option aus, um die Status aller Builds im Stapel in einem einzigen Statusbericht zusammenzufassen.
- Einzelne Builds
-
Wählen Sie diese Option aus, um den Build-Status für alle Builds im Stapel separat zu melden.
-Artefakte
Wählen Sie im Abschnitt Artefakte die Option Bearbeiten aus. Wenn Ihre Änderungen abgeschlossen sind, wählen Sie Konfiguration aktualisieren, um die neue Konfiguration zu speichern.
Sie können die folgenden Eigenschaften ändern:
- Typ
-
Führen Sie eine der folgenden Aktionen aus:
-
Wenn keine Build-Ausgabeartefakte erstellt werden sollen, klicken Sie auf die Option No artifacts. Möglicherweise möchten Sie dies tun, wenn Sie nur Build-Tests ausführen oder ein Docker-Image in ein Amazon ECR-Repository übertragen möchten.
-
Um die Build-Ausgabe in einem S3-Bucket zu speichern, wählen Sie Amazon S3 und gehen Sie dann wie folgt vor:
-
Lassen Sie Name leer, wenn Sie den Projektnamen für die ZIP-Datei mit der Build-Ausgabe verwenden möchten. Geben Sie andernfalls den Namen ein. (Wenn eine ZIP-Datei mit einer Dateierweiterung ausgegeben werden soll, vergewissern Sie sich, dass Sie die Dateierweiterung an den Namen der ZIP-Datei anfügen.)
-
Wählen Sie Enable semantitic versioning (Semantisches Versioning aktivieren) aus, wenn Sie möchten, dass ein Name in der buildspec-Datei jeden beliebigen in der Konsole angegebenen Namen überschreibt. Der Name in einer buildspec-Datei wird zur Erstellungszeit berechnet und verwendet die Shell-Befehlssprache. Beispielsweise können Sie dem Namen Ihres Artefakts ein Datum und eine Uhrzeit anhängen, damit dieser stets eindeutig ist. Eindeutige Artefakt-Namen verhindern, dass Artefakte überschrieben werden. Weitere Informationen finden Sie unter Syntax der Build-Spezifikation.
-
Wählen Sie für Bucket name den Namen des Ausgabe-Buckets aus.
-
Wenn Sie in diesem Vorgang zuvor die Option Insert build commands (Build-Befehle eingeben) verwendet haben, geben Sie für Output files (Ausgabedateien) die Speicherorte der Build-Dateien ein, die in der ZIP-Datei oder dem Ordner für die Build-Ausgabe enthalten sein sollen. Bei mehreren Speicherorten trennen Sie die einzelnen Speicherorte durch ein Komma, (wie z. B.
appspec.yml, target/my-app.jar). Weitere Informationen finden Sie in der Beschreibung vonfilesin Syntax der Build-Spezifikation. -
Wenn Sie nicht wollen, dass Ihre Build-Artefakte verschlüsselt werden, wählen Sie Remove artifacts encryption (Verschlüsselung von Artefakten entfernen) aus.
-
Für jede Gruppe sekundärer Artefakte:
-
Geben Sie für Artifact identifier (Artefakt-ID) einen Wert mit weniger als 128 Zeichen ein, der nur alphanumerische Zeichen und Unterstriche enthält.
-
Wählen Sie Add artifact (Artefakt hinzufügen) aus.
-
Führen Sie die vorherigen Schritte aus, um die sekundären Artefakte zu konfigurieren.
-
Wählen Sie Save artifact (Artefakt speichern) aus.
-
- Zusätzliche Konfiguration
-
- Verschlüsselungsschlüssel
-
Führen Sie eine der folgenden Aktionen aus:
-
Um Von AWS verwalteter Schlüssel Amazon S3 in Ihrem Konto zum Verschlüsseln der Build-Ausgabeartefakte zu verwenden, lassen Sie den Verschlüsselungsschlüssel leer. Dies ist die Standardeinstellung.
-
Um einen vom Kunden verwalteten Schlüssel zum Verschlüsseln der Build-Ausgabeartefakte zu verwenden, geben Sie im Feld Verschlüsselungsschlüssel den ARN des vom Kunden verwalteten Schlüssels ein. Verwenden Sie dabei das Format
arn:aws:kms:.region-ID:account-ID:key/key-ID
-
- Cache-Typ
Wählen Sie für Cache type (Cache-Typ) eine der folgenden Optionen aus:
-
Wenn Sie keinen Cache verwenden möchten, wählen Sie No cache.
-
Wenn Sie einen Amazon S3-Cache verwenden möchten, wählen Sie Amazon S3 und gehen Sie dann wie folgt vor:
-
Wählen Sie für Bucket den Namen des S3-Buckets, in dem der Cache gespeichert wird.
-
(Optional) Geben Sie für das Cache-Pfadpräfix ein Amazon S3-Pfadpräfix ein. Der Wert für Cache path prefix (Cache-Pfadpräfix) ist mit einem Verzeichnisnamen vergleichbar. Er ermöglicht Ihnen das Speichern des Cache in demselben Verzeichnis eines Buckets.
Wichtig
Fügen Sie am Ende des Pfadpräfix keinen abschließenden Schrägstrich (/) an.
-
-
Wenn Sie einen lokalen Cache verwenden möchten, wählen Sie Local (Lokal) und dann mindestens einen lokalen Cache-Modus aus.
Anmerkung
Der Modus Docker layer cache (Docker-Ebenen-Cache) ist nur für Linux verfügbar. Wenn Sie diesen Modus auswählen, muss Ihr Projekt im privilegierten Modus ausgeführt werden.
Durch die Verwendung eines Caches wird eine erhebliche Ersparnis bei der Erstellungszeit erzielt, da wiederverwendbare Teile der Build-Umgebung im Cache gespeichert und über Builds hinweg verwendet werden. Weitere Informationen über die Angabe eines Cache in der Build-Spezifikationsdatei finden Sie unter Syntax der Build-Spezifikation. Weitere Informationen zum Caching finden Sie unter Cache-Builds zur Leistungsverbesserung.
-
Protokolle
Wählen Sie im Abschnitt Protokolle die Option Bearbeiten aus. Wenn Ihre Änderungen abgeschlossen sind, wählen Sie Konfiguration aktualisieren, um die neue Konfiguration zu speichern.
Sie können die folgenden Eigenschaften ändern:
Wählen Sie die Protokolle aus, die Sie erstellen möchten. Sie können Amazon CloudWatch Logs, Amazon S3-Logs oder beides erstellen.
- CloudWatch
-
Wenn Sie Amazon CloudWatch Logs-Protokolle wünschen:
- CloudWatch logs
-
Wählen Sie CloudWatch logs (CW-Protokolle).
- Group name (Gruppenname)
-
Geben Sie den Namen Ihrer Amazon CloudWatch Logs-Protokollgruppe ein.
- Name des Streams
-
Geben Sie den Namen Ihres Amazon CloudWatch Logs-Log-Streams ein.
- S3
-
Wenn Sie Amazon S3-Protokolle wünschen:
- S3-Protokolle
-
Wählen Sie S3 logs (S3-Protokolle).
- Bucket
-
Wählen Sie den Namen des S3-Buckets für Ihre Logs.
- Pfadpräfix
-
Geben Sie das Präfix für Ihre Logs ein.
- Deaktivieren Sie die S3-Protokollverschlüsselung
-
Wählen Sie aus, ob Ihre S3-Protokolle nicht verschlüsselt werden sollen.
Ändern Sie die Einstellungen eines Build-Projekts (AWS CLI)
Informationen zur Verwendung von AWS CLI with AWS CodeBuild finden Sie unterBefehlszeilenreferenz.
Um ein CodeBuild Projekt mit dem zu aktualisieren AWS CLI, erstellen Sie eine JSON-Datei mit den aktualisierten Eigenschaften und übergeben diese Datei an den update-project Befehl. Alle Eigenschaften, die nicht in der Aktualisierungsdatei enthalten sind, bleiben unverändert.
In der JSON-Aktualisierungsdatei sind nur die name Eigenschaft und die geänderten Eigenschaften erforderlich. Die name Eigenschaft identifiziert das Projekt, das geändert werden soll. Für alle geänderten Strukturen müssen auch die für diese Strukturen erforderlichen Parameter angegeben werden. Um beispielsweise die Umgebung für das Projekt zu ändern, sind die environment/computeType Eigenschaften environment/type und erforderlich. Hier ist ein Beispiel, das das Umgebungsbild aktualisiert:
{ "name": "<project-name>", "environment": { "type": "LINUX_CONTAINER", "computeType": "BUILD_GENERAL1_SMALL", "image": "aws/codebuild/amazonlinux-x86_64-standard:4.0" } }
Wenn Sie die aktuellen Eigenschaftswerte für ein Projekt abrufen müssen, verwenden Sie den batch-get-projects Befehl, um die aktuellen Eigenschaften des Projekts abzurufen, das Sie ändern, und schreiben Sie die Ausgabe in eine Datei.
aws codebuild batch-get-projects --names "<project-name>" >project-info.json
Die project-info.json Datei enthält eine Reihe von Projekten und kann daher nicht direkt zum Aktualisieren eines Projekts verwendet werden. Sie können jedoch die Eigenschaften, die Sie ändern möchten, aus der project-info.json Datei kopieren und sie als Grundlage für die Eigenschaften, die Sie ändern möchten, in Ihre Aktualisierungsdatei einfügen. Weitere Informationen finden Sie unter Anzeigen der Details eines Build-Projekts (AWS CLI).
Ändern Sie die JSON-Aktualisierungsdatei wie unter beschriebenErstellen Sie ein Build-Projekt (AWS CLI), und speichern Sie Ihre Ergebnisse. Wenn Sie mit der Änderung der JSON-Aktualisierungsdatei fertig sind, führen Sie den update-project Befehl aus und übergeben Sie die Aktualisierungs-JSON-Datei.
aws codebuild update-project --cli-input-json file://<update-project-file>
Bei Erfolg wird das aktualisierte Projekt-JSON in der Ausgabe angezeigt. Wenn erforderliche Parameter fehlen, wird in der Ausgabe eine Fehlermeldung angezeigt, die die fehlenden Parameter identifiziert. Dies ist beispielsweise die Fehlermeldung, die angezeigt wird, wenn der environment/type Parameter fehlt:
aws codebuild update-project --cli-input-json file://update-project.json Parameter validation failed: Missing required parameter in environment: "type"
Ändern Sie die Einstellungen eines Build-Projekts (AWS SDKs)
Informationen zur Verwendung AWS CodeBuild mit den AWS SDKs finden Sie unter. AWS Referenz zu SDKs und Tools