

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
<a name="monitoring-sns-event-notifications-create-trigger"></a>

Anda dapat membuat pemicu yang menerbitkan topik Amazon Simple Notification Service (Amazon SNS) untuk penyebaran atau kejadian instans. 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](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html). Saat Anda membuat topik, kami sarankan Anda memberinya nama yang mengidentifikasi tujuannya, dalam format seperti `Topic-group-us-west-3-deploy-fail` atau`Topic-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](monitoring-sns-event-notifications-permisssions.md).

Setelah Anda membuat topik, Anda dapat menambahkan pelanggan. Untuk informasi tentang membuat, mengelola, dan berlangganan topik, lihat [Apa itu Layanan Pemberitahuan Sederhana Amazon](https://docs.aws.amazon.com/sns/latest/dg/welcome.html).



## Buat pemicu untuk mengirim pemberitahuan untuk CodeDeploy acara (konsol)
<a name="monitoring-sns-event-notifications-create-trigger-console"></a>

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 Konsol Manajemen AWS, buka AWS CodeDeploy konsol.

1. Masuk ke Konsol Manajemen AWS dan buka CodeDeploy konsol di [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy).
**catatan**  
Masuk dengan pengguna yang sama dengan yang Anda atur[Memulai dengan CodeDeploy](getting-started-codedeploy.md).

1. **Di panel navigasi, perluas **Deploy**, lalu pilih Applications.**

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

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

1.  Pilih **Edit**. 

1.  Perluas **Lanjutan - opsional**. 

1.  Di area **Pemicu**, pilih **Buat pemicu**. 

1. 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` atau`Trigger-group-eu-central-instance-stop`.

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

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

   1.  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. 

1.  Pilih **Simpan perubahan**. 

## Buat pemicu untuk mengirim notifikasi untuk CodeDeploy acara (CLI)
<a name="monitoring-sns-event-notifications-create-trigger-cli"></a>

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
<a name="monitoring-sns-event-notifications-create-trigger-cli-new"></a>

Buat file JSON untuk mengonfigurasi grup penyebaran, lalu jalankan [create-deployment-group](https://docs.aws.amazon.com/cli/latest/reference/deploy/create-deployment-group.html)perintah 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
   ```

1. 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": [
                   ""
               ]
           }
       ]
   }
   ```

1. Berikan nilai untuk parameter yang ingin Anda konfigurasikan.

   Saat Anda menggunakan [create-deployment-group](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateDeploymentGroup.html)perintah, 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](getting-started-create-service-role.md).

   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` atau`Trigger-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, pemberitahuan 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 blue/green penerapan)
     + InstanceStart
     + InstanceSuccess
     + InstanceFailure
     + InstanceReady (Hanya berlaku untuk instance pengganti dalam blue/green penerapan)

   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"
               ]
           }
       ]
   }
   ```

1. 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
<a name="monitoring-sns-event-notifications-create-trigger-cli-existing"></a>

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-group](https://docs.aws.amazon.com/cli/latest/reference/deploy/create-deployment-group.html)perintah 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
   ```

1. Hapus yang berikut dari output:
   + Di awal output, hapus`{ "deploymentGroupInfo":`.
   + Di akhir output, hapus`}`. 
   + Hapus baris yang berisi`deploymentGroupId`.
   + Hapus baris yang berisi`deploymentGroupName`.

   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": []
   }
   ```

1. Di `triggerConfigurations` bagian ini, tambahkan data untuk`triggerEvents`,`triggerTargetArn`, dan `triggerName` parameter. Untuk informasi tentang parameter konfigurasi pemicu, lihat [TriggerConfig](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_TriggerConfig.html).

   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": []
   }
   ```

1. Simpan pembaruan Anda sebagai file JSON, lalu jalankan [update-deployment-group](https://docs.aws.amazon.com/cli/latest/reference/deploy/create-deployment-group.html)perintah menggunakan `--cli-input-json` opsi. Pastikan untuk menyertakan `--current-deployment-group-name` opsi dan mengganti nama file JSON Anda untuk*filename*: 
**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.