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.
Stapel-BuildsAWS CodeBuild
Sie könnenAWS CodeBuildum gleichzeitige und koordinierte Builds eines Projekts mit Batch-Builds auszuführen.
Sicherheitsrolle
Batch-Builds führen eine neue Sicherheitsrolle in der Batch-Konfiguration ein. Diese neue Rolle ist erforderlich, da CodeBuild in der Lage sein mussStartBuild
,StopBuild
, undRetryBuild
Aktionen in Ihrem Namen, um Builds als Teil eines Stapels auszuführen. Kunden sollten aus zwei Gründen eine neue Rolle und nicht die gleiche Rolle verwenden, die sie in ihrem Build verwenden:
-
Die Build-Rolle geben
StartBuild
,StopBuild
, undRetryBuild
Berechtigungen würden es einem einzelnen Build ermöglichen, mehr Builds über die Buildspec zu starten. -
CodeBuild-Batch-Builds bieten Einschränkungen, die die Anzahl der Builds und Computing-Typen 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 umgehen.
StapelBuild-Typen
CodeBuild unterstützt die folgenden Batch-Build-Typen:
StapelBuild-Typen
Build-Diagramm
Ein Build-Diagramm definiert eine Reihe von Aufgaben, die Abhängigkeiten von anderen Aufgaben im Stapel haben.
Im folgenden Beispiel wird ein Build-Diagramm definiert, das eine Abhängigkeitskette erstellt.
batch: fast-fail: false build-graph: - identifier: build1 env: variables: BUILD_ID: build1 ignore-failure: false - identifier: build2 buildspec: build2.yml env: variables: BUILD_ID: build2 depend-on: - build1 - identifier: build3 env: variables: BUILD_ID: build3 depend-on: - build2
In diesem Beispiel:
-
build1
läuft zuerst, weil es keine Abhängigkeiten hat. -
build2
hat eine Abhängigkeit vonbuild1
, sobuild2
läuft danachbuild1
Schließt ab. -
build3
hat eine Abhängigkeit vonbuild2
, sobuild3
läuft danachbuild2
Schließt ab.
Weitere Informationen über Build-Graph-Buildspec Syntax finden Sie unterbatch/build-graphaus.
Liste erstellen
Eine Build-Liste definiert eine Reihe von Aufgaben, die parallel ausgeführt werden.
Im folgenden Beispiel definiert eine Build-Liste. Diebuild1
undbuild2
Builds werden parallel ausgeführt.
batch: fast-fail: false build-list: - identifier: build1 env: variables: BUILD_ID: build1 ignore-failure: false - identifier: build2 buildspec: build2.yml env: variables: BUILD_ID: build2 ignore-failure: true
Weitere Informationen über Buildspec Syntax finden Sie unterbatch/build-listaus.
Build-Matrix
Eine Build-Matrix definiert Aufgaben mit verschiedenen Konfigurationen, die parallel ausgeführt werden. CodeBuild erstellt für jede mögliche Konfigurationskombination einen separaten Build.
Das folgende Beispiel zeigt eine Build-Matrix mit zwei Buildspec-Dateien und drei Werten für eine Umgebungsvariable.
batch: build-matrix: static: ignore-failure: false dynamic: buildspec: - matrix1.yml - matrix2.yml env: variables: MY_VAR: - VALUE1 - VALUE2 - VALUE3
In diesem Beispiel erstellt CodeBuild sechs Builds:
-
matrix1.yml
mit$MY_VAR=VALUE1
-
matrix1.yml
mit$MY_VAR=VALUE2
-
matrix1.yml
mit$MY_VAR=VALUE3
-
matrix2.yml
mit$MY_VAR=VALUE1
-
matrix2.yml
mit$MY_VAR=VALUE2
-
matrix2.yml
mit$MY_VAR=VALUE3
Jeder Build hat folgende Einstellungen:
-
ignore-failure
Setzen Siefalse
-
env/type
Setzen SieLINUX_CONTAINER
-
env/image
Setzen Sieaws/codebuild/amazonlinux2-x86_64-standard:3.0
-
env/privileged-mode
Setzen Sietrue
Diese Builds werden parallel ausgeführt.
Weitere Informationen über Build-Matrix Buildspec Syntax finden Sie unterbatch/build-matrixaus.
Batch-Berichtsmodus
Wenn der Quellanbieter für Ihr Projekt Bitbucket, GitHub oder GitHub Enterprise ist und Ihr Projekt so konfiguriert ist, dass es Build-Status an den Quellanbieter meldet, können Sie auswählen, wie Ihre Batch-Build-Status an den Quellanbieter gesendet werden sollen. Sie können wählen, ob die Status als einzelner aggregierter Statusbericht für die Charge gesendet werden sollen, oder dass der Status jedes Builds im Stapel einzeln gemeldet wird.
Weitere Informationen finden Sie unter den folgenden Themen:
Weitere Informationen
Weitere Informationen finden Sie unter den folgenden Themen: