

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

# Jalankan build (AWS CLI)
<a name="run-build-cli"></a>

**catatan**  
Untuk menggunakan CodePipeline untuk menjalankan build dengan AWS CodeBuild, lewati langkah-langkah ini dan ikuti instruksi di[Buat pipeline yang menggunakan CodeBuild (AWS CLI)](how-to-create-pipeline-cli.md).  
Untuk informasi lebih lanjut tentang menggunakan AWS CLI with CodeBuild, lihat[Referensi baris perintah](cmd-ref.md).

1. Jalankan `start-build` perintah dengan salah satu cara berikut:

   ```
   aws codebuild start-build --project-name <project-name>
   ```

   Gunakan ini jika Anda ingin menjalankan build yang menggunakan artefak input build versi terbaru dan setelan proyek build yang ada.

   ```
   aws codebuild start-build --generate-cli-skeleton
   ```

   Gunakan ini jika Anda ingin menjalankan build dengan artefak input build versi sebelumnya atau jika Anda ingin mengganti pengaturan untuk artefak keluaran build, variabel lingkungan, buildspec, atau periode batas waktu build default.

1. Jika Anda menjalankan **start-build** perintah dengan `--project-name` opsi, ganti *<project-name>* dengan nama proyek build, lalu lewati ke langkah 6 dari prosedur ini. Untuk mendapatkan daftar proyek pembangunan, lihat[Lihat nama proyek build](view-project-list.md).

1. Jika Anda menjalankan **start-build** perintah dengan `--idempotency-token` opsi, pengidentifikasi atau token peka huruf besar/kecil yang unik, disertakan dengan permintaan. `start-build` Token berlaku selama 5 menit setelah permintaan. Jika Anda mengulangi `start-build` permintaan dengan token yang sama, tetapi mengubah parameter, CodeBuild mengembalikan kesalahan ketidakcocokan parameter.

1. Jika Anda menjalankan **start-build** perintah dengan `--generate-cli-skeleton` opsi, data berformat JSON muncul di output. Salin data ke file (misalnya,`start-build.json`) di lokasi di komputer lokal atau contoh di AWS CLI mana diinstal. Ubah data yang disalin agar sesuai dengan format berikut, dan simpan hasil Anda:

   ```
   {
     "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 dibutuhkan. 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 tidak *sourceVersion* ditentukan, maka versi terbaru digunakan.
     + Untuk CodeCommit, ID komit yang sesuai dengan versi kode sumber yang ingin Anda buat. Jika tidak *sourceVersion* ditentukan, ID komit HEAD cabang default digunakan. (Anda tidak dapat menentukan nama tag untuk*sourceVersion*, 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/pull-request-ID` (misalnya `pr/25`). Jika nama cabang ditentukan, ID melakukan HEAD cabang digunakan. Jika tidak *sourceVersion* ditentukan, ID komit HEAD cabang default digunakan. 
     + Untuk Bitbucket, ID komit, 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 *sourceVersion* ditentukan, ID komit HEAD cabang default digunakan. 
   + Placeholder berikut adalah untuk. `artifactsOverride`
     + *type*: Opsional. Jenis artefak keluaran build yang menggantikan build ini adalah yang ditentukan dalam proyek build.
     + *location*: Opsional. Lokasi artefak keluaran build yang menggantikan build ini adalah lokasi yang ditentukan dalam proyek build.
     + *path*: Opsional. Jalur artefak keluaran build yang menggantikan build ini adalah yang ditentukan dalam proyek build.
     + *namespaceType*: Opsional. Jenis jalur artefak keluaran build yang menggantikan build ini adalah yang ditentukan dalam proyek build.
     + *name*: Opsional. Nama artefak keluaran build yang menggantikan build ini adalah nama yang ditentukan dalam proyek build.
     + *packaging*: Opsional. Jenis kemasan artefak keluaran build yang menggantikan build ini adalah yang ditentukan dalam proyek build.
   + *buildspecOverride*: Opsional. Deklarasi buildspec yang mengganti 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 variabel `CODEBUILD_SRC_DIR` lingkungan bawaan, atau jalur ke bucket S3. Bucket S3 harus berada di AWS Wilayah yang sama dengan proyek pembangunan. Tentukan file buildspec menggunakan ARN (misalnya,). `arn:aws:s3:::<my-codebuild-sample2>/buildspec.yml` Jika nilai ini tidak disediakan atau diatur ke string kosong, kode sumber harus berisi `buildspec.yml` file dalam direktori root nya. Untuk informasi selengkapnya, lihat [Nama file Buildspec dan lokasi penyimpanan](build-spec-ref.md#build-spec-ref-name-storage).
   + Placeholder berikut adalah untuk. `cacheOverride`
     + *cacheOverride-location*: Opsional. Lokasi `ProjectCache` objek untuk build ini yang mengganti `ProjectCache` objek yang ditentukan dalam proyek build. `cacheOverride`bersifat opsional dan mengambil `ProjectCache` objek. `location`diperlukan dalam suatu `ProjectCache` objek.
     + *cacheOverride-type*: Opsional. Jenis `ProjectCache` objek untuk build ini yang mengganti `ProjectCache` objek yang ditentukan dalam proyek build. `cacheOverride`bersifat opsional dan mengambil `ProjectCache` objek. `type`diperlukan dalam suatu `ProjectCache` objek.
   + *certificateOverride*: Opsional. Nama sertifikat untuk build ini yang menggantikan sertifikat yang ditentukan dalam proyek build.
   + *environmentTypeOverride*: Opsional. Jenis kontainer untuk build ini yang mengganti yang ditentukan dalam proyek build. String valid saat ini adalah`LINUX_CONTAINER`.
   + Placeholder berikut adalah untuk. `environmentVariablesOverride`
     + *environmentVariablesOverride-name*: Opsional. Nama variabel lingkungan dalam proyek build yang nilainya ingin Anda timpa untuk build ini.
     + *environmentVariablesOverride-type*: Opsional. Jenis variabel lingkungan dalam proyek build yang nilainya ingin Anda timpa untuk build ini.
     + *environmentVariablesValue*: Opsional. Nilai variabel lingkungan yang ditentukan dalam proyek build yang ingin Anda timpa untuk build ini.
   + *gitCloneDepthOverride*: Opsional. Nilai **kedalaman klon Git** dalam proyek build yang nilainya ingin Anda timpa 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 idempoten. Anda dapat memilih string 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 setelan TLS tidak aman yang ditentukan dalam proyek build. Pengaturan TLS yang 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 akan mengganti mode istimewa dalam proyek build.
   +  *queuedTimeoutInMinutesOverride*: Integer opsional yang menentukan jumlah menit build diizinkan untuk antri sebelum waktu habis. Nilai minimumnya adalah lima menit dan nilai maksimumnya adalah 480 menit (delapan jam). 
   + *reportBuildStatusOverride*: Boolean opsional yang menentukan apakah akan mengirim status awal dan penyelesaian build kepada penyedia sumber Anda. Jika Anda mengatur ini dengan penyedia sumber selain GitHub, GitHub Enterprise Server, atau Bitbucket, akan invalidInputException dilemparkan.
   + *sourceAuthOverride*: String opsional. Jenis otorisasi untuk build ini yang mengganti yang ditentukan dalam proyek build. Penggantian ini hanya berlaku jika sumber proyek build adalah Bitbucket atau. GitHub
   + *sourceLocationOverride*: String opsional. Lokasi yang mengganti lokasi sumber ini akan membangun lokasi sumber untuk lokasi yang ditentukan dalam proyek build.
   + *serviceRoleOverride*: String opsional. Nama peran layanan untuk build ini yang menggantikan peran yang ditentukan dalam proyek build.
   + *sourceTypeOverride*: String opsional. Tipe input sumber untuk build ini yang mengganti input sumber yang ditentukan dalam proyek build. String yang valid adalah`NO_SOURCE`,`CODECOMMIT`,`CODEPIPELINE`,`GITHUB`,, `S3``BITBUCKET`, dan`GITHUB_ENTERPRISE`.
   + *timeoutInMinutesOverride*: Nomor opsional. Jumlah menit batas waktu build yang menggantikan build ini adalah yang ditentukan dalam proyek build. 

   Kami menyarankan Anda menyimpan 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 instruksi. (Di 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 sedang 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** to **Secure String**. Untuk informasi selengkapnya, lihat [penyimpanan AWS Systems Manager parameter](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-parameter-store.html) dan [Panduan: Membuat dan menguji parameter String (konsol)](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-console.html) di Panduan *Pengguna Amazon EC2 Systems Manager*.

   Jika project build Anda mengacu pada parameter yang disimpan di Amazon EC2 Systems Manager Parameter Store, peran layanan project build harus mengizinkan `ssm:GetParameters` tindakan tersebut. Jika Anda memilih **Buat peran layanan baru di akun Anda** sebelumnya, CodeBuild sertakan 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 Anda secara terpisah.

   Variabel lingkungan yang Anda tetapkan menggantikan variabel lingkungan yang ada. Misalnya, jika image Docker sudah berisi variabel lingkungan bernama `MY_VAR` dengan nilai`my_value`, dan Anda menetapkan variabel lingkungan bernama `MY_VAR` dengan nilai`other_value`, `my_value` maka diganti dengan`other_value`. Demikian pula, jika image Docker sudah berisi variabel lingkungan bernama `PATH` dengan nilai`/usr/local/sbin:/usr/local/bin`, dan Anda menetapkan variabel lingkungan bernama `PATH` dengan nilai`$PATH:/usr/share/ant/bin`, `/usr/local/sbin:/usr/local/bin` maka digantikan oleh nilai `$PATH:/usr/share/ant/bin` literal. 

   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 start build lebih diutamakan.
   + Nilai dalam definisi proyek build akan diutamakan berikutnya.
   + Nilai dalam deklarasi file buildspec diutamakan paling rendah.

   Untuk informasi tentang nilai valid untuk placeholder ini, lihat. [Buat proyek build (AWS CLI)](create-project.md#create-project-cli) Untuk daftar setelan terbaru untuk proyek build, lihat[Lihat detail proyek build](view-project-details.md).

1. Beralih ke direktori yang berisi file yang baru saja Anda simpan, dan jalankan `start-build` perintah lagi.

   ```
   aws codebuild start-build --cli-input-json file://start-build.json
   ```

1. Jika berhasil, data yang mirip dengan yang dijelaskan dalam [Untuk menjalankan build](getting-started-overview.md#getting-started-run-build-cli) prosedur muncul di output.

Untuk bekerja dengan informasi terperinci tentang build ini, catat `id` nilai dalam output, lalu lihat[Lihat detail build (AWS CLI)](view-build-details.md#view-build-details-cli).