Tindakan “Terapkan ke Amazon ECS” definisi YAMAL - Amazon CodeCatalyst

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-spaceName peran di sini, jika Anda mau. Untuk informasi selengkapnya tentang peran ini, silakan lihat Membuat CodeCatalystWorkflowDevelopmentRole-spaceNameperan untuk akun dan ruang Anda. Pahami bahwa CodeCatalystWorkflowDevelopmentRole-spaceName 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.

UI yang sesuai: Tab Konfigurasi/'lingkungan/akun/peran'/ Peran

Inputs

(ECSDeployAction/Inputs)

(Opsional)

InputsBagian 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