Ubah pengaturan proyek build di AWS CodeBuild - AWS CodeBuild

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

Ubah pengaturan proyek build di AWS CodeBuild

Anda dapat menggunakan AWS CodeBuild konsol, AWS CLI, atau AWS SDKs untuk mengubah pengaturan proyek build.

Jika Anda menambahkan pelaporan pengujian ke proyek build, pastikan IAM peran Anda memiliki izin yang dijelaskan. Izin laporan uji

Mengubah pengaturan proyek build (konsol)

Untuk mengubah pengaturan untuk proyek build, lakukan prosedur berikut:

  1. Buka AWS CodeBuild konsol di https://console.aws.amazon.com/codesuite/codebuild/home.

  2. Di panel navigasi, pilih Membangun proyek.

  3. Lakukan salah satu hal berikut ini:

    • Pilih tautan untuk proyek build yang ingin Anda ubah, lalu pilih Detail build.

    • Pilih tombol di samping proyek build yang ingin diubah, pilih Lihat detail, lalu pilih Build details.

Anda dapat memodifikasi bagian berikut:

Konfigurasi proyek

Di bagian Konfigurasi proyek, pilih Edit. Ketika perubahan Anda selesai, pilih Perbarui konfigurasi untuk menyimpan konfigurasi baru.

Anda dapat memodifikasi properti berikut.

Deskripsi

Masukkan deskripsi opsional proyek build untuk membantu pengguna lain memahami untuk apa proyek ini digunakan.

Membangun lencana

Pilih Aktifkan lencana build untuk membuat status build project Anda terlihat dan dapat disematkan. Untuk informasi selengkapnya, lihat Membangun sampel lencana.

catatan

Build badge tidak berlaku jika penyedia sumber Anda adalah Amazon S3.

Aktifkan batas build bersamaan

Jika Anda ingin membatasi jumlah build bersamaan untuk proyek ini, lakukan langkah-langkah berikut:

  1. Pilih Batasi jumlah build bersamaan yang dapat dimulai proyek ini.

  2. Dalam batas build bersamaan, masukkan jumlah maksimum build bersamaan yang diizinkan untuk project ini. Batas ini tidak boleh lebih besar dari batas build bersamaan yang ditetapkan untuk akun. Jika Anda mencoba memasukkan angka yang lebih besar dari batas akun, pesan kesalahan akan ditampilkan.

Pembuatan baru hanya dimulai jika jumlah pembuatan saat ini kurang dari atau sama dengan batas ini. Jika jumlah pembuatan saat ini memenuhi batas ini, pembuatan baru ditutup dan tidak dijalankan.

Aktifkan akses build publik

Untuk membuat hasil build project Anda tersedia untuk umum, termasuk pengguna tanpa akses ke AWS akun, pilih Aktifkan akses build publik dan konfirmasikan bahwa Anda ingin membuat hasil build menjadi publik. Properti berikut digunakan untuk proyek pembangunan publik:

Peran layanan pembangunan publik

Pilih Peran layanan baru jika ingin CodeBuild membuat peran layanan baru untuk Anda, atau Peran layanan yang ada jika Anda ingin menggunakan peran layanan yang ada.

Peran layanan build publik memungkinkan CodeBuild untuk membaca CloudWatch Log dan mengunduh artefak Amazon S3 untuk build proyek. Ini diperlukan untuk membuat log dan artefak bangunan proyek tersedia untuk umum.

Peran layanan

Masukkan nama peran layanan baru atau peran layanan yang ada.

Untuk membuat hasil build proyek Anda pribadi, hapus Aktifkan akses build publik.

Untuk informasi selengkapnya, lihat Dapatkan proyek pembangunan publik URLs.

Awas

Hal-hal berikut harus diingat saat membuat hasil build proyek Anda menjadi publik:

  • Semua hasil build proyek, log, dan artefak, termasuk build yang dijalankan saat proyek bersifat pribadi, tersedia untuk umum.

  • Semua log build dan artefak tersedia untuk umum. Variabel lingkungan, kode sumber, dan informasi sensitif lainnya mungkin telah dihasilkan ke log dan artefak build. Anda harus berhati-hati tentang informasi apa yang dihasilkan ke log build. Beberapa praktik terbaik adalah:

    • Jangan menyimpan nilai sensitif, terutama kunci AWS akses IDs dan kunci akses rahasia, dalam variabel lingkungan. Kami menyarankan Anda menggunakan Parameter Store Amazon EC2 Systems Manager atau AWS Secrets Manager untuk menyimpan nilai sensitif.

    • Ikuti Praktik terbaik untuk menggunakan webhook untuk membatasi entitas mana yang dapat memicu build, dan jangan menyimpan buildspec dalam proyek itu sendiri, untuk memastikan bahwa webhook Anda seaman mungkin.

  • Pengguna jahat dapat menggunakan build publik untuk mendistribusikan artefak berbahaya. Kami menyarankan agar administrator proyek meninjau semua permintaan tarik untuk memverifikasi bahwa permintaan tarik adalah perubahan yang sah. Kami juga menyarankan Anda memvalidasi artefak apa pun dengan checksum mereka untuk memastikan bahwa artefak yang benar sedang diunduh.

Informasi tambahan

Untuk Tag, masukkan nama dan nilai tag apa pun yang ingin digunakan AWS layanan pendukung. Gunakan Tambah baris untuk menambahkan tag. Anda dapat menambahkan hingga 50 tanda.

Sumber

Di bagian Sumber, pilih Edit. Ketika perubahan Anda selesai, pilih Perbarui konfigurasi untuk menyimpan konfigurasi baru.

Anda dapat memodifikasi properti berikut:

Penyedia sumber

Pilih jenis penyedia kode sumber. Gunakan daftar berikut untuk membuat pilihan yang sesuai untuk penyedia sumber Anda:

catatan

CodeBuild tidak mendukung Bitbucket Server.

Amazon S3
Bucket

Pilih nama bucket input yang berisi kode sumber.

Kunci objek S3 atau folder S3

Masukkan nama ZIP file atau path ke folder yang berisi kode sumber. Masukkan garis miring (/) untuk mengunduh semua yang ada di bucket S3.

Versi sumber

Masukkan ID versi objek yang mewakili build file input Anda. Untuk informasi selengkapnya, lihatContoh versi sumber dengan AWS CodeBuild.

CodeCommit
Repositori

Pilih repositori yang ingin Anda gunakan.

Jenis referensi

Pilih Cabang, tag Git, atau ID Komit untuk menentukan versi kode sumber Anda. Untuk informasi selengkapnya, lihat Contoh versi sumber dengan AWS CodeBuild.

catatan

Kami menyarankan Anda memilih nama cabang Git yang tidak terlihat seperti komitIDs, seperti 811dd1ba1aba14473856cee38308caed7190c0d atau5392f7. Ini membantu Anda menghindari tabrakan checkout Git dengan commit yang sebenarnya.

Kedalaman klon Git

Pilih untuk membuat klon dangkal dengan riwayat terpotong ke jumlah komit yang ditentukan. Jika Anda ingin klon penuh, pilih Penuh.

Submodul Git

Pilih Gunakan submodul Git jika Anda ingin menyertakan submodul Git dalam repositori Anda.

Bitbucket
Kredensi

Pilih Default source credential atau Custom source credential dan ikuti petunjuk untuk mengelola kredensi sumber default atau menyesuaikan kredensi sumber.

Jenis koneksi

Pilih CodeConnections, OAuth, Kata sandi aplikasi, atau Token akses pribadi untuk terhubung CodeBuild.

Koneksi

Pilih koneksi Bitbucket atau rahasia Secrets Manager untuk terhubung melalui jenis koneksi yang Anda tentukan.

Repositori

Pilih Repositori di akun Bitbucket saya atau repositori Publik dan masukkan repositori. URL

Versi sumber

Masukkan cabang, ID komit, tag, atau referensi dan ID komit. Untuk informasi selengkapnya, silakan lihat Contoh versi sumber dengan AWS CodeBuild

catatan

Kami menyarankan Anda memilih nama cabang Git yang tidak terlihat seperti komitIDs, seperti 811dd1ba1aba14473856cee38308caed7190c0d atau5392f7. Ini membantu Anda menghindari tabrakan checkout Git dengan commit yang sebenarnya.

Kedalaman klon Git

Pilih kedalaman klon Git untuk membuat klon dangkal dengan riwayat terpotong ke jumlah komit yang ditentukan. Jika Anda ingin klon penuh, pilih Penuh.

Submodul Git

Pilih Gunakan submodul Git jika Anda ingin menyertakan submodul Git dalam repositori Anda.

Membangun status

Pilih Laporkan status build ke penyedia sumber saat build dimulai dan selesai jika Anda ingin status awal dan penyelesaian build dilaporkan ke penyedia sumber.

Untuk dapat melaporkan status build ke penyedia sumber, pengguna yang terkait dengan penyedia sumber harus memiliki akses tulis ke repo. Jika pengguna tidak memiliki akses tulis, status build tidak dapat diperbarui. Untuk informasi selengkapnya, lihat Akses penyedia sumber.

Untuk konteks Status, masukkan nilai yang akan digunakan untuk name parameter dalam status komit Bitbucket. Untuk informasi selengkapnya, lihat membangun API dokumentasi Bitbucket.

Untuk Target URL, masukkan nilai yang akan digunakan untuk url parameter dalam status komit Bitbucket. Untuk informasi selengkapnya, lihat membangun API dokumentasi Bitbucket.

Status build yang dipicu oleh webhook selalu dilaporkan ke penyedia sumber. Untuk memiliki status build yang dimulai dari konsol atau API panggilan dilaporkan ke penyedia sumber, Anda harus memilih setelan ini.

Jika build proyek Anda dipicu oleh webhook, Anda harus mendorong komit baru ke repo agar perubahan pada pengaturan ini diterapkan.

Dalam peristiwa webhook sumber utama, pilih Rebuild setiap kali perubahan kode didorong ke repositori ini jika Anda CodeBuild ingin membangun kode sumber setiap kali perubahan kode didorong ke repositori ini. Untuk informasi selengkapnya tentang webhook dan grup filter, lihat. Acara webhook Bitbucket

GitHub
Kredensi

Pilih Default source credential atau Custom source credential dan ikuti petunjuk untuk mengelola kredensi sumber default atau menyesuaikan kredensi sumber.

Jenis koneksi

Pilih GitHub Aplikasi, OAuth, atau Token akses pribadi untuk terhubung CodeBuild.

Koneksi

Pilih GitHub koneksi atau rahasia Secrets Manager untuk terhubung melalui jenis koneksi yang Anda tentukan.

Repositori

Pilih Repositori di GitHub akun saya, Repositori publik, atau webhook GitHub tercakup dan masukkan repositori. URL

Versi sumber

Masukkan cabang, ID komit, tag, atau referensi dan ID komit. Untuk informasi selengkapnya, silakan lihat Contoh versi sumber dengan AWS CodeBuild

catatan

Kami menyarankan Anda memilih nama cabang Git yang tidak terlihat seperti komitIDs, seperti 811dd1ba1aba14473856cee38308caed7190c0d atau5392f7. Ini membantu Anda menghindari tabrakan checkout Git dengan commit yang sebenarnya.

Kedalaman klon Git

Pilih kedalaman klon Git untuk membuat klon dangkal dengan riwayat terpotong ke jumlah komit yang ditentukan. Jika Anda ingin klon penuh, pilih Penuh.

Submodul Git

Pilih Gunakan submodul Git jika Anda ingin menyertakan submodul Git dalam repositori Anda.

Membangun status

Pilih Laporkan status build ke penyedia sumber saat build dimulai dan selesai jika Anda ingin status awal dan penyelesaian build dilaporkan ke penyedia sumber.

Untuk dapat melaporkan status build ke penyedia sumber, pengguna yang terkait dengan penyedia sumber harus memiliki akses tulis ke repo. Jika pengguna tidak memiliki akses tulis, status build tidak dapat diperbarui. Untuk informasi selengkapnya, lihat Akses penyedia sumber.

Untuk konteks Status, masukkan nilai yang akan digunakan untuk context parameter dalam status GitHub komit. Untuk informasi selengkapnya, lihat Membuat status komit di panduan GitHub pengembang.

Untuk Target URL, masukkan nilai yang akan digunakan untuk target_url parameter dalam status GitHub komit. Untuk informasi selengkapnya, lihat Membuat status komit di panduan GitHub pengembang.

Status build yang dipicu oleh webhook selalu dilaporkan ke penyedia sumber. Untuk memiliki status build yang dimulai dari konsol atau API panggilan dilaporkan ke penyedia sumber, Anda harus memilih setelan ini.

Jika build proyek Anda dipicu oleh webhook, Anda harus mendorong komit baru ke repo agar perubahan pada pengaturan ini diterapkan.

Dalam peristiwa webhook sumber utama, pilih Rebuild setiap kali perubahan kode didorong ke repositori ini jika Anda CodeBuild ingin membangun kode sumber setiap kali perubahan kode didorong ke repositori ini. Untuk informasi selengkapnya tentang webhook dan grup filter, lihat. GitHub acara webhook

GitHub Enterprise Server
Kredensi

Pilih Default source credential atau Custom source credential dan ikuti petunjuk untuk mengelola kredensi sumber default atau menyesuaikan kredensi sumber.

Jenis koneksi

Pilih CodeConnectionsatau Token akses pribadi untuk terhubung CodeBuild.

Koneksi

Pilih koneksi GitHub Enterprise atau rahasia Secrets Manager untuk terhubung melalui jenis koneksi yang Anda tentukan.

Repositori

Pilih Repositori di akun GitHub Enterprise saya atau webhook cakupan GitHub Enterprise dan masukkan repositori. URL

Versi sumber

Masukkan permintaan tarik, cabang, ID komit, tag, atau referensi, dan ID komit. Untuk informasi selengkapnya, lihat Contoh versi sumber dengan AWS CodeBuild.

catatan

Kami menyarankan Anda memilih nama cabang Git yang tidak terlihat seperti komitIDs, seperti 811dd1ba1aba14473856cee38308caed7190c0d atau5392f7. Ini membantu Anda menghindari tabrakan checkout Git dengan commit yang sebenarnya.

Kedalaman klon Git

Pilih kedalaman klon Git untuk membuat klon dangkal dengan riwayat terpotong ke jumlah komit yang ditentukan. Jika Anda ingin klon penuh, pilih Penuh.

Submodul Git

Pilih Gunakan submodul Git jika Anda ingin menyertakan submodul Git dalam repositori Anda.

Membangun status

Pilih Laporkan status build ke penyedia sumber saat build dimulai dan selesai jika Anda ingin status awal dan penyelesaian build dilaporkan ke penyedia sumber.

Untuk dapat melaporkan status build ke penyedia sumber, pengguna yang terkait dengan penyedia sumber harus memiliki akses tulis ke repo. Jika pengguna tidak memiliki akses tulis, status build tidak dapat diperbarui. Untuk informasi selengkapnya, lihat Akses penyedia sumber.

Untuk konteks Status, masukkan nilai yang akan digunakan untuk context parameter dalam status GitHub komit. Untuk informasi selengkapnya, lihat Membuat status komit di panduan GitHub pengembang.

Untuk Target URL, masukkan nilai yang akan digunakan untuk target_url parameter dalam status GitHub komit. Untuk informasi selengkapnya, lihat Membuat status komit di panduan GitHub pengembang.

Status build yang dipicu oleh webhook selalu dilaporkan ke penyedia sumber. Untuk memiliki status build yang dimulai dari konsol atau API panggilan dilaporkan ke penyedia sumber, Anda harus memilih setelan ini.

Jika build proyek Anda dipicu oleh webhook, Anda harus mendorong komit baru ke repo agar perubahan pada pengaturan ini diterapkan.

Tidak aman SSL

Pilih Aktifkan rasa tidak aman SSL untuk mengabaikan SSL peringatan saat menghubungkan ke repositori proyek GitHub Enterprise Anda.

Dalam peristiwa webhook sumber utama, pilih Rebuild setiap kali perubahan kode didorong ke repositori ini jika Anda CodeBuild ingin membangun kode sumber setiap kali perubahan kode didorong ke repositori ini. Untuk informasi selengkapnya tentang webhook dan grup filter, lihat. GitHub acara webhook

GitLab
Kredensi

Pilih Default source credential atau Custom source credential dan ikuti petunjuk untuk mengelola kredensi sumber default atau menyesuaikan kredensi sumber.

Jenis koneksi

CodeConnectionsdigunakan untuk terhubung GitLab ke CodeBuild.

Koneksi

Pilih GitLab koneksi untuk terhubung CodeConnections.

Repositori

Pilih repositori yang ingin Anda gunakan.

Versi sumber

Masukkan ID permintaan tarik, cabang, ID komit, tag, atau referensi, dan ID komit. Untuk informasi selengkapnya, lihat Contoh versi sumber dengan AWS CodeBuild.

catatan

Kami menyarankan Anda memilih nama cabang Git yang tidak terlihat seperti komitIDs, seperti 811dd1ba1aba14473856cee38308caed7190c0d atau5392f7. Ini membantu Anda menghindari tabrakan checkout Git dengan commit yang sebenarnya.

Kedalaman klon Git

Pilih kedalaman klon Git untuk membuat klon dangkal dengan riwayat terpotong ke jumlah komit yang ditentukan. Jika Anda ingin klon penuh, pilih Penuh.

Membangun status

Pilih Laporkan status build ke penyedia sumber saat build dimulai dan selesai jika Anda ingin status awal dan penyelesaian build dilaporkan ke penyedia sumber.

Untuk dapat melaporkan status build ke penyedia sumber, pengguna yang terkait dengan penyedia sumber harus memiliki akses tulis ke repo. Jika pengguna tidak memiliki akses tulis, status build tidak dapat diperbarui. Untuk informasi selengkapnya, lihat Akses penyedia sumber.

GitLab Self Managed
Kredensi

Pilih Default source credential atau Custom source credential dan ikuti petunjuk untuk mengelola kredensi sumber default atau menyesuaikan kredensi sumber.

Jenis koneksi

CodeConnectionsdigunakan untuk menghubungkan GitLab Self Managed ke CodeBuild.

Koneksi

Pilih koneksi GitLab Self Managed untuk terhubung CodeConnections.

Repositori

Pilih repositori yang ingin Anda gunakan.

Versi sumber

Masukkan ID permintaan tarik, cabang, ID komit, tag, atau referensi, dan ID komit. Untuk informasi selengkapnya, lihat Contoh versi sumber dengan AWS CodeBuild.

catatan

Kami menyarankan Anda memilih nama cabang Git yang tidak terlihat seperti komitIDs, seperti 811dd1ba1aba14473856cee38308caed7190c0d atau5392f7. Ini membantu Anda menghindari tabrakan checkout Git dengan commit yang sebenarnya.

Kedalaman klon Git

Pilih kedalaman klon Git untuk membuat klon dangkal dengan riwayat terpotong ke jumlah komit yang ditentukan. Jika Anda ingin klon penuh, pilih Penuh.

Membangun status

Pilih Laporkan status build ke penyedia sumber saat build dimulai dan selesai jika Anda ingin status awal dan penyelesaian build dilaporkan ke penyedia sumber.

Untuk dapat melaporkan status build ke penyedia sumber, pengguna yang terkait dengan penyedia sumber harus memiliki akses tulis ke repo. Jika pengguna tidak memiliki akses tulis, status build tidak dapat diperbarui. Untuk informasi selengkapnya, lihat Akses penyedia sumber.

Environment

Di bagian Lingkungan, pilih Edit. Ketika perubahan Anda selesai, pilih Perbarui konfigurasi untuk menyimpan konfigurasi baru.

Anda dapat memodifikasi properti berikut:

Model penyediaan

Untuk mengubah model penyediaan, pilih Ubah model penyediaan dan lakukan salah satu hal berikut:

  • Untuk menggunakan armada sesuai permintaan yang dikelola oleh AWS CodeBuild, pilih On-Demand. Dengan armada sesuai permintaan, CodeBuild menyediakan komputasi untuk build Anda. Mesin-mesin dihancurkan saat build selesai. Armada sesuai permintaan dikelola sepenuhnya, dan mencakup kemampuan penskalaan otomatis untuk menangani lonjakan permintaan.

  • Untuk menggunakan armada kapasitas cadangan yang dikelola oleh AWS CodeBuild, pilih Kapasitas cadangan, lalu pilih nama Armada. Dengan armada kapasitas cadangan, Anda mengonfigurasi satu set instans khusus untuk lingkungan build Anda. Mesin ini tetap menganggur, siap untuk memproses build atau pengujian segera dan mengurangi durasi build. Dengan armada kapasitas cadangan, mesin Anda selalu berjalan dan akan terus mengeluarkan biaya selama disediakan.

Untuk informasi, lihat Jalankan build di atas armada kapasitas cadangan.

Citra lingkungan

Untuk mengubah image build, pilih Override image dan lakukan salah satu hal berikut:

  • Untuk menggunakan image Docker yang dikelola oleh AWS CodeBuild, pilih Managed image, lalu buat pilihan dari Sistem operasi, Runtime, Image, dan versi Image. Buat pilihan dari jenis Lingkungan jika tersedia.

  • Untuk menggunakan gambar Docker lain, pilih Custom image. Untuk jenis Lingkungan, pilih ARM, Linux, Linux GPU, atau Windows. Jika Anda memilih Registri lain, untuk registri Eksternal URL, masukkan nama dan tag gambar Docker di Docker Hub, menggunakan format. docker repository/docker image name Jika Anda memilih Amazon ECR, gunakan ECRrepositori Amazon dan ECRgambar Amazon untuk memilih gambar Docker di akun Anda. AWS

  • Untuk menggunakan image Docker pribadi, pilih Custom image. Untuk jenis Lingkungan, pilih ARM, Linux, Linux GPU, atau Windows. Untuk registri Image, pilih Registri lain, lalu masukkan ARN kredensi untuk image Docker pribadi Anda. Kredensialnya harus dibuat oleh Secrets Manager. Untuk informasi lebih lanjut, lihat Apa itu AWS Secrets Manager? di Panduan Pengguna AWS Secrets Manager .

catatan

CodeBuild mengganti ENTRYPOINT untuk gambar Docker khusus.

Peran layanan

Lakukan salah satu hal berikut ini:

  • Jika Anda tidak memiliki peran CodeBuild layanan, pilih Peran layanan baru. Di Nama peran, masukkan nama untuk peran baru.

  • Jika Anda memiliki peran CodeBuild layanan, pilih Peran layanan yang ada. Dalam Peran ARN, pilih peran layanan.

catatan

Saat menggunakan konsol untuk membuat proyek build, Anda dapat membuat peran CodeBuild layanan secara bersamaan. Secara default, peran hanya berfungsi dengan proyek build tersebut. Jika Anda menggunakan konsol untuk mengaitkan peran layanan ini dengan proyek build lain, peran akan diperbarui agar berfungsi dengan proyek build lainnya. Peran layanan dapat bekerja dengan hingga 10 proyek pembangunan.

Konfigurasi tambahan
Batas waktu

Tentukan nilai, antara 5 menit dan 36 jam, setelah itu CodeBuild menghentikan build jika tidak selesai. Jika jam dan menit dibiarkan kosong, nilai default 60 menit digunakan.

Diistimewakan

Pilih Aktifkan bendera ini jika Anda ingin membuat gambar Docker atau ingin build Anda mendapatkan hak istimewa yang lebih tinggi. hanya jika Anda berencana menggunakan proyek build ini untuk membangun gambar Docker. Jika tidak, semua build terkait yang mencoba berinteraksi dengan daemon Docker gagal. Anda juga harus memulai daemon Docker sehingga build Anda dapat berinteraksi dengannya. Salah satu cara untuk melakukannya adalah dengan menginisialisasi daemon Docker di install fase spesifikasi build Anda dengan menjalankan perintah build berikut. Jangan jalankan perintah ini jika Anda memilih image lingkungan build yang disediakan oleh CodeBuild dengan dukungan Docker.

catatan

Secara default, daemon Docker diaktifkan untuk non-build. VPC Jika Anda ingin menggunakan kontainer Docker untuk VPC build, lihat Runtime Privilege dan Kemampuan Linux di situs web Docker Docs dan aktifkan mode istimewa. Juga, Windows tidak mendukung mode istimewa.

- nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://127.0.0.1:2375 --storage-driver=overlay2 & - timeout 15 sh -c "until docker info; do echo .; sleep 1; done"
VPC

Jika Anda CodeBuild ingin bekerja denganVPC:

  • Untuk VPC, pilih VPC ID yang CodeBuild menggunakan.

  • Untuk VPCSubnet, pilih subnet yang menyertakan sumber daya yang CodeBuild digunakan.

  • Untuk grup VPC Keamanan, pilih grup keamanan yang CodeBuild digunakan untuk mengizinkan akses ke sumber daya diVPCs.

Untuk informasi selengkapnya, lihat Gunakan AWS CodeBuild dengan Amazon Virtual Private Cloud.

Hitung

Pilih salah satu opsi yang tersedia.

Variabel lingkungan

Masukkan nama dan nilai, lalu pilih jenis setiap variabel lingkungan untuk build yang akan digunakan.

catatan

CodeBuild menetapkan variabel lingkungan untuk AWS Wilayah Anda secara otomatis. Anda harus menyetel variabel lingkungan berikut jika Anda belum menambahkannya ke buildspec.ymlmu:

  • AWS_ACCOUNT_ID

  • IMAGE_REPO_NAME

  • IMAGE_TAG

Konsol dan AWS CLI pengguna dapat melihat variabel lingkungan. Jika Anda tidak memiliki kekhawatiran tentang visibilitas variabel lingkungan Anda, atur bidang Nama dan Nilai, lalu setel Type ke Plaintext.

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 atau AWS Secrets Manager.

Jika Anda menggunakan Amazon EC2 Systems Manager Parameter Store, lalu untuk Type, pilih Parameter. Untuk Nama, masukkan pengenal CodeBuild untuk referensi. Untuk Nilai, masukkan nama parameter seperti yang disimpan di Amazon EC2 Systems Manager Parameter Store. Menggunakan parameter bernama /CodeBuild/dockerLoginPassword sebagai contoh, untuk Type, pilih Parameter. Untuk Nama, masukkan LOGIN_PASSWORD. Untuk Nilai, masukkan /CodeBuild/dockerLoginPassword.

penting

Jika Anda menggunakan Amazon EC2 Systems Manager Parameter Store, kami sarankan Anda menyimpan parameter dengan nama parameter yang 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. (Di kotak dialog itu, untuk KMSkunci, Anda dapat menentukan AWS KMS kunci di akun Anda. ARN 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 nama parameter dengan /CodeBuild/ saat sedang disimpan. Untuk informasi selengkapnya, lihat Systems Manager Parameter Store dan Systems Manager Parameter Store Console Walkthrough 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 Peran layanan baru lebih awal, CodeBuild sertakan tindakan ini dalam peran layanan default untuk proyek build Anda. Namun, jika Anda memilih Peran layanan yang ada, Anda harus menyertakan tindakan ini ke peran layanan Anda secara terpisah.

Jika project build Anda merujuk ke parameter yang disimpan di Amazon EC2 Systems Manager Parameter Store dengan nama parameter yang tidak dimulai/CodeBuild/, dan Anda memilih Peran layanan baru, Anda harus memperbarui peran layanan tersebut untuk mengizinkan akses ke nama parameter yang tidak dimulai/CodeBuild/. Ini karena peran layanan itu memungkinkan akses hanya ke nama parameter yang dimulai dengan/CodeBuild/.

Jika Anda memilih Peran layanan baru, peran layanan menyertakan izin untuk mendekripsi semua parameter di bawah /CodeBuild/ namespace di Amazon EC2 Systems Manager Parameter Store.

Variabel lingkungan yang Anda tetapkan menggantikan variabel lingkungan yang ada. Misalnya, jika image Docker sudah berisi variabel lingkungan bernama MY_VAR dengan nilaimy_value, dan Anda menetapkan variabel lingkungan bernama MY_VAR dengan nilaiother_value, my_value maka diganti denganother_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 denganCODEBUILD_. Awalan ini dicadangkan untuk penggunaan internal .

Jika variabel lingkungan dengan nama yang sama didefinisikan di beberapa tempat, nilainya ditentukan sebagai berikut:

  • Nilai dalam panggilan operasi start build lebih diutamakan.

  • Nilai dalam definisi proyek build akan diutamakan berikutnya.

  • Nilai dalam deklarasi buildspec diutamakan paling rendah.

Jika Anda menggunakan Secrets Manager, untuk Type, pilih Secrets Manager. Untuk Nama, masukkan pengenal CodeBuild untuk referensi. Untuk Nilai, masukkan reference-key menggunakan polasecret-id:json-key:version-stage:version-id. Untuk informasi, lihat Secrets Manager reference-key in the buildspec file.

penting

Jika Anda menggunakan Secrets Manager, kami sarankan Anda menyimpan rahasia dengan nama yang dimulai dengan /CodeBuild/ (misalnya,/CodeBuild/dockerLoginPassword). Untuk informasi lebih lanjut, lihat Apa itu AWS Secrets Manager? di Panduan Pengguna AWS Secrets Manager .

Jika proyek build Anda mengacu pada rahasia yang disimpan di Secrets Manager, peran layanan proyek build harus mengizinkan secretsmanager:GetSecretValue tindakan tersebut. Jika Anda memilih Peran layanan baru lebih awal, CodeBuild sertakan tindakan ini dalam peran layanan default untuk proyek build Anda. Namun, jika Anda memilih Peran layanan yang ada, Anda harus menyertakan tindakan ini ke peran layanan Anda secara terpisah.

Jika proyek build mengacu pada rahasia yang disimpan di Secrets Manager dengan nama rahasia yang tidak dimulai/CodeBuild/, dan Anda memilih Peran layanan baru, Anda harus memperbarui peran layanan untuk mengizinkan akses ke nama rahasia yang tidak dimulai/CodeBuild/. Ini karena peran layanan memungkinkan akses hanya ke nama rahasia yang dimulai dengan/CodeBuild/.

Jika Anda memilih Peran layanan baru, peran layanan menyertakan izin untuk mendekripsi semua rahasia di bawah /CodeBuild/ namespace di Secrets Manager.

Buildspec

Di bagian Buildspec, pilih Edit. Ketika perubahan Anda selesai, pilih Perbarui konfigurasi untuk menyimpan konfigurasi baru.

Anda dapat memodifikasi properti berikut:

Membangun spesifikasi

Lakukan salah satu hal berikut ini:

  • Jika kode sumber Anda menyertakan file buildspec, pilih Gunakan file buildspec. Secara default, CodeBuild mencari file bernama buildspec.yml di direktori root kode sumber. Jika file buildspec Anda menggunakan nama atau lokasi yang berbeda, masukkan jalurnya dari root sumber dalam nama Buildspec (misalnya, atau. buildspec-two.yml configuration/buildspec.yml Jika file buildspec ada di bucket S3, file tersebut harus berada di AWS Region yang sama dengan project build Anda. Tentukan file buildspec menggunakan nya ARN (misalnya,). arn:aws:s3:::<my-codebuild-sample2>/buildspec.yml

  • Jika kode sumber Anda tidak menyertakan file buildspec, atau jika Anda ingin menjalankan perintah build yang berbeda dari yang ditentukan untuk build fase dalam buildspec.yml file di direktori root kode sumber, pilih Sisipkan perintah build. Untuk perintah Build, masukkan perintah yang ingin Anda jalankan dalam build fase. Untuk beberapa perintah, pisahkan setiap perintah dengan && (misalnya,mvn test && mvn package). Untuk menjalankan perintah di fase lain, atau jika Anda memiliki daftar panjang perintah untuk build fase tersebut, tambahkan buildspec.yml file ke direktori root kode sumber, tambahkan perintah ke file, lalu pilih Gunakan buildspec.ymldi direktori root kode sumber.

Untuk informasi selengkapnya, lihat Referensi Buildspec.

Konfigurasi Batch

Di bagian konfigurasi Batch, pilih Edit. Ketika perubahan Anda selesai, pilih Perbarui konfigurasi untuk menyimpan konfigurasi baru. Untuk informasi selengkapnya, lihat Jalankan build dalam batch.

Anda dapat memodifikasi properti berikut:

Peran layanan Batch

Menyediakan peran layanan untuk build batch.

Pilih salah satu cara berikut:

  • Jika Anda tidak memiliki peran layanan batch, pilih Peran layanan baru. Di peran Layanan, masukkan nama untuk peran baru.

  • Jika Anda memiliki peran layanan batch, pilih Peran layanan yang ada. Dalam peran Layanan, pilih peran layanan.

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 komputasi yang diizinkan untuk batch

Pilih jenis komputasi yang diizinkan untuk batch. Pilih semua yang berlaku.

Build maksimum yang diizinkan dalam batch

Masukkan jumlah maksimum build yang diizinkan dalam batch. Jika batch melebihi batas ini, batch akan gagal.

Batas waktu Batch

Masukkan jumlah waktu maksimum untuk menyelesaikan batch build.

Gabungkan artefak

Pilih Gabungkan semua artefak dari batch ke satu lokasi agar semua artefak dari batch digabungkan menjadi satu lokasi.

Mode laporan batch

Pilih mode laporan status build yang diinginkan untuk build batch.

catatan

Bidang ini hanya tersedia jika sumber proyek adalah Bitbucket, GitHub, atau GitHub Enterprise, dan Laporkan status build ke penyedia sumber saat build Anda mulai dan selesai dipilih di bawah Sumber.

Build agregat

Pilih agar status untuk semua build dalam batch digabungkan menjadi satu laporan status.

Membangun individu

Pilih agar status build untuk semua build dalam batch dilaporkan secara terpisah.

Artifacts

Di bagian Artefak, pilih Edit. Ketika perubahan Anda selesai, pilih Perbarui konfigurasi untuk menyimpan konfigurasi baru.

Anda dapat memodifikasi properti berikut:

Jenis

Lakukan salah satu hal berikut ini:

  • Jika Anda tidak ingin membuat artefak keluaran build apa pun, pilih Tidak ada artefak. Anda mungkin ingin melakukan ini jika Anda hanya menjalankan pengujian build atau Anda ingin mendorong image Docker ke ECR repositori Amazon.

  • Untuk menyimpan output build dalam bucket S3, pilih Amazon S3, lalu lakukan hal berikut:

    • Jika Anda ingin menggunakan nama proyek untuk ZIP file atau folder keluaran build, biarkan Nama kosong. Jika tidak, masukkan nama. (Jika Anda ingin menampilkan ZIP file, dan Anda ingin ZIP file memiliki ekstensi file, pastikan untuk memasukkannya setelah nama ZIP file.)

    • Pilih Aktifkan versi semantik jika Anda ingin nama yang ditentukan dalam file buildspec untuk mengganti nama apa pun yang ditentukan di konsol. Nama dalam file buildspec dihitung pada waktu pembuatan dan menggunakan bahasa perintah Shell. Misalnya, Anda dapat menambahkan tanggal dan waktu untuk nama artefak Anda sehingga selalu unik. Nama artefak unik mencegah artefak ditimpa. Untuk informasi selengkapnya, lihat Sintaks Buildspec.

    • Untuk nama Bucket, pilih nama bucket keluaran.

    • Jika Anda memilih Insert build perintah sebelumnya dalam prosedur ini, maka untuk file Output, masukkan lokasi file dari build yang ingin Anda masukkan ke dalam ZIP file atau folder keluaran build. Untuk beberapa lokasi, pisahkan setiap lokasi dengan koma (misalnya,appspec.yml, target/my-app.jar). Untuk informasi lebih lanjut, lihat deskripsi files diSintaks Buildspec.

    • Jika Anda tidak ingin artefak build Anda dienkripsi, pilih Hapus enkripsi artefak.

Untuk setiap set artefak sekunder yang Anda inginkan:

  1. Untuk pengenal Artifact, masukkan nilai yang kurang dari 128 karakter dan hanya berisi karakter alfanumerik dan garis bawah.

  2. Pilih Tambahkan artefak.

  3. Ikuti langkah-langkah sebelumnya untuk mengonfigurasi artefak sekunder Anda.

  4. Pilih Simpan artefak.

Konfigurasi tambahan
Kunci enkripsi

Lakukan salah satu hal berikut ini:

  • Untuk menggunakan Kunci yang dikelola AWS Amazon S3 di akun Anda untuk mengenkripsi artefak keluaran build, biarkan kunci Enkripsi kosong. Ini adalah opsi default.

  • Untuk menggunakan kunci yang dikelola pelanggan untuk mengenkripsi artefak keluaran build, di kunci Enkripsi, masukkan kunci ARN yang dikelola pelanggan. Gunakan format arn:aws:kms:region-ID:account-ID:key/key-ID.

Jenis cache

Untuk jenis Cache, pilih salah satu dari berikut ini:

  • Jika Anda tidak ingin menggunakan cache, pilih Tidak ada cache.

  • Jika Anda ingin menggunakan cache Amazon S3, pilih Amazon S3, lalu lakukan hal berikut:

    • Untuk Bucket, pilih nama bucket S3 tempat cache disimpan.

    • (Opsional) Untuk awalan jalur Cache, masukkan awalan jalur Amazon S3. Nilai awalan jalur Cache mirip dengan nama direktori. Itu memungkinkan Anda untuk menyimpan cache di bawah direktori yang sama dalam ember.

      penting

      Jangan menambahkan garis miring (/) ke ujung awalan jalur.

  • Jika Anda ingin menggunakan cache lokal, pilih Lokal, lalu pilih satu atau beberapa mode cache lokal.

    catatan

    Mode cache lapisan Docker hanya tersedia untuk Linux. Jika Anda memilihnya, proyek Anda harus berjalan dalam mode istimewa.

Menggunakan cache menghemat banyak waktu pembuatan karena bagian lingkungan build yang dapat digunakan kembali disimpan dalam cache dan digunakan di seluruh build. Untuk informasi tentang menentukan cache dalam file buildspec, lihat. Sintaks Buildspec Untuk informasi lebih lanjut tentang caching, lihatCache dibangun untuk meningkatkan kinerja.

Log

Di bagian Log, pilih Edit. Ketika perubahan Anda selesai, pilih Perbarui konfigurasi untuk menyimpan konfigurasi baru.

Anda dapat memodifikasi properti berikut:

Pilih log yang ingin Anda buat. Anda dapat membuat CloudWatch Log Amazon, log Amazon S3, atau keduanya.

CloudWatch

Jika Anda ingin CloudWatch log Amazon Log:

CloudWatch log

Pilih CloudWatch log.

Nama grup

Masukkan nama grup CloudWatch log Amazon Logs Anda.

Nama aliran

Masukkan nama aliran CloudWatch log Amazon Logs Anda.

S3

Jika Anda ingin log Amazon S3:

Log S3

Pilih log S3.

Bucket

Pilih nama bucket S3 untuk log Anda.

Awalan jalur

Masukkan awalan untuk log Anda.

Nonaktifkan enkripsi log S3

Pilih jika Anda tidak ingin log S3 Anda dienkripsi.

Mengubah pengaturan proyek build (AWS CLI)

Untuk informasi tentang menggunakan AWS CLI with AWS CodeBuild, lihatReferensi baris perintah.

Untuk memperbarui CodeBuild proyek dengan AWS CLI, Anda membuat JSON file dengan properti yang diperbarui dan meneruskan file itu ke update-projectperintah. Properti apa pun yang tidak terkandung dalam file pembaruan tetap tidak berubah.

Dalam JSON file pembaruan, hanya name properti dan properti yang dimodifikasi yang diperlukan. nameProperti mengidentifikasi proyek untuk dimodifikasi. Untuk setiap struktur yang dimodifikasi, parameter yang diperlukan untuk struktur tersebut juga harus disertakan. Misalnya, untuk memodifikasi lingkungan proyek, environment/computeType properti environment/type dan diperlukan. Berikut adalah contoh yang memperbarui citra lingkungan:

{ "name": "<project-name>", "environment": { "type": "LINUX_CONTAINER", "computeType": "BUILD_GENERAL1_SMALL", "image": "aws/codebuild/amazonlinux2-x86_64-standard:4.0" } }

Jika Anda perlu mendapatkan nilai properti saat ini untuk sebuah proyek, gunakan batch-get-projectsperintah untuk mendapatkan properti saat ini dari proyek yang Anda modifikasi, dan tulis output ke file.

aws codebuild batch-get-projects --names "<project-name>" > project-info.json

Bagian project-info.json file berisi array proyek, sehingga tidak dapat digunakan secara langsung untuk memperbarui proyek. Namun, Anda dapat menyalin properti yang ingin Anda modifikasi dari project-info.json berkas dan tempelkan ke file pembaruan Anda sebagai dasar untuk properti yang ingin Anda modifikasi. Untuk informasi selengkapnya, lihat Lihat detail proyek build (AWS CLI).

Ubah JSON file pembaruan seperti yang dijelaskan dalamBuat proyek build (AWS CLI), dan simpan hasil Anda. Ketika Anda selesai memodifikasi JSON file pembaruan, jalankan update-projectperintah, melewati JSON file pembaruan.

aws codebuild update-project --cli-input-json file://<update-project-file>

Jika berhasil, proyek yang diperbarui JSON muncul di output. Jika ada parameter yang diperlukan yang hilang, pesan kesalahan ditampilkan dalam output yang mengidentifikasi parameter yang hilang. Misalnya, ini adalah pesan kesalahan yang ditampilkan jika environment/type parameter tidak ada:

aws codebuild update-project --cli-input-json file://update-project.json Parameter validation failed: Missing required parameter in environment: "type"

Mengubah pengaturan proyek build (AWS SDKs)

Untuk informasi tentang menggunakan AWS CodeBuild dengan AWS SDKs, lihatAWSReferensi SDK dan alat.