Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Buat pipeline gambar AMI dari AWS CLI
Untuk membuat pipeline gambar dari AWS CLI, jalankan create-image-pipeline perintah dengan opsi konfigurasi yang berlaku untuk pipeline Anda. Anda memiliki opsi untuk membuat file JSON yang berisi semua konfigurasi pipeline Anda, atau untuk menentukan konfigurasi saat runtime. Bagian ini menggunakan metode file konfigurasi JSON untuk menyederhanakan perintah.
Seberapa sering pipeline Anda membuat gambar baru untuk menggabungkan pembaruan yang tertunda dari gambar dasar dan komponen Anda tergantung pada schedule yang telah Anda konfigurasikan. A schedule memiliki atribut berikut:
-
scheduleExpression— Tetapkan jadwal kapan pipeline Anda berjalan untuk mengevaluasipipelineExecutionStartConditiondan menentukan apakah itu harus memulai pembangunan. Jadwal dikonfigurasi dengan ekspresi cron. Untuk informasi selengkapnya tentang cara memformat ekspresi cron di Image Builder, lihatGunakan ekspresi cron di Image Builder. -
pipelineExecutionStartCondition— Menentukan apakah pipeline Anda harus memulai pembangunan. Nilai yang valid meliputi:-
EXPRESSION_MATCH_ONLY— pipeline Anda akan membangun gambar baru setiap kali ekspresi cron cocok dengan waktu saat ini. -
EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE— pipeline Anda membuat gambar baru hanya jika ekspresi jadwal cocok dan ada pembaruan yang tertunda untuk gambar atau komponen dasar Anda. Jika tidak ada pembaruan yang tertunda, build akan dilewati. Untuk segera membangun tanpa menunggu pembaruan, jalankan pipeline secara manual.
-
Ketika Anda menjalankan create-image-pipeline perintah di AWS CLI, banyak sumber daya konfigurasi adalah opsional. Namun, beberapa sumber daya memiliki persyaratan bersyarat, tergantung pada jenis gambar apa yang dibuat pipa. Pengidentifikasi sumber daya berikut diperlukan untuk pipeline gambar AMI:
-
Resep gambar ARN
-
Konfigurasi infrastruktur ARN
Contoh: Buat gambar Windows 2019
Contoh ini mengonfigurasi pipeline yang dijadwalkan berjalan seminggu sekali pada hari Minggu. File konfigurasi yang ditampilkan pada langkah pertama menggunakan sumber daya yang ada untuk resep gambar, infrastruktur, dan konfigurasi distribusi, bersama dengan pengaturan lain untuk membuat gambar Windows 2019.
-
Buat file konfigurasi (opsional)
Contoh ini menggunakan file konfigurasi bernama
create-image-pipeline.jsonuntuk mengkonfigurasi pengaturan di satu tempat. Atau, Anda dapat menggunakan opsi baris perintah saat menjalankan perintah untuk menentukan semua detail yang ditampilkan di sini di file konfigurasi.{ "name": "ExampleWindows2019Pipeline", "description": "Builds Windows 2019 Images", "enhancedImageMetadataEnabled": true, "imageRecipeArn": "arn:aws:imagebuilder:us-west-2:123456789012:image-recipe/my-example-recipe/2020.12.03", "infrastructureConfigurationArn": "arn:aws:imagebuilder:us-west-2:123456789012:infrastructure-configuration/my-example-infrastructure-configuration", "distributionConfigurationArn": "arn:aws:imagebuilder:us-west-2:123456789012:distribution-configuration/my-example-distribution-configuration", "imageTestsConfiguration": { "imageTestsEnabled": true, "timeoutMinutes": 60 }, "schedule": { "scheduleExpression": "cron(0 0 * * SUN *)", "pipelineExecutionStartCondition": "EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE" }, "status": "ENABLED" }catatan
-
Anda harus menyertakan notasi
file://pada awal jalur file JSON. -
Jalur untuk file JSON harus mengikuti konvensi yang sesuai untuk sistem operasi dasar tempat Anda menjalankan perintah. Misalnya, Windows menggunakan garis miring terbalik (\) untuk merujuk ke jalur direktori, sedangkan Linux dan macOS menggunakan garis miring maju (/).
-
-
Jalankan perintah untuk membuat gambar
Contoh ini menggunakan file konfigurasi yang dibuat pada langkah pertama sebagai input ke
create-image-pipelineperintah. Atau, Anda dapat menentukan pengaturan dan sumber daya untuk pipeline Anda secara langsung ketika Anda menjalankan perintah. Untuk informasi selengkapnya, lihat create-image-pipeline di Referensi.AWS CLIaws imagebuilder create-image-pipeline --cli-input-json file://create-image-pipeline.json
Contoh: Buat pipeline dengan pemindaian gambar dan alur kerja khusus
Contoh ini mengonfigurasi pipeline yang memeriksa setiap tujuh hari dan berjalan hanya ketika pembaruan ketergantungan tersedia. File konfigurasi menggunakan sumber daya yang ada untuk resep gambar dan infrastruktur. Ini memungkinkan pemindaian kerentanan dengan Amazon Inspector. Konfigurasi juga menentukan alur kerja kustom dengan peran eksekusi. Grup paralel menjalankan tes keamanan dan fungsional secara bersamaan. Log pipa dikirim ke grup CloudWatch log kustom.
-
Buat file konfigurasi
Buat file JSON bernama
create-pipeline-with-workflows.json. File ini mendefinisikan konfigurasi pipeline dengan pemindaian gambar diaktifkan dan alur kerja pengujian kustom. Ganti nilai placeholder dengan ARN sumber daya Anda sendiri.{ "name": "MyPipelineWithScanning", "description": "Pipeline with vulnerability scanning and custom workflows", "imageRecipeArn": "arn:aws:imagebuilder:us-west-2:123456789012:image-recipe/my-recipe/1.0.0", "infrastructureConfigurationArn": "arn:aws:imagebuilder:us-west-2:123456789012:infrastructure-configuration/my-infra-config", "distributionConfigurationArn": "arn:aws:imagebuilder:us-west-2:123456789012:distribution-configuration/my-dist-config", "imageScanningConfiguration": { "imageScanningEnabled": true }, "workflows": [ { "workflowArn": "arn:aws:imagebuilder:us-west-2:123456789012:workflow/build/my-build-workflow/1.0.0" }, { "workflowArn": "arn:aws:imagebuilder:us-west-2:123456789012:workflow/test/my-security-scan/1.0.0", "onFailure": "ABORT", "parallelGroup": "security" }, { "workflowArn": "arn:aws:imagebuilder:us-west-2:123456789012:workflow/test/my-compliance-check/1.0.0", "onFailure": "ABORT", "parallelGroup": "security" }, { "workflowArn": "arn:aws:imagebuilder:us-west-2:123456789012:workflow/test/my-functional-test/1.0.0", "onFailure": "CONTINUE", "parallelGroup": "functional" }, { "workflowArn": "arn:aws:imagebuilder:us-west-2:123456789012:workflow/test/my-performance-test/1.0.0", "onFailure": "CONTINUE", "parallelGroup": "functional" } ], "executionRole": "arn:aws:iam::123456789012:role/ImageBuilderExecutionRole", "loggingConfiguration": { "imageLogGroupName": "/aws/imagebuilder/my-pipeline-image-logs", "pipelineLogGroupName": "/aws/imagebuilder/my-pipeline-execution-logs" }, "imageTestsConfiguration": { "imageTestsEnabled": true, "timeoutMinutes": 60 }, "schedule": { "scheduleExpression": "rate(7 days)", "pipelineExecutionStartCondition": "EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE" }, "status": "ENABLED" }catatan
-
Anda harus menyertakan notasi
file://pada awal jalur file JSON. -
Jalur untuk file JSON harus mengikuti konvensi yang sesuai untuk sistem operasi dasar tempat Anda menjalankan perintah. Misalnya, Windows menggunakan garis miring terbalik (\) untuk merujuk ke jalur direktori, sedangkan Linux dan macOS menggunakan garis miring maju (/).
-
-
Jalankan perintah
aws imagebuilder create-image-pipeline --cli-input-json file://create-pipeline-with-workflows.json