Pilih preferensi cookie Anda

Kami menggunakan cookie penting serta alat serupa yang diperlukan untuk menyediakan situs dan layanan. Kami menggunakan cookie performa untuk mengumpulkan statistik anonim sehingga kami dapat memahami cara pelanggan menggunakan situs dan melakukan perbaikan. Cookie penting tidak dapat dinonaktifkan, tetapi Anda dapat mengklik “Kustom” atau “Tolak” untuk menolak cookie performa.

Jika Anda setuju, AWS dan pihak ketiga yang disetujui juga akan menggunakan cookie untuk menyediakan fitur situs yang berguna, mengingat preferensi Anda, dan menampilkan konten yang relevan, termasuk iklan yang relevan. Untuk menerima atau menolak semua cookie yang tidak penting, klik “Terima” atau “Tolak”. Untuk membuat pilihan yang lebih detail, klik “Kustomisasi”.

Jalankan build dalam batch

Mode fokus
Jalankan build dalam batch - AWS CodeBuild

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Anda dapat menggunakan AWS CodeBuild untuk menjalankan build proyek secara bersamaan dan terkoordinasi dengan build batch.

Peran keamanan

Batch build memperkenalkan peran keamanan baru dalam konfigurasi batch. Peran baru ini diperlukan karena CodeBuild harus dapat memanggilStartBuild,StopBuild, dan RetryBuild tindakan atas nama Anda untuk menjalankan build sebagai bagian dari batch. Pelanggan harus menggunakan peran baru, dan bukan peran yang sama yang mereka gunakan dalam build mereka, karena dua alasan:

  • Memberikan peran buildStartBuild,StopBuild, dan RetryBuild izin akan memungkinkan satu build untuk memulai lebih banyak build melalui buildspec.

  • CodeBuild build batch memberikan batasan yang membatasi jumlah build dan tipe komputasi yang dapat digunakan untuk build dalam batch. Jika peran build memiliki izin ini, ada kemungkinan build itu sendiri dapat melewati batasan ini.

Jenis pembuatan Batch

CodeBuild mendukung jenis build batch berikut:

Membangun grafik

Grafik build mendefinisikan sekumpulan tugas yang memiliki dependensi pada tugas lain dalam batch.

Contoh berikut mendefinisikan grafik build yang membuat rantai dependensi.

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 - identifier: build4 env: compute-type: ARM_LAMBDA_1GB - identifier: build5 env: fleet: fleet_name

Dalam contoh ini:

  • build1berjalan terlebih dahulu karena tidak memiliki dependensi.

  • build2memiliki ketergantungan padabuild1, jadi build2 jalankan setelah build1 selesai.

  • build3memiliki ketergantungan padabuild2, jadi build3 jalankan setelah build2 selesai.

Untuk informasi selengkapnya tentang sintaks buildspec grafik build, lihat. batch/build-graph

Membangun daftar

Daftar build mendefinisikan sejumlah tugas yang berjalan secara paralel.

Contoh berikut mendefinisikan daftar build. The build1 and build2 build akan berjalan secara paralel.

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 - identifier: build3 env: compute-type: ARM_LAMBDA_1GB - identifier: build4 env: fleet: fleet_name - identifier: build5 env: compute-type: GENERAL_LINUX_XLAGRE

Untuk informasi selengkapnya tentang sintaks buildspec daftar build, lihat. batch/build-list

Membangun matriks

Matriks build mendefinisikan tugas dengan konfigurasi berbeda yang berjalan secara paralel. CodeBuild membuat build terpisah untuk setiap kombinasi konfigurasi yang mungkin.

Contoh berikut menunjukkan matriks build dengan dua file buildspec dan tiga nilai untuk variabel lingkungan.

batch: build-matrix: static: ignore-failure: false dynamic: buildspec: - matrix1.yml - matrix2.yml env: variables: MY_VAR: - VALUE1 - VALUE2 - VALUE3

Dalam contoh ini, CodeBuild buat enam build:

  • matrix1.yml dengan $MY_VAR=VALUE1

  • matrix1.yml dengan $MY_VAR=VALUE2

  • matrix1.yml dengan $MY_VAR=VALUE3

  • matrix2.yml dengan $MY_VAR=VALUE1

  • matrix2.yml dengan $MY_VAR=VALUE2

  • matrix2.yml dengan $MY_VAR=VALUE3

Setiap build akan memiliki pengaturan berikut:

  • ignore-failuredisetel ke false

  • env/typedisetel ke LINUX_CONTAINER

  • env/imagedisetel ke aws/codebuild/amazonlinux-x86_64-standard:4.0

  • env/privileged-modedisetel ke true

Build ini berjalan secara paralel.

Untuk informasi selengkapnya tentang sintaks buildspec matriks build, lihat. batch/build-matrix

Bangun fanout

Fanout build mendefinisikan tugas yang akan dibagi menjadi beberapa build dalam batch. Ini dapat digunakan untuk menjalankan tes secara paralel. CodeBuild membuat build terpisah untuk setiap pecahan kasus uji berdasarkan nilai yang ditetapkan di parallelism bidang.

Contoh berikut mendefinisikan fanout build yang membuat lima build yang berjalan secara paralel.

version: 0.2 batch: fast-fail: false build-fanout: parallelism: 5 ignore-failure: false phases: install: commands: - npm install build: commands: - mkdir -p test-results - cd test-results - | codebuild-tests-run \ --test-command 'npx jest --runInBand --coverage' \ --files-search "codebuild-glob-search '**/test/**/*.test.js'" \ --sharding-strategy 'equal-distribution'

Dalam contoh ini, dengan asumsi bahwa ada 100 tes yang perlu dijalankan, CodeBuild membuat lima build yang masing-masing menjalankan 20 tes secara paralel.

Untuk informasi selengkapnya tentang sintaks buildspec grafik build, lihat. batch/build-fanout

Mode laporan Batch

Jika penyedia sumber untuk project Anda adalah Bitbucket, GitHub, atau GitHub Enterprise, dan project Anda dikonfigurasi untuk melaporkan status build ke penyedia sumber, Anda dapat memilih bagaimana status build batch Anda dikirim ke penyedia sumber. Anda dapat memilih agar status dikirim sebagai laporan status agregat tunggal untuk batch, atau memiliki status setiap build dalam batch yang dilaporkan satu per satu.

Untuk informasi selengkapnya, lihat topik berikut.

Informasi lain

Untuk informasi selengkapnya, lihat topik berikut.

PrivasiSyarat situsPreferensi cookie
© 2025, Amazon Web Services, Inc. atau afiliasinya. Semua hak dilindungi undang-undang.