CodePipeline referensi struktur pipa - AWS CodePipeline

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

CodePipeline referensi struktur pipa

Secara default, setiap pipeline yang berhasil Anda buatAWS CodePipeline memiliki struktur yang valid. Namun, jika Anda secara manual membuat atau mengedit file JSON untuk membuat pipeline atau memperbarui pipeline dariAWS CLI, Anda mungkin secara tidak sengaja membuat struktur yang tidak valid. Referensi berikut dapat membantu Anda lebih memahami persyaratan untuk struktur pipa Anda dan cara memecahkan masalah. Lihat kendala diQuotaAWSCodePipeline, yang berlaku untuk semua jaringan pipa.

Jenis tindakan yang valid dan penyedia di CodePipeline

Format struktur pipa digunakan untuk membangun tindakan dan tahapan dalam pipa. Jenis tindakan terdiri dari kategori tindakan dan jenis penyedia.

Berikut ini adalah kategori tindakan yang valid di CodePipeline:

  • Sumber

  • Membangun

  • Tes

  • Deploy

  • Persetujuan

  • Panggil

Setiap kategori tindakan memiliki seperangkat penyedia yang ditunjuk. Setiap penyedia tindakan, seperti Amazon S3, memiliki nama penyedia, sepertiS3, yang harus digunakan diProvider bidang dalam kategori tindakan dalam struktur pipeline Anda.

Ada tiga nilai yang valid untukOwner bidang di bagian kategori tindakan dalam struktur alur Anda:AWSThirdParty, danCustom.

Untuk menemukan nama penyedia dan informasi pemilik untuk penyedia tindakan Anda, lihatReferensi struktur atauJumlah artefak input dan output untuk setiap tipe aksi.

Tabel ini mencantumkan penyedia yang valid berdasarkan tipe tindakan.

catatan

Untuk tindakan Bitbucket GitHub,, atau GitHub Enterprise Server, lihat topik referensiCodeStarSourceConnection untuk Bitbucket, GitHub, dan GitHub Tindakan Server Enterprise tindakan.

Penyedia tindakan yang valid berdasarkan jenis tindakan
Kategori tindakan Penyedia tindakan yang valid Referensi tindakan
Sumber Amazon S3 Tindakan sumber Amazon S3
Amazon ECR Amazon ECR
CodeCommit CodeCommit
CodeStarSourceConnection (untuk Bitbucket, GitHub, tindakan GitHub Enterprise Server) CodeStarSourceConnection untuk Bitbucket, GitHub, dan GitHub Tindakan Server Enterprise
Membangun CodeBuild AWS CodeBuild
Kustom CloudBees Jumlah artefak input dan output untuk setiap tipe aksi
Jenkins Kustom Jumlah artefak input dan output untuk setiap tipe aksi
Kustom TeamCity Jumlah artefak input dan output untuk setiap tipe aksi
Tes CodeBuild AWS CodeBuild
AWS Device Farm Jumlah artefak input dan output untuk setiap tipe aksi
Kustom BlazeMeter Jumlah artefak input dan output untuk setiap tipe aksi
ThirdParty GhostInspector Jumlah artefak input dan output untuk setiap tipe aksi
Jenkins Kustom Jumlah artefak input dan output untuk setiap tipe aksi
ThirdParty StormRunner Beban Fokus Mikro Jumlah artefak input dan output untuk setiap tipe aksi
ThirdParty Nouvola Jumlah artefak input dan output untuk setiap tipe aksi
ThirdParty Runscope Jumlah artefak input dan output untuk setiap tipe aksi
Deploy Amazon S3 Tindakan deploy Amazon S3
AWS CloudFormation AWS CloudFormation
CodeDeploy Jumlah artefak input dan output untuk setiap tipe aksi
Amazon ECS Jumlah artefak input dan output untuk setiap tipe aksi
Amazon ECS (Biru/Hijau) (ini adalahCodeDeployToECS tindakan) Jumlah artefak input dan output untuk setiap tipe aksi
Elastic Beanstalk Jumlah artefak input dan output untuk setiap tipe aksi
AWS AppConfig AWSAppConfig
AWS OpsWorks Jumlah artefak input dan output untuk setiap tipe aksi
Service Service Catalog Service Catalog Jumlah artefak input dan output untuk setiap tipe aksi
Amazon Alexa Jumlah artefak input dan output untuk setiap tipe aksi
Kustom XebiaLabs Jumlah artefak input dan output untuk setiap tipe aksi
Persetujuan Manual Jumlah artefak input dan output untuk setiap tipe aksi
Panggil AWS Lambda AWS Lambda
AWS Step Functions AWS Step Functions

Beberapa jenis tindakan di CodePipeline tersedia diAWS Daerah tertentu saja. Ada kemungkinan bahwa jenis tindakan tersedia diAWS Wilayah, tetapiAWS penyedia untuk jenis tindakan tersebut tidak tersedia.

Untuk informasi lebih lanjut tentang setiap penyedia tindakan, lihatIntegrasi dengan tipe CodePipeline aksi.

Bagian berikut memberikan contoh untuk informasi penyedia dan properti konfigurasi untuk setiap jenis tindakan.

Persyaratan struktur pipa dan tahap di CodePipeline

Pipa dua tahap memiliki struktur dasar berikut:

{ "roleArn": "An IAM ARN for a service role, such as arn:aws:iam::80398EXAMPLE:role/CodePipeline_Service_Role", "stages": [ { "name": "SourceStageName", "actions": [ ... See Persyaratan struktur tindakan di CodePipeline ... ] }, { "name": "NextStageName", "actions": [ ... See Persyaratan struktur tindakan di CodePipeline ... ] } ], "artifactStore": { "type": "S3", "location": "The name of the Amazon S3 bucket automatically generated for you the first time you create a pipeline using the console, such as codepipeline-us-east-2-1234567890, or any Amazon S3 bucket you provision for this purpose" }, "name": "YourPipelineName", "version": 1 }

Struktur alur memiliki persyaratan sebagai berikut:

  • Sebuah alur harus berisi setidaknya dua tahap.

  • Tahap pertama dari pipa harus berisi setidaknya satu tindakan sumber. Ini hanya dapat berisi tindakan sumber.

  • Hanya tahap pertama dari pipa yang dapat berisi tindakan sumber.

  • Setidaknya satu tahap di setiap pipa harus berisi tindakan yang bukan merupakan tindakan sumber.

  • Semua nama panggung dalam pipa harus unik.

  • Nama panggung tidak dapat diedit di CodePipeline konsol. Jika Anda mengedit nama panggung dengan menggunakanAWS CLI, dan tahap berisi tindakan dengan satu atau lebih parameter rahasia (seperti token OAuth), nilai parameter rahasia tersebut tidak dipertahankan. Anda harus memasukkan nilai parameter secara manual (yang ditutupi oleh empat tanda bintang di JSON yang dikembalikan olehAWS CLI) dan memasukkannya ke dalam struktur JSON.

  • artifactStoreBidang berisi artefak ember jenis dan lokasi untuk pipa dengan semua tindakan diAWS Wilayah yang sama. Jika Anda menambahkan tindakan di Wilayah yang berbeda dari pipeline Anda,artifactStores pemetaan digunakan untuk mencantumkan bucket artefak untuk setiapAWS Wilayah tempat tindakan dijalankan. Saat Anda membuat atau mengedit pipeline, Anda harus memiliki ember artefak di Wilayah pipa dan kemudian Anda harus memiliki satu ember artefak per Wilayah di mana Anda berencana untuk melakukan tindakan.

    Contoh berikut menunjukkan struktur dasar untuk pipa dengan tindakan lintas wilayah yang menggunakanartifactStores parameter:

    "pipeline": { "name": "YourPipelineName", "roleArn": "CodePipeline_Service_Role", "artifactStores": { "us-east-1": { "type": "S3", "location": "S3 artifact bucket name, such as codepipeline-us-east-1-1234567890" }, "us-west-2": { "type": "S3", "location": "S3 artifact bucket name, such as codepipeline-us-west-2-1234567890" } }, "stages": [ { ...
  • Bidang metadata pipeline berbeda dari struktur pipa dan tidak dapat diedit. Saat Anda memperbarui pipeline, tanggal di bidangupdated metadata akan berubah secara otomatis.

  • Saat Anda mengedit atau memperbarui pipeline, nama pipeline tidak dapat diubah.

    catatan

    Jika Anda ingin mengganti nama pipeline yang ada, Anda dapat menggunakanget-pipeline perintah CLI untuk membuat file JSON yang berisi struktur pipeline Anda. Anda kemudian dapat menggunakancreate-pipeline perintah CLI untuk membuat pipeline dengan struktur itu dan memberinya nama baru.

Nomor versi pipeline dibuat dan diperbarui secara otomatis setiap kali Anda memperbarui pipeline.

Persyaratan struktur tindakan di CodePipeline

Sebuah tindakan memiliki struktur tingkat tinggi berikut:

[ { "inputArtifacts": [ An input artifact structure, if supported for the action category ], "name": "ActionName", "region": "Region", "namespace": "source_namespace", "actionTypeId": { "category": "An action category", "owner": "AWS", "version": "1" "provider": "A provider type for the action category", }, "outputArtifacts": [ An output artifact structure, if supported for the action category ], "configuration": { Configuration details appropriate to the provider type }, "runOrder": A positive integer that indicates the run order within the stage, } ]

Untuk daftarconfiguration detail contoh yang sesuai dengan jenis penyedia, lihatDetail konfigurasi berdasarkan jenis penyedia.

Struktur tindakan memiliki persyaratan sebagai berikut:

  • Semua nama tindakan dalam suatu tahap harus unik.

  • Artefak input suatu tindakan harus sama persis dengan artefak output yang dinyatakan dalam tindakan sebelumnya. Misalnya, jika tindakan sebelumnya mencakup deklarasi berikut:

    "outputArtifacts": [ { "MyApp" } ],

    dan tidak ada artefak keluaran lainnya, maka artefak masukan dari tindakan berikut harus:

    "inputArtifacts": [ { "MyApp" } ],

    Hal ini berlaku untuk semua tindakan, apakah mereka berada dalam tahap yang disediakan artefak output, tetapi artefak input tidak harus menjadi tindakan berikutnya dalam urutan berikutnya dari tindakan yang menyediakan artefak output. Tindakan secara parallel dapat menyatakan bundel output yang berbeda, yang, pada gilirannya, dikonsumsi oleh tindakan berikut yang berbeda.

  • Nama artefak output harus unik dalam alur. Misalnya, pipeline dapat menyertakan satu tindakan yang memiliki artefak keluaran bernama"MyApp" dan tindakan lain yang memiliki artefak keluaran bernama"MyBuiltApp". Namun, pipeline tidak dapat menyertakan dua tindakan yang keduanya memiliki artefak keluaran bernama"MyApp".

  • Tindakan Lintas Wilayah menggunakanRegion bidang untuk menunjukAWS Wilayah tempat tindakan dibuat. AWSSumber daya yang dibuat untuk tindakan ini harus dibuat di Wilayah yang sama yang disediakan diregion bidang. Anda tidak dapat membuat tindakan lintas wilayah untuk jenis tindakan berikut:

    • Tindakan sumber

    • Tindakan oleh penyedia pihak ketiga

    • Tindakan oleh penyedia kustom

  • Tindakan dapat dikonfigurasi dengan variabel. Anda menggunakannamespace bidang untuk mengatur namespace dan informasi variabel untuk variabel eksekusi. Untuk informasi referensi tentang variabel eksekusi dan variabel keluaran tindakan, lihatVariabel.

  • Untuk semua jenis tindakan yang didukung saat ini, satu-satunya string pemilik yang valid adalahAWS,ThirdParty, atauCustom. Untuk informasi lebih lanjut, lihat Referensi API CodePipeline .

  • runOrderNilai default untuk tindakan adalah 1. Nilai harus berupa bilangan bulat positif (bilangan asli). Anda tidak dapat menggunakan pecahan, desimal, angka negatif, atau nol. Untuk menentukan urutan tindakan serial, gunakan angka terkecil untuk tindakan pertama dan angka yang lebih besar untuk masing-masing tindakan lainnya secara berurutan. Untuk menentukan tindakan parallel, gunakan bilangan bulat yang sama untuk setiap tindakan yang ingin Anda jalankan secara parallel. Di konsol, Anda dapat menentukan urutan serial untuk tindakan dengan memilih Tambahkan grup tindakan pada tingkat di tahap di mana Anda ingin menjalankannya, atau Anda dapat menentukan urutan parallel dengan memilih Tambahkan tindakan. Kelompok tindakan mengacu pada urutan lari dari satu atau lebih tindakan pada tingkat yang sama.

    Misalnya, jika Anda ingin tiga tindakan dijalankan secara berurutan dalam satu tahap, Anda akan memberikan tindakan pertamarunOrder nilai 1, tindakan keduarunOrder nilai 2, dan ketigarunOrder nilai 3. Namun, jika Anda ingin tindakan kedua dan ketiga berjalan secara parallel, Anda akan memberikan tindakan pertamarunOrder nilai 1 dan kedua dan ketiga tindakanrunOrder nilai 2.

    catatan

    Penomoran tindakan serial tidak harus dalam urutan yang ketat. Misalnya, jika Anda memiliki tiga tindakan secara berurutan dan memutuskan untuk menghapus tindakan kedua, Anda tidak perlu menyebutkan ulangrunOrder nilai tindakan ketiga. KarenarunOrder nilai tindakan itu (3) lebih tinggi darirunOrder nilai tindakan pertama (1), itu berjalan secara serial setelah tindakan pertama di panggung.

  • Saat Anda menggunakan bucket Amazon S3 sebagai lokasi penerapan, Anda juga menentukan kunci objek. Kunci objek dapat berupa nama file (objek) atau kombinasi awalan (path folder) dan nama file. Anda dapat menggunakan variabel untuk menentukan nama lokasi yang ingin digunakan pipeline. Tindakan penerapan Amazon S3 mendukung penggunaan variabel berikut di kunci objek Amazon S3.

    Menggunakan variabel di Amazon S3
    Variabel Contoh input konsol Output
    datetime js-aplikasi/ {datetime} .zip Stempel waktu UTC dalam format ini: <YYY>- < MM> - DD> _ < HH> - < MM>-< SS>

    Contoh:

    js-application/2019-01-10_07-39-57.zip

    uuid js-aplikasi/ {uuid} .zip UUID adalah pengenal unik global yang dijamin berbeda dari pengenal lainnya. UUID dalam format ini (semua digit dalam format heksadesimal): <8-digit>- <4-digit>- 4-digit> -< 4-digit> - < 12-digit>

    Contoh:

    js-application/54a60075-b96a-4bf3-9013-db3a9EXAMPLE.zip

  • Ini adalahactionTypeId kategori yang valid untuk CodePipeline:

    • Source

    • Build

    • Approval

    • Deploy

    • Test

    • Invoke

    Beberapa jenis penyedia dan opsi konfigurasi disediakan di sini.

  • Jenis penyedia yang valid untuk kategori tindakan bergantung pada kategori. Misalnya, untuk jenis tindakan sumber, jenis penyedia yang valid adalahS3,GitHub,CodeCommit, atauAmazon ECR. Contoh ini menunjukkan struktur untuk tindakan sumber denganS3 penyedia:

    "actionTypeId": { "category": "Source", "owner": "AWS", "version": "1", "provider": "S3"},
  • Setiap tindakan harus memiliki konfigurasi tindakan yang valid, yang bergantung pada jenis penyedia untuk tindakan tersebut. Tabel berikut mencantumkan elemen konfigurasi tindakan yang diperlukan untuk setiap jenis penyedia yang valid:

    Properti konfigurasi tindakan untuk jenis penyedia
    Nama penyedia Nama penyedia dalam tipe aksi Properti konfigurasi Properti yang dibutuhkan?
    Amazon S3 (Menyebarkan penyedia tindakan) Untuk informasi selengkapnya, termasuk contoh yang terkait dengan parameter tindakan penerapan Amazon S3, lihatTindakan deploy Amazon S3.
    Amazon S3 (Penyedia tindakan sumber) Untuk informasi selengkapnya, termasuk contoh yang terkait dengan parameter tindakan sumber Amazon S3, lihatTindakan sumber Amazon S3.
    Amazon ECR Untuk informasi selengkapnya, termasuk contoh yang terkait dengan parameter Amazon ECR, lihatAmazon ECR.
    CodeCommit Untuk informasi selengkapnya, termasuk contoh yang terkait dengan CodeCommit parameter, lihatCodeCommit.
    GitHub Untuk informasi selengkapnya, termasuk contoh yang terkait dengan GitHub parameter, lihatGitHub referensi struktur aksi sumber versi 1.
    AWS CloudFormation Untuk informasi selengkapnya, termasuk contoh yang terkait denganAWS CloudFormation parameter, lihatAWS CloudFormation.
    CodeBuild Untuk deskripsi lebih lanjut dan contoh yang terkait dengan CodeBuild parameter, lihatAWS CodeBuild.
    CodeDeploy Untuk deskripsi lebih lanjut dan contoh yang terkait dengan CodeDeploy parameter, lihatAWS CodeDeploy.
    AWS Device Farm Untuk deskripsi lebih lanjut dan contoh yang terkait denganAWS Device Farm parameter, lihatAWS Device Farm.
    AWS Elastic Beanstalk ElasticBeanstalk ApplicationName Diperlukan
    EnvironmentName Diperlukan
    AWS Lambda Untuk informasi selengkapnya, termasuk contoh yang terkait denganAWS Lambda parameter, lihatAWS Lambda.
    AWS OpsWorks Stacks OpsWorks Stack Diperlukan
    Layer Opsional
    App Diperlukan
    Amazon ECS Untuk deskripsi dan contoh selengkapnya yang terkait dengan parameter Amazon ECS, lihatAmazon Elastic Container Service.
    Amazon ECS dan CodeDeploy (Biru/Hijau) Untuk deskripsi dan contoh selengkapnya yang terkait dengan Amazon ECS dan parameter CodeDeploy biru/hijau, lihatLayanan Wadah Amazon Elastic CodeDeploy biru-hijau.
    Service Service Catalog Service Catalog ServiceCatalog TemplateFilePath Diperlukan
    ProductVersionName Diperlukan
    ProductType Diperlukan
    ProductVersionDescription Opsional
    ProductId Diperlukan
    Alexa Skills Kit AlexaSkillsKit ClientId Diperlukan
    ClientSecret Diperlukan
    RefreshToken Diperlukan
    SkillId Diperlukan
    Jenkins Nama tindakan yang Anda berikan di CodePipeline Plugin untuk Jenkins (misalnya, MyJenkinsProviderName) ProjectName Diperlukan
    Persetujuan Manual Manual CustomData Opsional
    ExternalEntityLink Opsional
    NotificationArn Opsional

Jumlah artefak input dan output untuk setiap tipe aksi

Bergantung pada tipe aksi, Anda dapat memiliki jumlah artefak input dan output berikut:

Kendala tipe aksi untuk artefak
Pemilik Jenis tindakan Penyedia Jumlah artefak input yang valid Jumlah artefak output yang valid
AWS Sumber Amazon S3 0 1
AWS Sumber CodeCommit 0 1
AWS Sumber Amazon ECR 0 1
ThirdParty Sumber GitHub 0 1
AWS Membangun CodeBuild 1 hingga 5 0 hingga 5
AWS Tes CodeBuild 1 hingga 5 0 hingga 5
AWS Tes AWS Device Farm 1 0
AWS Persetujuan Manual 0 0
AWS Deploy Amazon S3 1 0
AWS Deploy AWS CloudFormation 0 hingga 10 0 sampai 1
AWS Deploy CodeDeploy 1 0
AWS Deploy AWS Elastic Beanstalk 1 0
AWS Deploy AWS OpsWorks Stacks 1 0
AWS Deploy Amazon ECS 1 0
AWS Deploy Service Service Catalog Service Catalog 1 0
AWS Panggil AWS Lambda 0 hingga 5 0 hingga 5
ThirdParty Deploy Alexa Skills Kit 1 hingga 2 0
Custom Membangun Jenkins 0 hingga 5 0 hingga 5
Custom Tes Jenkins 0 hingga 5 0 hingga 5
Custom Kategori yang didukung Seperti yang ditentukan dalam tindakan kustom 0 hingga 5 0 hingga 5

Pengaturan default untuk PollForSourceChanges parameter

DefaultPollForSourceChanges parameter ditentukan oleh metode yang digunakan untuk membuat pipeline, seperti yang dijelaskan dalam tabel berikut. Dalam banyak kasus,PollForSourceChanges parameter default ke true dan harus dinonaktifkan.

KetikaPollForSourceChanges parameter default menjadi true, Anda harus melakukan hal berikut:

  • TambahkanPollForSourceChanges parameter ke file atauAWS CloudFormation template JSON.

  • Buat sumber daya deteksi perubahan (AturanCloudWatch peristiwa, sebagaimana berlaku).

  • MengaturPollForSourceChanges parameter ke false.

    catatan

    Jika Anda membuat aturan CloudWatch Acara atau webhook, Anda harus menetapkan parameter ke false untuk menghindari memicu pipeline lebih dari satu kali.

    PollForSourceChangesParameter tidak digunakan untuk tindakan sumber Amazon ECR.

  • PollForSourceChanges default parameter
    Sumber Metode pembuatan Contoh “konfigurasi” output struktur JSON
    CodeCommit Pipeline dibuat dengan konsol (dan mengubah sumber daya deteksi dibuat oleh konsol). Parameter ditampilkan dalam output struktur pipa dan default kefalse.
    BranchName": "main", "PollForSourceChanges": "false", "RepositoryName": "my-repo"
    Pipeline dibuat dengan CLI atauAWS CloudFormation, danPollForSourceChanges parameter tidak ditampilkan dalam output JSON, tetapi set ketrue
    BranchName": "main", "RepositoryName": "my-repo"
    Amazon S3 Pipeline dibuat dengan konsol (dan mengubah sumber daya deteksi dibuat oleh konsol). Parameter ditampilkan dalam output struktur pipa dan default kefalse.
    "S3Bucket": "my-bucket", "S3ObjectKey": "object.zip", "PollForSourceChanges": "false"
    Pipeline dibuat dengan CLI atauAWS CloudFormation, danPollForSourceChanges parameter tidak ditampilkan dalam output JSON, tetapi set ketrue
    "S3Bucket": "my-bucket", "S3ObjectKey": "object.zip"
    GitHub Pipeline dibuat dengan konsol (dan mengubah sumber daya deteksi dibuat oleh konsol). Parameter ditampilkan dalam output struktur pipa dan default kefalse.
    "Owner": "MyGitHubAccountName", "Repo": "MyGitHubRepositoryName" "PollForSourceChanges": "false", "Branch": "main" "OAuthToken": "****"
    Pipeline dibuat dengan CLI atauAWS CloudFormation, danPollForSourceChanges parameter tidak ditampilkan dalam output JSON, tetapi set ketrue
    "Owner": "MyGitHubAccountName", "Repo": "MyGitHubRepositoryName", "Branch": "main", "OAuthToken": "****"

    ² JikaPollForSourceChanges telah ditambahkan pada setiap titik ke struktur JSON atauAWS CloudFormation template, itu akan ditampilkan seperti yang ditunjukkan:

    "PollForSourceChanges": "true",

    ³ Untuk informasi tentang sumber daya deteksi perubahan yang berlaku untuk setiap penyedia sumber, lihat Mengubah Metode Deteksi.

Detail konfigurasi berdasarkan jenis penyedia

Bagian ini mencantumkanconfiguration parameter yang valid untuk setiap penyedia tindakan.

Contoh berikut menunjukkan konfigurasi yang valid untuk tindakan deploy yang menggunakan Service Catalog, untuk pipeline yang dibuat di konsol tanpa file konfigurasi terpisah:

"configuration": { "TemplateFilePath": "S3_template.json", "ProductVersionName": "devops S3 v2", "ProductType": "CLOUD_FORMATION_TEMPLATE", "ProductVersionDescription": "Product version description", "ProductId": "prod-example123456" }

Contoh berikut menunjukkan konfigurasi yang valid untuk tindakan deploy yang menggunakan Service Catalog, untuk pipeline yang dibuat di konsol dengan filesample_config.json konfigurasi terpisah:

"configuration": { "ConfigurationFilePath": "sample_config.json", "ProductId": "prod-example123456" }

Contoh berikut menunjukkan konfigurasi yang valid untuk tindakan deploy yang menggunakan Alexa Skills Kit:

"configuration": { "ClientId": "amzn1.application-oa2-client.aadEXAMPLE", "ClientSecret": "****", "RefreshToken": "****", "SkillId": "amzn1.ask.skill.22649d8f-0451-4b4b-9ed9-bfb6cEXAMPLE" }

Contoh berikut menunjukkan konfigurasi yang valid untuk persetujuan manual:

"configuration": { "CustomData": "Comments on the manual approval", "ExternalEntityLink": "http://my-url.com", "NotificationArn": "arn:aws:sns:us-west-2:12345EXAMPLE:Notification" }