Buat pemicu untuk suatu CodeDeploy acara - AWS CodeDeploy

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

Buat pemicu untuk suatu CodeDeploy acara

Anda dapat membuat pemicu yang memublikasikan topik Amazon Simple Notification Service (Amazon SNS) untuk penyebaran atau kejadian instance. AWS CodeDeploy Kemudian, ketika peristiwa itu terjadi, semua pelanggan ke topik terkait menerima pemberitahuan melalui titik akhir yang ditentukan dalam topik, seperti pesan SMS atau pesan email. Amazon SNS menawarkan beberapa metode untuk berlangganan topik.

Sebelum membuat pemicu, Anda harus mengatur topik Amazon SNS agar pemicu dapat ditunjuk. Untuk selengkapnya, lihat Membuat topik. Saat Anda membuat topik, kami sarankan Anda memberinya nama yang mengidentifikasi tujuannya, dalam format seperti Topic-group-us-west-3-deploy-fail atauTopic-group-project-2-instance-stop.

Anda juga harus memberikan izin Amazon SNS ke peran CodeDeploy layanan sebelum pemberitahuan dapat dikirim untuk pemicu Anda. Untuk informasi, lihat Berikan izin Amazon SNS ke peran layanan CodeDeploy .

Setelah Anda membuat topik, Anda dapat menambahkan pelanggan. Untuk informasi tentang membuat, mengelola, dan berlangganan topik, lihat Apa itu Layanan Pemberitahuan Sederhana Amazon.

Buat pemicu untuk mengirim pemberitahuan untuk CodeDeploy acara (konsol)

Anda dapat menggunakan CodeDeploy konsol untuk membuat pemicu untuk suatu CodeDeploy peristiwa. Di akhir proses penyiapan, pesan pemberitahuan pengujian dikirim untuk memastikan bahwa izin dan detail pemicu diatur dengan benar.

Untuk membuat pemicu untuk suatu CodeDeploy peristiwa
  1. Di AWS Management Console, buka AWS CodeDeploy konsol.

  2. Masuk ke AWS Management Console dan buka CodeDeploy konsol di https://console.aws.amazon.com/codedeploy.

    catatan

    Masuk dengan pengguna yang sama dengan yang Anda aturMemulai dengan CodeDeploy.

  3. Di panel navigasi, perluas Deploy, lalu pilih Applications.

  4. Pada halaman Aplikasi, pilih nama aplikasi yang terkait dengan grup penyebaran tempat Anda ingin menambahkan pemicu.

  5. Pada halaman Detail aplikasi, pilih grup penyebaran tempat Anda ingin menambahkan pemicu.

  6. Pilih Edit.

  7. Perluas Lanjutan - opsional.

  8. Di area Pemicu, pilih Buat pemicu.

  9. Di panel Pemicu Create deployment, lakukan hal berikut:

    1. Di nama Pemicu, masukkan nama untuk pemicu yang membuatnya mudah untuk mengidentifikasi tujuannya. Kami merekomendasikan format seperti Trigger-group-us-west-3-deploy-fail atauTrigger-group-eu-central-instance-stop.

    2. Di Acara, pilih jenis atau jenis acara untuk memicu topik Amazon SNS untuk mengirim notifikasi.

    3. Di topik Amazon SNS, pilih nama topik yang Anda buat untuk mengirim notifikasi untuk pemicu ini.

    4. Pilih Buat pemicu. CodeDeploy mengirimkan pemberitahuan pengujian untuk mengonfirmasi bahwa Anda telah mengonfigurasi akses dengan benar antara CodeDeploy dan topik Amazon SNS. Bergantung pada jenis titik akhir yang Anda pilih untuk topik tersebut, dan jika Anda berlangganan topik, Anda menerima konfirmasi dalam pesan SMS atau pesan email.

  10. Pilih Simpan perubahan.

Buat pemicu untuk mengirim pemberitahuan untuk CodeDeploy acara (CLI)

Anda dapat menggunakan CLI untuk menyertakan pemicu saat Anda membuat grup penerapan, atau Anda dapat menambahkan pemicu ke grup penerapan yang ada.

Untuk membuat pemicu untuk mengirim pemberitahuan untuk grup penyebaran baru

Buat file JSON untuk mengonfigurasi grup penyebaran, lalu jalankan create-deployment-groupperintah menggunakan opsi. --cli-input-json

Cara termudah untuk membuat file JSON adalah dengan menggunakan --generate-cli-skeleton opsi untuk mendapatkan salinan format JSON, dan kemudian memberikan nilai yang diperlukan dalam editor teks biasa.

  1. Jalankan perintah berikut, lalu salin hasilnya ke editor teks biasa.

    aws deploy create-deployment-group --generate-cli-skeleton
  2. Tambahkan nama CodeDeploy aplikasi yang ada ke output:

    { "applicationName": "TestApp-us-east-2", "deploymentGroupName": "", "deploymentConfigName": "", "ec2TagFilters": [ { "Key": "", "Value": "", "Type": "" } ], "onPremisesInstanceTagFilters": [ { "Key": "", "Value": "", "Type": "" } ], "autoScalingGroups": [ "" ], "serviceRoleArn": "", "triggerConfigurations": [ { "triggerName": "", "triggerTargetArn": "", "triggerEvents": [ "" ] } ] }
  3. Berikan nilai untuk parameter yang ingin Anda konfigurasikan.

    Saat Anda menggunakan create-deployment-groupperintah, Anda harus memberikan, minimal, nilai untuk parameter berikut:

    • applicationName: Nama aplikasi yang sudah dibuat di akun Anda.

    • deploymentGroupName: Nama untuk grup penyebaran yang Anda buat.

    • serviceRoleArn: ARN dari peran layanan yang ada disiapkan CodeDeploy di akun Anda. Untuk informasi, lihat Langkah 2: Buat peran layanan untuk CodeDeploy.

    Di triggerConfigurations bagian ini, berikan nilai untuk parameter berikut:

    • triggerName: Nama yang ingin Anda berikan pelatuknya sehingga Anda dapat dengan mudah mengidentifikasinya. Kami merekomendasikan format seperti Trigger-group-us-west-3-deploy-fail atauTrigger-group-eu-central-instance-stop.

    • triggerTargetArn: ARN dari topik Amazon SNS yang Anda buat untuk dikaitkan dengan pemicu Anda, dalam format ini:. arn:aws:sns:us-east-2:444455556666:NewTestTopic

    • triggerEvents: Jenis acara atau acara yang ingin Anda picu notifikasi. Anda dapat menentukan satu atau beberapa jenis acara, memisahkan beberapa nama jenis acara dengan koma (misalnya,"triggerEvents":["DeploymentSuccess","DeploymentFailure","InstanceFailure"]). Saat Anda menambahkan lebih dari satu jenis acara, notifikasi untuk semua jenis tersebut dikirim ke topik yang Anda tentukan, bukan ke topik yang berbeda untuk masing-masing. Anda dapat memilih dari jenis acara berikut:

      • DeploymentStart

      • DeploymentSuccess

      • DeploymentFailure

      • DeploymentStop

      • DeploymentRollback

      • DeploymentReady (Hanya berlaku untuk instance pengganti dalam penerapan biru/hijau)

      • InstanceStart

      • InstanceSuccess

      • InstanceFailure

      • InstanceReady (Hanya berlaku untuk instance pengganti dalam penerapan biru/hijau)

    Contoh konfigurasi berikut membuat grup penyebaran bernama dep-group-ghi-789-2 untuk aplikasi bernama TestApp-us-east-2 dan pemicu yang meminta pengiriman pemberitahuan setiap kali penerapan dimulai, berhasil, atau gagal:

    { "applicationName": "TestApp-us-east-2", "deploymentConfigName": "CodeDeployDefault.OneAtATime", "deploymentGroupName": "dep-group-ghi-789-2", "ec2TagFilters": [ { "Key": "Name", "Value": "Project-ABC", "Type": "KEY_AND_VALUE" } ], "serviceRoleArn": "arn:aws:iam::444455556666:role/AnyCompany-service-role", "triggerConfigurations": [ { "triggerName": "Trigger-group-us-east-2", "triggerTargetArn": "arn:aws:sns:us-east-2:444455556666:us-east-deployments", "triggerEvents": [ "DeploymentStart", "DeploymentSuccess", "DeploymentFailure" ] } ] }
  4. Simpan pembaruan Anda sebagai file JSON, lalu panggil file itu menggunakan --cli-input-json opsi saat Anda menjalankan create-deployment-group perintah:

    penting

    Pastikan untuk menyertakan file:// sebelum nama file. Diperlukan dalam perintah ini.

    aws deploy create-deployment-group --cli-input-json file://filename.json

    Di akhir proses pembuatan, Anda menerima pesan pemberitahuan pengujian yang menunjukkan izin dan detail pemicu diatur dengan benar.

Untuk membuat pemicu untuk mengirim pemberitahuan untuk grup penyebaran yang ada

Untuk menggunakan AWS CLI untuk menambahkan pemicu CodeDeploy peristiwa ke grup penyebaran yang ada, buat file JSON untuk memperbarui grup penyebaran, lalu jalankan update-deployment-groupperintah menggunakan opsi. --cli-input-json

Cara termudah untuk membuat file JSON adalah dengan menjalankan get-deployment-group perintah untuk mendapatkan salinan konfigurasi grup penyebaran, dalam format JSON, dan kemudian memperbarui nilai parameter dalam editor teks biasa.

  1. Jalankan perintah berikut, lalu salin hasilnya ke editor teks biasa.

    aws deploy get-deployment-group --application-name application --deployment-group-name deployment-group
  2. Hapus yang berikut dari output:

    • Di awal output, hapus{ "deploymentGroupInfo":.

    • Di akhir output, hapus}.

    • Hapus baris yang berisideploymentGroupId.

    • Hapus baris yang berisideploymentGroupName.

    Isi file teks Anda sekarang akan terlihat mirip dengan yang berikut ini:

    { "applicationName": "TestApp-us-east-2", "deploymentConfigName": "CodeDeployDefault.OneAtATime", "autoScalingGroups": [], "ec2TagFilters": [ { "Type": "KEY_AND_VALUE", "Value": "Project-ABC", "Key": "Name" } ], "triggerConfigurations": [], "serviceRoleArn": "arn:aws:iam::444455556666:role/AnyCompany-service-role", "onPremisesInstanceTagFilters": [] }
  3. Di triggerConfigurations bagian ini, tambahkan data untuktriggerEvents,triggerTargetArn, dan triggerName parameter. Untuk informasi tentang parameter konfigurasi pemicu, lihat TriggerConfig.

    Isi file teks Anda sekarang harus terlihat mirip dengan yang berikut ini. Kode ini meminta pemberitahuan untuk dikirim setiap kali penerapan dimulai, berhasil, atau gagal.

    { "applicationName": "TestApp-us-east-2", "deploymentConfigName": "CodeDeployDefault.OneAtATime", "autoScalingGroups": [], "ec2TagFilters": [ { "Type": "KEY_AND_VALUE", "Value": "Project-ABC", "Key": "Name" } ], "triggerConfigurations": [ { "triggerEvents": [ "DeploymentStart", "DeploymentSuccess", "DeploymentFailure" ], "triggerTargetArn": "arn:aws:sns:us-east-2:444455556666:us-east-deployments", "triggerName": "Trigger-group-us-east-2" } ], "serviceRoleArn": "arn:aws:iam::444455556666:role/AnyCompany-service-role", "onPremisesInstanceTagFilters": [] }
  4. Simpan pembaruan Anda sebagai file JSON, lalu jalankan update-deployment-groupperintah menggunakan --cli-input-json opsi. Pastikan untuk menyertakan --current-deployment-group-name opsi dan mengganti nama file JSON Anda dengan nama file:

    penting

    Pastikan untuk menyertakan file:// sebelum nama file. Diperlukan dalam perintah ini.

    aws deploy update-deployment-group --current-deployment-group-name deployment-group-name --cli-input-json file://filename.json

    Di akhir proses pembuatan, Anda menerima pesan pemberitahuan pengujian yang menunjukkan izin dan detail pemicu diatur dengan benar.