Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
AWS CodeBuild membangun dan menguji referensi tindakan
Memungkinkan Anda menjalankan build dan pengujian sebagai bagian dari pipeline Anda. Saat Anda menjalankan tindakan CodeBuild build atau test, perintah yang ditentukan dalam buildspec dijalankan di dalam wadah. CodeBuild Semua artefak yang ditentukan sebagai artefak input untuk suatu CodeBuild tindakan tersedia di dalam wadah yang menjalankan perintah. CodeBuild dapat memberikan tindakan build atau test. Untuk informasi selengkapnya, silakan lihat Panduan Pengguna AWS CodeBuild.
Saat Anda menggunakan CodePipeline wizard di konsol untuk membuat proyek build, proyek CodeBuild build menunjukkan penyedia sumbernya CodePipeline. Saat Anda membuat proyek build di CodeBuild konsol, Anda tidak dapat menentukan CodePipeline sebagai penyedia sumber, tetapi menambahkan tindakan build ke pipeline Anda menyesuaikan sumber di CodeBuild konsol. Untuk informasi selengkapnya, lihat ProjectSource di dalam Referensi API AWS CodeBuild .
Topik
Tipe tindakan
-
Kategori:
BuildatauTest -
Pemilik:
AWS -
Penyedia:
CodeBuild -
Versi:
1
Parameter konfigurasi
- ProjectName
-
Wajib: Ya
ProjectNameadalah nama proyek pembangunan di CodeBuild. - PrimarySource
-
Diperlukan: Kondisional
Nilai
PrimarySourceparameter harus menjadi nama salah satu artefak input untuk tindakan. CodeBuild mencari file buildspec dan menjalankan perintah buildspec di direktori yang berisi versi unzip dari artefak ini.Parameter ini diperlukan jika beberapa artefak input ditentukan untuk suatu CodeBuild tindakan. Ketika hanya ada satu artefak sumber untuk tindakan tersebut, artefak default ke
PrimarySourceartefak itu. - BatchEnabled
-
Wajib: Tidak
Nilai Boolean dari
BatchEnabledparameter memungkinkan tindakan untuk menjalankan beberapa build dalam eksekusi build yang sama.Ketika opsi ini diaktifkan,
CombineArtifactsopsi tersedia.Untuk contoh pipeline dengan build batch diaktifkan, lihat CodePipeline integrasi dengan CodeBuild dan build batch.
- BuildspecOverride
-
Wajib: Tidak
Definisi buildspec sebaris atau deklarasi file buildspec yang menggantikan yang terbaru yang ditentukan dalam proyek build, hanya untuk build ini. Spesifikasi build yang ditentukan pada proyek tidak berubah.
Jika nilai ini diatur, itu bisa menjadi salah satu dari berikut ini:
-
Definisi buildspec sebaris. Untuk informasi selengkapnya, lihat referensi sintaks di sintaks Buildspec.
-
Jalur ke file buildspec alternatif relatif terhadap nilai variabel
CODEBUILD_SRC_DIRlingkungan bawaan atau jalur ke bucket S3. Bucket harus Wilayah AWS sama dengan proyek pembangunan. Tentukan file buildspec menggunakan ARN-nya (misalnya,).arn:aws:s3:::my-codebuild-sample2/buildspec.ymlJika nilai ini tidak disediakan atau disetel ke string kosong, kode sumber harus berisi file buildspec di direktori root. Untuk informasi selengkapnya tentang menambahkan jalur, lihat Nama Berkas Buildspec dan Lokasi Penyimpanan.
catatan
Karena properti ini memungkinkan Anda untuk mengubah perintah build yang akan berjalan di wadah, Anda harus mencatat bahwa prinsipal IAM dengan kemampuan untuk memanggil API ini dan mengatur parameter ini dapat mengganti pengaturan default. Selain itu, kami menganjurkan agar Anda menggunakan lokasi buildspec yang dapat dipercaya seperti file di repositori sumber Anda atau bucket Amazon S3.
-
- CombineArtifacts
-
Wajib: Tidak
Nilai Boolean dari
CombineArtifactsparameter menggabungkan semua artefak build dari batch build menjadi satu file artefak untuk tindakan build.Untuk menggunakan opsi ini,
BatchEnabledparameter harus diaktifkan. - EnvironmentVariables
-
Wajib: Tidak
Nilai parameter ini digunakan untuk mengatur variabel lingkungan untuk CodeBuild tindakan di pipeline Anda. Nilai untuk
EnvironmentVariablesparameter mengambil bentuk array JSON dari objek variabel lingkungan. Lihat contoh parameter diDeklarasi tindakan (CodeBuild contoh).Setiap objek memiliki tiga bagian, yang semuanya adalah string:
-
name: Nama atau kunci variabel lingkungan. -
value: Nilai variabel lingkungan. Saat menggunakanSECRETS_MANAGERtipePARAMETER_STOREatau, nilai ini harus berupa nama parameter yang telah Anda simpan di AWS System Manager Parameter Store atau rahasia yang telah Anda simpan di AWS Secrets Manager, masing-masing.catatan
Kami sangat tidak menyarankan penggunaan variabel lingkungan untuk menyimpan nilai sensitif, terutama AWS kredenSIAL. Saat Anda menggunakan CodeBuild konsol atau AWS CLI, variabel lingkungan ditampilkan dalam teks biasa. Untuk nilai sensitif, sebaiknya gunakan
SECRETS_MANAGERtipe sebagai gantinya. -
type: (Opsional) Jenis variabel lingkungan. Nilai yang valid adalahPARAMETER_STORE,SECRETS_MANAGER, atauPLAINTEXT. Jika tidak ditentukan, ini default kePLAINTEXT.
catatan
Saat Anda memasukkan
name,value, dantypeuntuk konfigurasi variabel lingkungan Anda, terutama jika variabel lingkungan berisi sintaks variabel CodePipeline keluaran, jangan melebihi batas 1000 karakter untuk bidang nilai konfigurasi. Kesalahan validasi dikembalikan ketika batas ini terlampaui.Untuk informasi selengkapnya, lihat EnvironmentVariable di Refer AWS CodeBuild ensi API. Untuk contoh CodeBuild tindakan dengan variabel lingkungan yang diselesaikan ke nama GitHub cabang, lihatContoh: Gunakan BranchName variabel dengan variabel CodeBuild lingkungan.
-
- ServiceRoleArnOverride
-
Wajib: Tidak
Peran IAM ARN yang CodeBuild digunakan sebagai peran layanan untuk build yang dipicu oleh tindakan ini, mengesampingkan peran layanan default yang dikonfigurasi pada CodeBuild proyek. Ketika tidak ada, CodeBuild proyek menggunakan peran layanan defaultnya.
Peran yang ditentukan harus memiliki kebijakan kepercayaan yang memungkinkan
codebuild.amazonaws.com.rproxy.goskope.comlayanan untuk mengasumsikannya. Identitas yang digunakan untuk membuat atau memperbarui pipeline dan peran layanan pipeline harus memilikiiam:PassRoleizin untuk peran yang ditentukan. Untuk contoh kebijakan, lihat Izin peran layanan: CodeBuild tindakan.Sebagai praktik terbaik keamanan, ketika CodeBuild proyek dibagikan di beberapa pipeline, sebaiknya tentukan peran cakupan untuk setiap pipeline agar mengikuti prinsip hak istimewa terkecil. Untuk pipeline yang menggunakan tindakan CodeConnections sumber, lihat Tambahkan CodeBuild GitClone izin untuk koneksi ke Bitbucket, GitHub, GitHub Enterprise Server, atau GitLab.com contoh cakupan izin koneksi peran ke repositori tertentu.
catatan
Peran harus berada di AWS akun yang sama dengan CodeBuild proyek.
Artefak masukan
-
Jumlah artefak:
1 to 5 -
Deskripsi CodeBuild : mencari file buildspec dan menjalankan perintah buildspec dari direktori artefak sumber utama. Ketika satu sumber input ditentukan atau ketika lebih dari satu sumber input ditentukan untuk CodeBuild tindakan, artefak tunggal, atau artefak utama dalam kasus beberapa sumber input, harus diatur menggunakan parameter konfigurasi
PrimarySourcetindakan di. CodePipelineSetiap artefak input diekstraksi ke direktorinya sendiri, yang lokasinya disimpan dalam variabel lingkungan. Direktori untuk artefak sumber utama tersedia dengan
$CODEBUILD_SRC_DIR. Direktori untuk semua artefak input lainnya tersedia dengan$CODEBUILD_SRC_DIR_yourInputArtifactName.catatan
Artefak yang dikonfigurasi dalam CodeBuild proyek Anda menjadi artefak input yang digunakan oleh CodeBuild tindakan dalam pipeline Anda.
Artefak keluaran
-
Jumlah artefak:
0 to 5 -
Deskripsi: Ini dapat digunakan untuk membuat artefak yang ditentukan dalam file CodeBuild buildspec tersedia untuk tindakan selanjutnya dalam pipeline. Ketika hanya satu artefak keluaran yang ditentukan, artefak ini dapat didefinisikan langsung di bawah
artifactsbagian file buildspec. Ketika lebih dari satu artefak keluaran ditentukan, semua artefak yang direferensikan harus didefinisikan sebagai artefak sekunder dalam file buildspec. Nama-nama artefak keluaran di CodePipeline harus cocok dengan pengidentifikasi artefak di file buildspec.catatan
Artefak yang dikonfigurasi dalam CodeBuild proyek Anda menjadi artefak CodePipeline input dalam tindakan pipeline Anda.
Jika
CombineArtifactsparameter dipilih untuk build batch, lokasi artefak keluaran berisi artefak gabungan dari beberapa build yang dijalankan dalam eksekusi yang sama.
Variabel keluaran
Tindakan ini akan menghasilkan sebagai variabel semua variabel lingkungan yang diekspor sebagai bagian dari build. Untuk detail selengkapnya tentang cara mengekspor variabel lingkungan, lihat EnvironmentVariable di Panduan AWS CodeBuild API.
Untuk informasi lebih lanjut tentang menggunakan variabel CodeBuild lingkungan di CodePipeline, lihat contoh diCodeBuild variabel keluaran tindakan. Untuk daftar variabel lingkungan yang dapat Anda gunakan CodeBuild, lihat Vari abel lingkungan di lingkungan build di Panduan AWS CodeBuild Pengguna.
Izin peran layanan: CodeBuild tindakan
Untuk CodeBuild dukungan, tambahkan berikut ini ke pernyataan kebijakan Anda:
Jika Anda menggunakan ServiceRoleArnOverride parameter, tambahkan iam:PassRole izin berikut untuk mengiz CodePipeline inkan meneruskan peran ke CodeBuild:
{ "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::111122223333:role/your-codebuild-override-role", "Condition": { "StringEquals": { "iam:PassedToService": "codebuild.amazonaws.com" } } }
Deklarasi tindakan (CodeBuild contoh)
Lihat juga
Sumber daya terkait berikut dapat membantu Anda saat Anda mengerjakan tindakan ini.
-
AWS CodeBuild Panduan Pengguna — Untuk contoh pipeline dengan CodeBuild tindakan, lihat Menggunakan CodePipeline CodeBuild untuk Menguji Kode dan Menjalankan Build. Untuk contoh proyek dengan beberapa CodeBuild artefak input dan output, lihat CodePipeline Integrasi dengan CodeBuild dan Beberapa Sumber Input dan Sampel Artefak Keluaran dan Beberapa Sumber Input dan Sampel Artefak Keluaran.
-
Tutorial: Membuat pipeline yang membangun dan menguji aplikasi Android Anda AWS Device Farm- Tutorial ini menyediakan contoh file buildspec dan contoh aplikasi untuk membuat pipeline dengan GitHub sumber yang membangun dan menguji aplikasi Android dengan dan. CodeBuild AWS Device Farm
-
Buat Referensi Spesifikasi untuk CodeBuild - Topik referensi ini memberikan definisi dan contoh untuk memahami file CodeBuild buildspec. Untuk daftar variabel lingkungan yang dapat Anda gunakan CodeBuild, lihat Vari abel lingkungan di lingkungan build di Panduan AWS CodeBuild Pengguna.