AWS CodeBuild membangun dan menguji referensi tindakan - AWS CodePipeline

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 spesifikasi build dijalankan di dalam CodeBuild container. Semua artefak yang ditentukan sebagai artefak masukan untuk suatu CodeBuild tindakan tersedia di dalam wadah yang menjalankan perintah. CodeBuild dapat memberikan tindakan build atau test. Untuk informasi selengkapnya, lihat Panduan Pengguna AWS CodeBuild.

Saat Anda menggunakan CodePipeline wizard di konsol untuk membuat proyek build, proyek CodeBuild build akan menunjukkan penyedia sumbernya CodePipeline. Saat membuat proyek build di CodeBuild konsol, Anda tidak dapat menentukan CodePipeline sebagai penyedia sumber, tetapi menambahkan tindakan build ke pipeline akan menyesuaikan sumber di CodeBuild konsol. Untuk informasi lebih lanjut, lihat ProjectSourcedi AWS CodeBuild APIReferensi.

Tipe tindakan

  • Kategori: Build atau Test

  • Pemilik: AWS

  • Penyedia: CodeBuild

  • Versi: 1

Parameter konfigurasi

ProjectName

Wajib: Ya

ProjectNameadalah nama proyek pembangunan di CodeBuild.

PrimarySource

Diperlukan: Kondisional

Nilai PrimarySource parameter harus menjadi nama salah satu artefak input untuk tindakan. CodeBuild mencari file spesifikasi build dan menjalankan perintah spesifikasi build di direktori yang berisi versi unzip artefak ini.

Parameter ini diperlukan jika beberapa artefak masukan ditentukan untuk suatu CodeBuild tindakan. Ketika hanya ada satu artefak sumber untuk aksi, artefak default ke PrimarySource artefak itu.

BatchEnabled

Wajib: Tidak

Nilai Boolean dari BatchEnabled parameter memungkinkan tindakan untuk menjalankan beberapa build dalam eksekusi build yang sama.

Ketika opsi ini diaktifkan, CombineArtifacts opsi tersedia.

Untuk contoh pipeline dengan build batch diaktifkan, lihat CodePipeline integrasi dengan CodeBuild dan build batch.

CombineArtifacts

Wajib: Tidak

Nilai Boolean CombineArtifacts parameter menggabungkan semua artefak build dari build batch menjadi file artefak tunggal untuk aksi build.

Untuk menggunakan opsi ini, BatchEnabled parameter harus diaktifkan.

EnvironmentVariables

Wajib: Tidak

Nilai parameter ini digunakan untuk mengatur variabel lingkungan untuk CodeBuild tindakan di pipeline Anda. Nilai untuk EnvironmentVariables parameter mengambil bentuk JSON array objek variabel lingkungan. Lihat parameter contoh diDeklarasi tindakan (CodeBuildcontoh).

Setiap objek memiliki tiga bagian, yang semuanya adalah string:

  • name: Nama atau kunci variabel lingkungan.

  • value: Nilai variabel lingkungan. Saat menggunakan SECRETS_MANAGER tipe PARAMETER_STORE atau, nilai ini harus berupa nama parameter yang telah Anda simpan di AWS Systems 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 kredensyal. Saat Anda menggunakan CodeBuild konsol atau AWS CLI, variabel lingkungan ditampilkan dalam teks biasa. Untuk nilai sensitif, kami sarankan Anda menggunakan SECRETS_MANAGER tipe sebagai gantinya.

  • type: (Opsional) Jenis variabel lingkungan. Nilai yang valid adalah PARAMETER_STORE, SECRETS_MANAGER, atau PLAINTEXT. Ketika tidak ditentukan, ini default ke. PLAINTEXT

catatan

Saat Anda memasukkanname,value, dan type untuk 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 lebih lanjut, lihat EnvironmentVariabledi AWS CodeBuild API Referensi. Untuk contoh CodeBuild tindakan dengan variabel lingkungan yang menyelesaikan nama GitHub cabang, lihat. Contoh: Gunakan BranchName variabel dengan variabel CodeBuild lingkungan

Artefak masukan

  • Jumlah artefak: 1 to 5

  • Deskripsi: CodeBuild mencari file spesifikasi build dan menjalankan perintah spesifikasi build dari direktori artefak sumber utama. Ketika lebih dari satu sumber input ditentukan untuk CodeBuild tindakan, artefak ini harus disetel menggunakan parameter konfigurasi PrimarySource tindakan di CodePipeline.

    Setiap artefak input diekstraksi ke direktorinya sendiri, lokasi yang 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 aksi di pipeline Anda.

Artefak keluaran

  • Jumlah artefak: 0 to 5

  • Deskripsi: Ini dapat digunakan untuk membuat artefak yang didefinisikan dalam file spesifikasi CodeBuild build tersedia untuk tindakan selanjutnya dalam pipeline. Ketika hanya satu artefak keluaran yang didefinisikan, artefak ini dapat didefinisikan langsung di bawah artifacts bagian file spesifikasi build. Ketika lebih dari satu artefak keluaran ditentukan, semua artefak yang direferensikan harus didefinisikan sebagai artefak sekunder dalam file spesifikasi build. Nama artefak keluaran CodePipeline harus cocok dengan pengidentifikasi artefak dalam file spesifikasi build.

    catatan

    Artefak yang dikonfigurasi dalam CodeBuild proyek Anda menjadi artefak CodePipeline masukan dalam aksi pipeline Anda.

    Jika CombineArtifacts parameter 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 EnvironmentVariabledi AWS CodeBuild APIPanduan.

Untuk informasi selengkapnya tentang penggunaan variabel CodeBuild lingkungan CodePipeline, lihat contoh diCodeBuild variabel keluaran aksi. Untuk daftar variabel lingkungan yang dapat Anda gunakan CodeBuild, lihat Variabel lingkungan di lingkungan build di Panduan AWS CodeBuild Pengguna.

Deklarasi tindakan (CodeBuildcontoh)

YAML
Name: Build Actions: - Name: PackageExport ActionTypeId: Category: Build Owner: AWS Provider: CodeBuild Version: '1' RunOrder: 1 Configuration: BatchEnabled: 'true' CombineArtifacts: 'true' ProjectName: my-build-project PrimarySource: MyApplicationSource1 EnvironmentVariables: '[{"name":"TEST_VARIABLE","value":"TEST_VALUE","type":"PLAINTEXT"},{"name":"ParamStoreTest","value":"PARAMETER_NAME","type":"PARAMETER_STORE"}]' OutputArtifacts: - Name: MyPipeline-BuildArtifact InputArtifacts: - Name: MyApplicationSource1 - Name: MyApplicationSource2
JSON
{ "Name": "Build", "Actions": [ { "Name": "PackageExport", "ActionTypeId": { "Category": "Build", "Owner": "AWS", "Provider": "CodeBuild", "Version": "1" }, "RunOrder": 1, "Configuration": { "BatchEnabled": "true", "CombineArtifacts": "true", "ProjectName": "my-build-project", "PrimarySource": "MyApplicationSource1", "EnvironmentVariables": "[{\"name\":\"TEST_VARIABLE\",\"value\":\"TEST_VALUE\",\"type\":\"PLAINTEXT\"},{\"name\":\"ParamStoreTest\",\"value\":\"PARAMETER_NAME\",\"type\":\"PARAMETER_STORE\"}]" }, "OutputArtifacts": [ { "Name": "MyPipeline-BuildArtifact" } ], "InputArtifacts": [ { "Name": "MyApplicationSource1" }, { "Name": "MyApplicationSource2" } ] } ] }

Sumber daya terkait berikut dapat membantu Anda saat Anda bekerja dengan tindakan ini.