CodePipeline Praktik terbaik dan kasus penggunaan - AWS CodePipeline

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

CodePipeline Praktik terbaik dan kasus penggunaan

AWS CodePipelineterintegrasi dengan sejumlah produk dan layanan. Bagian berikut menjelaskan praktik dan kasus penggunaan CodePipeline dan produk dan layanan terkait ini.

Kasus penggunaan bisnis sederhana untuk CodePipeline dapat membantu Anda memahami cara Anda menerapkan layanan dan mengontrol akses pengguna. Kasus penggunaan dijelaskan secara umum. Mereka tidak meresepkan API untuk digunakan untuk mencapai hasil yang Anda inginkan.

Praktik terbaik

Gunakan praktik terbaik yang diuraikan dalam bagian ini saat menggunakan CodePipeline.

Praktik terbaik keamanan untuk CodePipelinesumber daya

Anda menggunakan enkripsi dan otentikasi untuk repositori sumber yang terhubung ke pipeline Anda. Untuk CodePipeline praktik terbaik untuk keamanan, lihatPraktik terbaik keamanan.

Praktik terbaik pemantauan dan logging untuk CodePipelinesumber daya

Anda dapat menggunakan fitur pencatatan di AWS untuk menentukan tindakan yang telah dilakukan pengguna di akun Anda dan sumber daya yang digunakan. Berkas log menunjukkan:

  • Waktu dan tanggal tindakan.

  • Alamat IP sumber untuk tindakan.

  • Tindakan mana yang gagal karena izin yang tidak memadai.

Fitur log tersedia dalam layanan AWS berikut:

  • AWS CloudTraildapat digunakan untuk logAWSPanggilan API dan kejadian terkait yang dilakukan oleh atau atas nama sebuahAWSakun. Untuk informasi selengkapnya, lihat Pembuatan log panggilan API CodePipeline denganAWS CloudTrail.

  • Amazon CloudWatch Acara dapat digunakan untuk memantauAWSSumber daya cloud dan aplikasi yang Anda jalankan diAWS. Anda dapat membuat peringatan di Amazon CloudWatch Peristiwa berdasarkan metrik yang Anda tentukan. Untuk informasi selengkapnya, lihat Memantau peristiwa CodePipeline.

Praktik terbaik untuk plugin Jenkins

Gunakan praktik terbaik yang disediakan di bagian ini untuk jaringan pipa dengan penyedia tindakan Jenkins.

Konfigurasikan instans Amazon EC2 dan peran IAM terpisah untuk server build Jenkins

Sebagai praktik terbaik, saat Anda menggunakan penyedia build Jenkins untuk tindakan build atau pengujian pipeline Anda, instal Jenkins pada instans Amazon EC2 dan konfigurasikan profil instans EC2 terpisah. Pastikan profil instans hanya memberikan JenkinsAWSizin yang diperlukan untuk melakukan tugas untuk proyek Anda, seperti mengambil file dari Amazon S3.

Profil instans memberikan aplikasi yang berjalan di instans Amazon EC2 dengan kredensi untuk mengakses lainnyaAWSlayanan Akibatnya, Anda tidak perlu mengonfigurasiAWSkredensi (AWSaccess key dan kunci secret).

Untuk mempelajari cara membuat peran untuk profil instans Jenkins Anda, lihat langkah-langkah diBuat IAM role untuk integrasi Jenkins.

Kasus penggunaan untuk CodePipeline

Anda dapat membuat jaringan pipa yang terintegrasi dengan lainnyaAWSlayanan Ini dapatAWSlayanan, seperti Amazon S3, atau produk pihak ketiga, seperti GitHub. Bagian ini menyediakan contoh untuk menggunakan CodePipeline untuk mengotomatiskan rilis kode Anda menggunakan integrasi produk yang berbeda. Untuk daftar lengkap integrasi dengan CodePipeline diselenggarakan oleh tipe aksi, lihatReferensi struktur pipa CodePipeline.

Gunakan CodePipeline dengan Amazon S3,AWS CodeCommit, danAWS CodeDeploy

Saat Anda membuat pipeline, CodePipeline terintegrasi denganAWSproduk dan layanan yang bertindak sebagai penyedia tindakan di setiap tahap pipeline Anda. Saat Anda memilih tahapan di wizard, Anda harus memilih tahap sumber dan setidaknya tahap build atau deploy. Wisaya membuat tahapan untuk Anda dengan nama default yang tidak dapat diubah. Ini adalah nama panggung yang dibuat saat Anda menyiapkan pipeline tiga tahap penuh di wizard:

  • Tahap aksi sumber dengan nama default “Sumber.”

  • Tahap aksi build dengan nama default “Build.”

  • Tahap aksi deploy dengan nama default “Staging.”

Anda dapat menggunakan tutorial dalam panduan ini untuk membuat pipeline dan menentukan tahapan:

  • Langkah-langkah diTutorial: Buat pipeline sederhana (bucket S3)membantu Anda menggunakan wizard untuk membuat pipeline dengan dua tahap default: “Sumber” dan “Pementasan”, di mana repositori Amazon S3 Anda adalah penyedia sumber. Tutorial ini membuat pipeline yang menggunakanAWS CodeDeployuntuk men-deploy contoh aplikasi dari bucket Amazon S3 ke instans Amazon EC2 yang menjalankan Amazon Linux.

  • Langkah-langkah diTutorial: Buat pipeline sederhana (CodeCommitrepositori)membantu Anda menggunakan wizard untuk membuat alur dengan tahap “Sumber” yang menggunakanAWS CodeCommitrepositori sebagai penyedia sumber. Tutorial ini membuat pipeline yang menggunakanAWS CodeDeployuntuk menggunakan aplikasi sampel dariAWS CodeCommitrepositori ke instans Amazon EC2 menjalankan Amazon Linux.

Gunakan CodePipeline dengan penyedia tindakan pihak ketiga (GitHubdan Jenkins)

Anda dapat membuat jaringan pipa yang terintegrasi dengan produk pihak ketiga seperti GitHub dan Jenkins. Langkah-langkah diTutorial: Buat pipeline empat tahapmenunjukkan kepada Anda cara membuat alur yang:

  • Mendapat kode sumber dari GitHub repositori,

  • Menggunakan Jenkins untuk membangun dan menguji kode sumber,

  • GunakanAWS CodeDeployuntuk menerapkan kode sumber yang dibuat dan diuji ke instans Amazon EC2 yang menjalankan Amazon Linux atau Microsoft Windows Server.

Gunakan CodePipeline dengan AWS CodeStar untuk membangun sebuah pipeline dalam proyek kode

AWS CodeStar adalah layanan berbasis cloud yang menyediakan antarmuka pengguna terpadu untuk mengelola proyek-proyek pengembangan perangkat lunak diAWS. AWS CodeStar bekerja dengan CodePipeline untuk menggabungkanAWSsumber daya ke dalam toolchain pengembangan proyek. Anda dapat menggunakan AWS CodeStar dasbor untuk secara otomatis membuat pipeline, repositori, kode sumber, membangun file spesifikasi, metode penyebaran, dan instance hosting atau instance tanpa server yang diperlukan untuk proyek kode lengkap.

Untuk membuat AWS Anda CodeStar proyek, Anda memilih bahasa pengkodean Anda dan jenis aplikasi yang ingin Anda deploy. Anda dapat membuat jenis proyek berikut: aplikasi web, layanan web, atau keterampilan Alexa.

Kapan saja, Anda dapat mengintegrasikan IDE pilihan Anda ke dalam AWS CodeStar dasbor Anda juga dapat menambah dan menghapus anggota tim dan mengelola izin untuk anggota tim pada proyek Anda. Untuk tutorial yang menunjukkan cara menggunakan AWS CodeStar untuk membuat pipeline sampel untuk aplikasi tanpa server, lihatTutorial: Membuat dan Mengelola Proyek Tanpa Server di AWS CodeStar.

Gunakan CodePipeline untuk mengkompilasi, membangun, dan menguji kode dengan CodeBuild

CodeBuild adalah layanan build terkelola di cloud yang memungkinkan Anda membuat dan menguji kode tanpa server atau sistem. Gunakan CodePipeline bersama CodeBuild untuk mengotomatiskan revisi yang berjalan melalui pipeline untuk pengiriman perangkat lunak yang berkelanjutan setiap kali ada perubahan pada kode sumber. Untuk informasi selengkapnya, lihatGunakan CodePipeline bersama CodeBuild untuk menguji kode dan menjalankan build.

Gunakan CodePipeline dengan Amazon ECS untuk pengiriman berkelanjutan aplikasi berbasis kontainer ke cloud

Amazon ECS adalah layanan manajemen kontainer yang memungkinkan Anda menerapkan aplikasi berbasis kontainer ke instans Amazon ECS di cloud. Gunakan CodePipeline dengan Amazon ECS untuk mengotomatiskan revisi yang berjalan melalui pipeline untuk penerapan berkelanjutan aplikasi berbasis kontainer setiap kali ada perubahan pada repositori gambar sumber. Untuk informasi lebih lanjut, lihat Tutorial: Deployment kontinu dengan CodePipeline.

Gunakan CodePipeline dengan Elastic Beanstalk untuk pengiriman terus menerus aplikasi web ke cloud

Elastic Beanstalk adalah layanan komputasi yang memungkinkan Anda menyebarkan aplikasi web dan layanan ke server web. Gunakan CodePipeline dengan Elastic Beanstalk untuk penyebaran aplikasi web secara berkelanjutan ke lingkungan aplikasi Anda. Anda juga dapat menggunakan AWS CodeStar untuk membuat pipeline dengan aksi penyebaran Elastic Beanstalk.

Gunakan CodePipeline bersamaAWS Lambdauntuk pengiriman berkelanjutan aplikasi berbasis Lambda dan tanpa server

Anda dapat menggunakanAWS Lambdabersama CodePipeline untuk memohonAWS Lambdafungsi, seperti yang dijelaskan dalamMen-deploy aplikasi nirkabel. Anda juga dapat menggunakanAWS Lambdadan AWS CodeStar untuk membuat pipeline untuk menerapkan aplikasi tanpa server.

Gunakan CodePipeline bersamaAWS CloudFormationtemplate untuk pengiriman terus menerus ke cloud

Anda dapat menggunakanAWS CloudFormationbersama CodePipeline untuk pengiriman dan otomatisasi berkelanjutan. Untuk informasi selengkapnya, lihatPengiriman berkelanjutan dengan CodePipeline.AWS CloudFormationjuga digunakan untuk membuat template untuk pipeline yang dibuat di AWS CodeStar.