Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Jalankan build (AWS CLI)
catatan
Untuk menggunakan CodePipeline untuk menjalankan build AWS CodeBuild, lewati langkah-langkah ini dan ikuti instruksi diBuat pipeline yang menggunakan CodeBuild (AWS CLI).
Untuk informasi lebih lanjut tentang menggunakan AWS CLI with CodeBuild, lihatReferensi baris perintah.
-
Jalan
start-buildkan perintah dengan salah satu cara berikut:aws codebuild start-build --project-name<project-name>Gunakan ini jika Anda ingin menjalankan build yang menggunakan versi terbaru dari artefak input build dan pengaturan proyek build yang ada.
aws codebuild start-build --generate-cli-skeletonGunakan ini jika Anda ingin menjalankan build dengan versi sebelumnya dari artefak input build atau jika Anda ingin mengganti pengaturan untuk artefak keluaran build, variabel lingkungan, buildspec, atau periode batas waktu build default.
-
Jika Anda menjalankan start-build perintah dengan
--project-nameopsi, ganti<project-name>dengan nama proyek build, dan kemudian lewati ke langkah 6 dari prosedur ini. Untuk mendapatkan daftar proyek pembangunan, lihatLihat nama proyek build. -
Jika Anda menjalankan start-build perintah dengan
--idempotency-tokenopsi tersebut, pengenal unik yang peka huruf besar-kecil, atau token, disertakan denganstart-buildpermintaan. Token ini berlaku selama 5 menit setelah permintaan. Jika Anda mengulangistart-buildpermintaan dengan token yang sama, tetapi mengubah parameter, CodeBuild mengembalikan kesalahan ketidakcocokan parameter. -
Jika Anda menjalankan start-build perintah dengan
--generate-cli-skeletonopsi, JSON-formatted data muncul di output. Salin data ke file (misalnya,) di lokasi di komputer lokal atau instance tempat AWS CLI diinstal. Ubah data yang disalin agar sesuai dengan format berikut, dan simpan hasil Anda:start-build.json{ "projectName": "projectName", "sourceVersion": "sourceVersion", "artifactsOverride": { "type": "type", "location": "location", "path": "path", "namespaceType": "namespaceType", "name": "artifactsOverride-name", "packaging": "packaging" }, "buildspecOverride": "buildspecOverride", "cacheOverride": { "location": "cacheOverride-location", "type": "cacheOverride-type" }, "certificateOverride": "certificateOverride", "computeTypeOverride": "computeTypeOverride", "environmentTypeOverride": "environmentTypeOverride", "environmentVariablesOverride": { "name": "environmentVariablesOverride-name", "value": "environmentVariablesValue", "type": "environmentVariablesOverride-type" }, "gitCloneDepthOverride": "gitCloneDepthOverride", "imageOverride": "imageOverride", "idempotencyToken": "idempotencyToken", "insecureSslOverride": "insecureSslOverride", "privilegedModeOverride": "privilegedModeOverride", "queuedTimeoutInMinutesOverride": "queuedTimeoutInMinutesOverride", "reportBuildStatusOverride": "reportBuildStatusOverride", "timeoutInMinutesOverride": "timeoutInMinutesOverride", "sourceAuthOverride": "sourceAuthOverride", "sourceLocationOverride": "sourceLocationOverride", "serviceRoleOverride": "serviceRoleOverride", "sourceTypeOverride": "sourceTypeOverride" }Ganti placeholder berikut:
-
projectName: String yang diperlukan. Nama proyek build yang akan digunakan untuk build ini. -
sourceVersion: String opsional. Versi kode sumber yang akan dibangun, sebagai berikut:-
Untuk Amazon S3, ID versi yang sesuai dengan versi file ZIP input yang ingin Anda buat. Jika
sourceVersiontidak ditentukan, maka versi terbaru digunakan. -
Untuk CodeCommit, ID komit yang sesuai dengan versi kode sumber yang ingin Anda buat. Jika tidak
sourceVersionditentukan, ID komit HEAD cabang default digunakan. (Anda tidak dapat menentukan nama tag untuksourceVersion, tetapi Anda dapat menentukan ID komit tag.) -
Untuk GitHub, ID komit, ID permintaan tarik, nama cabang, atau nama tag yang sesuai dengan versi kode sumber yang ingin Anda buat. Jika ID permintaan tarik ditentukan, ia harus menggunakan format
pr/(misalnyapull-request-IDpr/25). Jika nama cabang ditentukan, ID melakukan HEAD cabang digunakan. Jika tidaksourceVersionditentukan, ID komit HEAD cabang default digunakan. -
Untuk Bitbucket, ID commit, nama cabang, atau nama tag yang sesuai dengan versi kode sumber yang ingin Anda buat. Jika nama cabang ditentukan, ID melakukan HEAD cabang digunakan. Jika tidak
sourceVersionditentukan, ID komit HEAD cabang default digunakan.
-
-
Placeholder berikut adalah untuk.
artifactsOverride-
type: Opsional. Jenis artefak keluaran build yang menggantikan untuk build ini yang ditentukan dalam proyek build. -
location: Opsional. Lokasi artefak keluaran build yang menggantikan untuk build ini yang ditentukan dalam proyek build. -
path: Opsional. Jalur artefak keluaran build yang menggantikan untuk build ini yang ditentukan dalam proyek build. -
namespaceType: Opsional. Jenis jalur artefak keluaran build yang menggantikan build ini yang ditentukan dalam proyek build. -
name: Opsional. Nama artefak keluaran build yang menggantikan untuk build ini yang ditentukan dalam proyek build. -
packaging: Opsional. Jenis pengemasan artefak keluaran build yang menggantikan build ini yang ditentukan dalam proyek build.
-
-
buildspecOverride: Opsional. Deklarasi buildspec yang menggantikan build ini yang ditentukan dalam proyek build. Jika nilai ini disetel, itu bisa berupa definisi buildspec sebaris, jalur ke file buildspec alternatif relatif terhadap nilai variabelCODEBUILD_SRC_DIRlingkungan bawaan, atau jalur ke bucket S3. Bucket S3 harus berada di Wil AWS ayah yang sama dengan proyek build. Tentukan file buildspec menggunakan ARN-nya (misalnya,).arn:aws:s3:::Jika nilai ini tidak disediakan atau diatur ke string kosong, kode sumber harus berisi<my-codebuild-sample2>/buildspec.ymlbuildspec.ymlfile di direktori root. Untuk informasi selengkapnya, lihat Nama file buildspec dan lokasi penyimpanan. -
Placeholder berikut adalah untuk.
cacheOverride-
cacheOverride-location: Opsional. LokasiProjectCacheobjek untuk build ini yang menggantikanProjectCacheobjek yang ditentukan dalam proyek build.cacheOverridebersifat opsional dan mengambilProjectCacheobjek.locationdiperlukan dalam suatuProjectCacheobjek. -
cacheOverride-type: Opsional. JenisProjectCacheobjek untuk build ini yang menggantikanProjectCacheobjek yang ditentukan dalam proyek build.cacheOverridebersifat opsional dan mengambilProjectCacheobjek.typediperlukan dalam suatuProjectCacheobjek.
-
-
certificateOverride: Opsional. Nama sertifikat untuk build ini yang menggantikan yang ditentukan dalam proyek build. -
environmentTypeOverride: Opsional. Jenis wadah untuk build ini yang menggantikan yang ditentukan dalam proyek build. String valid saat ini adalahLINUX_CONTAINER. -
Placeholder berikut adalah untuk.
environmentVariablesOverride-
environmentVariablesOverride-name: Opsional. Nama variabel lingkungan dalam proyek build yang nilainya ingin Anda ganti untuk build ini. -
environmentVariablesOverride-type: Opsional. Jenis variabel lingkungan dalam proyek build yang nilainya ingin Anda ganti untuk build ini. -
environmentVariablesValue: Opsional. Nilai variabel lingkungan yang ditentukan dalam proyek build yang ingin Anda ganti untuk build ini.
-
-
gitCloneDepthOverride: Opsional. Nilai kedalaman klon Git dalam proyek build yang nilainya ingin Anda ganti untuk build ini. Jika jenis sumber Anda adalah Amazon S3, nilai ini tidak didukung. -
imageOverride: Opsional. Nama gambar untuk build ini yang menggantikan yang ditentukan dalam proyek build. -
idempotencyToken: Opsional. String yang berfungsi sebagai token untuk menentukan bahwa permintaan build adalah idempotent. Anda dapat memilih string apa pun yang 64 karakter atau kurang. Token berlaku selama 5 menit setelah permintaan start-build. Jika Anda mengulangi permintaan start-build dengan token yang sama, tetapi mengubah parameter, CodeBuild mengembalikan kesalahan ketidakcocokan parameter. -
insecureSslOverride: Boolean opsional yang menentukan apakah akan mengganti pengaturan TLS tidak aman yang ditentukan dalam proyek build. Pengaturan TLS tidak aman menentukan apakah akan mengabaikan peringatan TLS saat menghubungkan ke kode sumber proyek. Penggantian ini hanya berlaku jika sumber build adalah GitHub Enterprise Server. -
privilegedModeOverride: Boolean opsional. Jika disetel ke true, build mengesampingkan mode istimewa dalam proyek build. -
queuedTimeoutInMinutesOverride: Bilangan bulat opsional yang menentukan jumlah menit build diizinkan untuk diantri sebelum waktunya habis. Nilai minimumnya adalah lima menit dan nilai maksimumnya adalah 480 menit (delapan jam). -
reportBuildStatusOverride: Boolean opsional yang menentukan apakah akan mengirimkan status awal dan penyelesaian build kepada penyedia sumber Anda. Jika Anda menyetel ini dengan penyedia sumber selain GitHub, GitHub Enterprise Server, atau Bitbucket, nilai yang tidak valid dilempar InputException kan. -
sourceAuthOverride: String opsional. Jenis otorisasi untuk build ini yang menggantikan yang ditentukan dalam proyek build. Penggantian ini hanya berlaku jika sumber proyek build adalah Bitbucket atau. GitHub -
sourceLocationOverride: String opsional. Lokasi yang mengganti untuk ini membangun lokasi sumber untuk yang ditentukan dalam proyek build. -
serviceRoleOverride: String opsional. Nama peran layanan untuk build ini yang menggantikan yang ditentukan dalam proyek build. -
sourceTypeOverride: String opsional. Jenis input sumber untuk build ini yang menggantikan input sumber yang ditentukan dalam proyek build. String yang valid adalahNO_SOURCECODECOMMIT,CODEPIPELINE,GITHUB,S3,,BITBUCKET, danGITHUB_ENTERPRISE. -
timeoutInMinutesOverride: Nomor opsional. Jumlah menit batas waktu build yang menggantikan untuk build ini yang ditentukan dalam proyek build.
Sebaiknya simpan variabel lingkungan dengan nilai sensitif, seperti ID kunci AWS akses, kunci akses AWS rahasia, atau kata sandi sebagai parameter di Amazon EC2 Systems Manager Parameter Store. CodeBuild dapat menggunakan parameter yang disimpan di Amazon EC2 Systems Manager Parameter Store hanya jika nama parameter itu dimulai dengan
/CodeBuild/(misalnya,/CodeBuild/dockerLoginPassword). Anda dapat menggunakan CodeBuild konsol untuk membuat parameter di Amazon EC2 Systems Manager. Pilih Buat parameter, lalu ikuti petunjuknya. (Dalam kotak dialog itu, untuk kunci KMS, Anda dapat secara opsional menentukan ARN AWS KMS kunci di akun Anda. Amazon EC2 Systems Manager menggunakan kunci ini untuk mengenkripsi nilai parameter selama penyimpanan dan mendekripsi selama pengambilan.) Jika Anda menggunakan CodeBuild konsol untuk membuat parameter, konsol memulai parameter dengan/CodeBuild/saat disimpan. Namun, jika Anda menggunakan konsol Amazon EC2 Systems Manager Parameter Store untuk membuat parameter, Anda harus memulai nama parameter dengan/CodeBuild/, dan Anda harus menyetel Type ke String A man. Untuk informasi selengkapnya, lihat penyimpanan AWS Systems Manager parameter dan Panduan: Membuat dan menguji parameter String (konsol) di Panduan Pengguna Amazon EC2 Systems Manager.Jika proyek build mengacu pada parameter yang disimpan di Amazon EC2 Systems Manager Parameter Store, peran layanan proyek build harus mengizinkan
ssm:GetParameterstindakan tersebut. Jika Anda memilih Buat peran layanan baru di akun Anda sebelumnya, ser CodeBuild takan tindakan ini dalam peran layanan default untuk proyek build Anda secara otomatis. Namun, jika Anda memilih Pilih peran layanan yang ada dari akun Anda, maka Anda harus menyertakan tindakan ini dalam peran layanan secara terpisah.Variabel lingkungan yang Anda tetapkan menggantikan variabel lingkungan yang ada. Misalnya, jika image Docker sudah berisi variabel lingkungan bernama
MY_VARdengan nilaimy_value, dan Anda menetapkan variabel lingkungan bernamaMY_VARdengan nilaiother_value,my_valuemaka diganti denganother_value. Demikian pula, jika image Docker sudah berisi variabel lingkungan bernamaPATHdengan nilai/usr/local/sbin:/usr/local/bin, dan Anda menetapkan variabel lingkungan bernamaPATHdengan nilai$PATH:/usr/share/ant/bin,/usr/local/sbin:/usr/local/binmaka diganti dengan nilai$PATH:/usr/share/ant/binliteral.Jangan mengatur variabel lingkungan apa pun dengan nama yang dimulai dengan
CODEBUILD_. Awalan ini dicadangkan untuk penggunaan internal .Jika variabel lingkungan dengan nama yang sama didefinisikan di beberapa tempat, nilai variabel lingkungan ditentukan sebagai berikut:
-
Nilai dalam panggilan operasi mulai build memiliki prioritas tertinggi.
-
Nilai dalam definisi proyek build akan diutamakan berikutnya.
-
Nilai dalam deklarasi file buildspec memiliki prioritas terendah.
Untuk informasi tentang nilai yang valid untuk placeholder ini, lihat. Buat proyek build (AWS CLI) Untuk daftar pengaturan terbaru untuk proyek build, lihatLihat detail proyek build.
-
-
Beralih ke direktori yang berisi file yang baru saja Anda simpan, dan jalankan
start-buildperintah lagi.aws codebuild start-build --cli-input-json file://start-build.json -
Jika berhasil, data yang mirip dengan yang dijelaskan dalam Untuk menjalankan build prosedur muncul di output.
Untuk bekerja dengan informasi terperinci tentang build ini, catat id nilai dalam output, lalu lihatLihat detail build (AWS CLI).