Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Tindakan “Terapkan ke Amazon ECS” definisi YAMAL
Berikut ini adalah definisi YAMAL dari tindakan Deploy to Amazon ECS. Untuk mempelajari cara menggunakan tindakan ini, lihatMenyebarkan aplikasi ke Amazon Elastic Container Service (ECS) dengan alur kerja.
Definisi tindakan ini ada sebagai bagian dalam file definisi alur kerja yang lebih luas. Untuk informasi selengkapnya tentang file ini, lihatAlur kerja definisi YAMAL.
catatan
Sebagian besar properti YAMAL yang mengikuti memiliki elemen UI yang sesuai di editor visual. Untuk mencari elemen UI, gunakan Ctrl+F. Elemen akan terdaftar dengan properti YAMLnya yang terkait.
# The workflow definition starts here.
# See Properti tingkat atas for details.
Name: MyWorkflow
SchemaVersion: 1.0
Actions:
# The action definition starts here.
ECSDeployAction_nn
:
Identifier: aws/ecs-deploy@v1
DependsOn:
- build-action
Compute:
Type: EC2 | Lambda
Fleet: fleet-name
Timeout: timeout-minutes
Environment:
Name: environment-name
Connections:
- Name: account-connection-name
Role: DeployToECS
Inputs:
# Specify a source or an artifact, but not both.
Sources:
- source-name-1
Artifacts:
- task-definition-artifact
Configuration:
region: us-east-1
cluster: ecs-cluster
service: ecs-service
task-definition: task-definition-path
force-new-deployment: false|true
codedeploy-appspec: app-spec-file-path
codedeploy-application: application-name
codedeploy-deployment-group: deployment-group-name
codedeploy-deployment-description: deployment-description
ECSDeployAction
(Diperlukan)
Tentukan nama tindakan. Semua nama tindakan harus unik dalam alur kerja. Nama aksi terbatas pada karakter alfanumerik (a-z, A-Z, 0-9), tanda hubung (-), dan garis bawah (_). Spasi tidak diizinkan. Anda tidak dapat menggunakan tanda kutip untuk mengaktifkan karakter dan spasi khusus dalam nama tindakan.
Default: ECSDeployAction_nn
.
UI yang sesuai: Tab konfigurasi/Nama tampilan tindakan
Identifier
(ECSDeployAction
/Identifier)
(Diperlukan)
Mengidentifikasi tindakan. Jangan mengubah properti ini kecuali Anda ingin mengubah versi. Untuk informasi selengkapnya, lihat Menentukan versi mayor, minor, atau patch dari suatu tindakan.
Default: aws/ecs-deploy@v1
.
UI yang sesuai: Diagram alur kerja/ECS _nn/ DeployAction aws/ecs-deploy @v1 label
DependsOn
(ECSDeployAction
/DependsOn)
(Opsional)
Tentukan tindakan, grup tindakan, atau gerbang yang harus berjalan dengan sukses agar tindakan ini berjalan.
Untuk informasi selengkapnya tentang fungsionalitas 'tergantung pada', lihat. Mengkonfigurasi tindakan untuk bergantung pada tindakan lain
UI yang sesuai: Tab masukan/Tergantung pada - opsional
Compute
(ECSDeployAction
/Compute)
(Opsional)
Mesin komputasi yang digunakan untuk menjalankan tindakan alur kerja Anda. Anda dapat menentukan komputasi baik di tingkat alur kerja atau di tingkat tindakan, tetapi tidak keduanya. Ketika ditentukan pada tingkat alur kerja, konfigurasi komputasi berlaku untuk semua tindakan yang ditentukan dalam alur kerja. Pada tingkat alur kerja, Anda juga dapat menjalankan beberapa tindakan pada instance yang sama. Untuk informasi selengkapnya, lihat Berbagi komputasi di seluruh tindakan.
UI yang sesuai: tidak ada
Type
(ECSDeployAction
/Compute/Type)
(Diperlukan Compute jika disertakan)
Jenis mesin komputasi. Anda dapat menggunakan salah satu nilai berikut:
-
EC2 (editor visual) atau
EC2
(editor YAMG)Dioptimalkan untuk fleksibilitas selama aksi berjalan.
-
Lambda (editor visual) atau
Lambda
(editor YAMG)Kecepatan start-up aksi yang dioptimalkan.
Untuk informasi selengkapnya tentang jenis komputasi, lihatJenis komputasi.
UI yang sesuai: Tab Konfigurasi/Tingkat Lanjut - opsional/Jenis komputasi
Fleet
(ECSDeployAction
/Compute/Fleet)
(Opsional)
Tentukan mesin atau armada yang akan menjalankan alur kerja atau tindakan alur kerja Anda. Dengan armada sesuai permintaan, ketika suatu tindakan dimulai, alur kerja menyediakan sumber daya yang dibutuhkan, dan mesin dihancurkan ketika tindakan selesai. Contoh armada sesuai permintaan:Linux.x86-64.Large
,. Linux.x86-64.XLarge
Untuk informasi lebih lanjut tentang armada sesuai permintaan, lihat. Properti armada sesuai permintaan
Dengan armada yang disediakan, Anda mengonfigurasi satu set mesin khusus untuk menjalankan tindakan alur kerja Anda. Mesin-mesin ini tetap menganggur, siap untuk memproses tindakan segera. Untuk informasi selengkapnya tentang armada yang disediakan, lihat. Properti armada yang disediakan
Jika Fleet
dihilangkan, defaultnya adalah. Linux.x86-64.Large
UI yang sesuai: Tab Konfigurasi/Advanced - armada opsional/Komputasi
Timeout
(ECSDeployAction
/Timeout)
(Opsional)
Tentukan jumlah waktu dalam menit (editor YAMAL), atau jam dan menit (editor visual), bahwa tindakan dapat berjalan sebelum CodeCatalyst mengakhiri tindakan. Minimal adalah 5 menit dan maksimum dijelaskan dalamKuota untuk alur kerja. Batas waktu default sama dengan batas waktu maksimum.
UI yang sesuai: Tab konfigurasi/Timeout - opsional
Environment
(ECSDeployAction
/Environment)
(Diperlukan)
Tentukan CodeCatalyst lingkungan yang akan digunakan dengan tindakan.
Untuk informasi lebih lanjut tentang lingkungan, lihat Menyebarkan ke dalam Akun AWS dan VPC dengan lingkungan CodeCatalyst danPembuatan lingkungan.
UI yang sesuai: Tab Konfigurasi/'lingkungan/akun/peran'/Lingkungan
Name
(ECSDeployAction
/Environment/Name)
(Diperlukan Environment jika disertakan)
Tentukan nama lingkungan yang ada yang ingin Anda kaitkan dengan tindakan.
UI yang sesuai: Tab Konfigurasi/'lingkungan/akun/peran'/Lingkungan
Connections
(ECSDeployAction
/Environment/Connections)
(Diperlukan Environment jika disertakan)
Tentukan koneksi akun untuk dikaitkan dengan tindakan. Anda dapat menentukan maksimum satu koneksi akun di bawahEnvironment
.
Untuk informasi selengkapnya tentang koneksi akun, lihatMemungkinkan akses ke AWS sumber daya yang terhubung Akun AWS. Untuk informasi tentang cara mengaitkan koneksi akun dengan lingkungan Anda, lihatPembuatan lingkungan.
UI yang sesuai: Tab konfigurasi/'lingkungan/akun/peran'/koneksi akun AWS
Name
(ECSDeployAction
/Environment/Connections/Name)
(Diperlukan)
Tentukan nama koneksi akun.
UI yang sesuai: Tab konfigurasi/'lingkungan/akun/peran'/koneksi akun AWS
Role
(ECSDeployAction
/Environment/Connections/Role)
(Diperlukan)
Tentukan nama peran IAM yang digunakan tindakan Deploy to Amazon ECS untuk mengakses. AWS Pastikan bahwa peran ini mencakup kebijakan berikut:
-
Kebijakan izin berikut:
Awas
Batasi izin untuk yang ditampilkan dalam kebijakan berikut. Menggunakan peran dengan izin yang lebih luas dapat menimbulkan risiko keamanan.
{ "Version": "2012-10-17", "Statement": [{ "Action":[ "ecs:DescribeServices", "ecs:CreateTaskSet", "ecs:DeleteTaskSet", "ecs:ListClusters", "ecs:RegisterTaskDefinition", "ecs:UpdateServicePrimaryTaskSet", "ecs:UpdateService", "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:DescribeListeners", "elasticloadbalancing:ModifyListener", "elasticloadbalancing:DescribeRules", "elasticloadbalancing:ModifyRule", "lambda:InvokeFunction", "lambda:ListFunctions", "cloudwatch:DescribeAlarms", "sns:Publish", "sns:ListTopics", "s3:GetObject", "s3:GetObjectVersion", "codedeploy:CreateApplication", "codedeploy:CreateDeployment", "codedeploy:CreateDeploymentGroup", "codedeploy:GetApplication", "codedeploy:GetDeployment", "codedeploy:GetDeploymentGroup", "codedeploy:ListApplications", "codedeploy:ListDeploymentGroups", "codedeploy:ListDeployments", "codedeploy:StopDeployment", "codedeploy:GetDeploymentTarget", "codedeploy:ListDeploymentTargets", "codedeploy:GetDeploymentConfig", "codedeploy:GetApplicationRevision", "codedeploy:RegisterApplicationRevision", "codedeploy:BatchGetApplicationRevisions", "codedeploy:BatchGetDeploymentGroups", "codedeploy:BatchGetDeployments", "codedeploy:BatchGetApplications", "codedeploy:ListApplicationRevisions", "codedeploy:ListDeploymentConfigs", "codedeploy:ContinueDeployment" ], "Resource":"*", "Effect":"Allow" },{"Action":[ "iam:PassRole" ], "Effect":"Allow", "Resource":"*", "Condition":{"StringLike":{"iam:PassedToService":[ "ecs-tasks.amazonaws.com", "codedeploy.amazonaws.com" ] } } }] }
catatan
Pertama kali peran digunakan, gunakan wildcard berikut dalam pernyataan kebijakan sumber daya dan kemudian cakup kebijakan dengan nama sumber daya setelah tersedia.
"Resource": "*"
-
Kebijakan kepercayaan khusus berikut:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "codecatalyst-runner.amazonaws.com", "codecatalyst.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
Pastikan peran ini ditambahkan ke koneksi akun Anda. Untuk mempelajari selengkapnya tentang menambahkan peran IAM ke koneksi akun, lihatMenambahkan peran IAM ke koneksi akun.
catatan
Anda dapat menentukan nama CodeCatalystWorkflowDevelopmentRole-
peran di sini, jika Anda mau. Untuk informasi selengkapnya tentang peran ini, silakan lihat Membuat CodeCatalystWorkflowDevelopmentRole-spaceNameperan untuk akun dan ruang Anda. Pahami bahwa spaceName
CodeCatalystWorkflowDevelopmentRole-
peran tersebut memiliki izin yang sangat luas yang dapat menimbulkan risiko keamanan. Kami menyarankan Anda hanya menggunakan peran ini dalam tutorial dan skenario di mana keamanan kurang menjadi perhatian. spaceName
UI yang sesuai: Tab Konfigurasi/'lingkungan/akun/peran'/ Peran
Inputs
(ECSDeployAction
/Inputs)
(Opsional)
Inputs
Bagian ini mendefinisikan data yang ECSDeployAction
dibutuhkan selama menjalankan alur kerja.
catatan
Hanya satu input (baik sumber atau artefak) yang diizinkan per tindakan Deploy ke Amazon ECS.
UI yang sesuai: Tab input
Sources
(ECSDeployAction
/Inputs/Sources)
(Diperlukan jika file definisi tugas Anda disimpan dalam repositori sumber)
Jika file definisi tugas Anda disimpan dalam repositori sumber, tentukan label repositori sumber tersebut. Saat ini, satu-satunya label yang didukung adalahWorkflowSource
.
Jika file definisi tugas Anda tidak terkandung dalam repositori sumber, itu harus berada dalam artefak yang dihasilkan oleh tindakan lain.
Untuk informasi selengkapnya tentang sumber, lihat Menghubungkan alur kerja ke repositori sumber.
UI yang sesuai: Tab/Sumber Input - opsional
Artifacts - input
(ECSDeployAction
/Inputs/Artifacts)
(Diperlukan jika file definisi tugas Anda disimpan dalam artefak keluaran dari tindakan sebelumnya)
Jika file definisi tugas yang ingin Anda terapkan terkandung dalam artefak yang dihasilkan oleh tindakan sebelumnya, tentukan artefak tersebut di sini. Jika file definisi tugas Anda tidak terkandung dalam artefak, itu harus berada di repositori sumber Anda.
Untuk informasi selengkapnya tentang artefak, termasuk contoh, lihatBerbagi data antar tindakan dalam alur kerja menggunakan artefak.
UI yang sesuai: Tab konfigurasi/Artefak - opsional
Configuration
(ECSDeployAction
/Configuration)
(Diperlukan)
Bagian di mana Anda dapat menentukan properti konfigurasi tindakan.
UI yang sesuai: Tab konfigurasi
region
(Configuration/region)
(Diperlukan)
Tentukan AWS Wilayah tempat klaster dan layanan Amazon ECS Anda berada. Untuk daftar kode Wilayah, lihat Titik akhir Regional di. Referensi Umum AWS
UI yang sesuai: Tab konfigurasi/Wilayah
cluster
(ECSDeployAction
/Configuration/cluster)
(Diperlukan)
Tentukan nama cluster Amazon ECS yang ada. Tindakan Deploy to Amazon ECS akan menerapkan aplikasi kontainer Anda sebagai tugas ke dalam klaster ini. Untuk informasi selengkapnya tentang klaster Amazon ECS, lihat Cluster di Panduan Pengembang Layanan Kontainer Elastis Amazon.
UI yang sesuai: Tab konfigurasi/Cluster
service
(ECSDeployAction
/Configuration/service)
(Diperlukan)
Tentukan nama layanan Amazon ECS yang ada yang akan membuat instance file definisi tugas. Layanan ini harus berada di bawah cluster yang ditentukan di cluster
bidang. Untuk informasi selengkapnya tentang layanan Amazon ECS, lihat Layanan Amazon ECS di Panduan Pengembang Layanan Kontainer Elastis Amazon.
UI yang sesuai: Tab konfigurasi/Layanan
task-definition
(ECSDeployAction
/Configuration/task-definition)
(Diperlukan)
Tentukan jalur ke file definisi tugas yang ada. Jika file berada di repositori sumber Anda, jalurnya relatif terhadap folder root repositori sumber. Jika file Anda berada dalam artefak dari tindakan alur kerja sebelumnya, jalurnya relatif terhadap folder root artefak. Untuk informasi selengkapnya tentang file definisi tugas, lihat Definisi tugas di Panduan Pengembang Layanan Kontainer Elastis Amazon.
UI yang sesuai: Tab konfigurasi/Definisi tugas
force-new-deployment
(ECSDeployAction
/Configuration/force-new-deployment)
(Diperlukan)
Jika diaktifkan, layanan Amazon ECS dapat memulai penerapan baru tanpa perubahan definisi layanan. Memaksa penerapan menyebabkan layanan menghentikan semua tugas yang sedang berjalan dan meluncurkan tugas baru. Untuk informasi selengkapnya tentang pemaksaan penerapan baru, lihat Memperbarui layanan di Panduan Pengembang Layanan Amazon Elastic Container.
Default: false
UI yang sesuai: Tab konfigurasi/Paksa penerapan layanan baru
codedeploy-appspec
(ECSDeployAction
/Configuration/codedeploy-appspec)
(Diperlukan jika Anda telah mengonfigurasi layanan Amazon ECS Anda untuk menggunakan penerapan biru/hijau, jika tidak, hilangkan)
Tentukan nama dan jalur ke file spesifikasi CodeDeploy aplikasi (AppSpec) yang ada. File ini harus berada di root repositori CodeCatalyst sumber Anda. Untuk informasi selengkapnya tentang AppSpec file, lihat file spesifikasi CodeDeploy aplikasi (AppSpec) di Panduan AWS CodeDeploy Pengguna.
catatan
Hanya berikan CodeDeploy informasi jika Anda telah mengonfigurasi layanan Amazon ECS Anda untuk melakukan penerapan biru/hijau. Untuk penerapan pembaruan bergulir (default), hilangkan CodeDeploy informasi. Untuk informasi selengkapnya tentang penerapan Amazon ECS, lihat jenis penerapan Amazon ECS di Panduan Pengembang Layanan Kontainer Elastis Amazon.
catatan
CodeDeployBidang mungkin disembunyikan di editor visual. Untuk membuat mereka muncul, lihatMengapa CodeDeploy bidang hilang dari editor visual?.
UI yang sesuai: Tab konfigurasi/CodeDeploy AppSpec
codedeploy-application
(ECSDeployAction
/Configuration/codedeploy-application)
(Diperlukan codedeploy-appspec
jika disertakan)
Tentukan nama CodeDeploy aplikasi yang ada. Untuk informasi selengkapnya tentang CodeDeploy aplikasi, lihat Bekerja dengan aplikasi CodeDeploy di Panduan AWS CodeDeploy Pengguna.
UI yang sesuai: Tab/aplikasi CodeDeploy konfigurasi
codedeploy-deployment-group
(ECSDeployAction
/Configuration/codedeploy-deployment-group)
(Diperlukan codedeploy-appspec
jika disertakan)
Tentukan nama grup CodeDeploy penyebaran yang ada. Untuk informasi selengkapnya tentang grup CodeDeploy penerapan, lihat Bekerja dengan grup penerapan CodeDeploy di AWS CodeDeploy Panduan Pengguna.
UI yang sesuai: Tab konfigurasi/grup CodeDeploy penerapan
codedeploy-deployment-description
(ECSDeployAction
/Configuration/codedeploy-deployment-description)
(Opsional)
Tentukan deskripsi penerapan yang akan dibuat oleh tindakan ini. Untuk informasi selengkapnya, lihat Bekerja dengan penerapan CodeDeploy di AWS CodeDeploy Panduan Pengguna.
UI yang sesuai: Tab konfigurasi/deskripsi CodeDeploy penerapan