Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan variabel dinamis dalam dokumen alur kerja Anda
Anda dapat menggunakan variabel dinamis dalam dokumen alur kerja Anda untuk mewakili nilai yang bervariasi saat runtime untuk proses pembuatan gambar Anda. Interpolasi string untuk variabel dinamis memungkinkan Anda untuk menyematkan JSONPath ekspresi dalam konten terstruktur seperti string JSON.Ini sangat berguna ketika Anda perlu meneruskan nilai runtime dalam muatan kompleks ke tindakan langkah seperti atau. ExecuteStateMachine WaitForAction
Untuk menggunakan interpolasi string untuk variabel dinamis, bungkus JSONPath ekspresi dalam kurung kurawal ganda "{{...}}" dalam konten string Anda. Hanya JSONPath ekspresi yang dibungkus dalam kurung kurawal ganda yang diproses sebagai variabel. JSONPath Ekspresi apa pun yang tidak dibungkus dalam kurung kurawal ganda diperlakukan sebagai konten string literal.
JSONPath sintaks variabel alur kerja dinamis
$.<document structure>.[<step name>.]<variable name>
Nilai variabel dinamis direpresentasikan sebagai JSONPath pemilih dengan node struktural yang secara unik mengidentifikasi variabel target. Node pertama setelah root ($) mengacu pada struktur dokumen alur kerja, sepertistepOutputs, atau dalam kasus variabel sistem Image Builder,imageBuilder. Daftar berikut berisi node struktur dokumen JSONPath alur kerja yang didukung.
Node struktur dokumen
-
parameter - Parameter alur kerja
-
StepOutputs - Output dari langkah dalam dokumen alur kerja yang sama
-
WorkflowOutputs - Output dari dokumen alur kerja yang sudah berjalan
-
imagebuilder - variabel sistem Image Builder
Node struktur parameters dan stepOutputs dokumen menyertakan node opsional untuk nama langkah. Ini membantu memastikan nama variabel unik di semua langkah.
Node terakhir dalam JSONPath adalah nama variabel target, sepertiinstanceId.
Setiap langkah dapat merujuk ke output dari setiap tindakan langkah sebelumnya dengan variabel JSONPath dinamis ini. Ini juga dikenal sebagai rantai, atau referensi. Untuk merujuk ke output dari tindakan langkah sebelumnya, Anda dapat menggunakan variabel dinamis berikut.
$.stepOutputs.step-name.output-name
penting
Ketika parameter input mengacu pada variabel dinamis, indikator rantai (.$) harus dilampirkan ke akhir nama parameter.
Contoh 1: Indikator rantai parameter masukan
Contoh berikut menunjukkan parameter input yang menggunakan interpolasi string untuk menyelesaikan variabel dinamis dalam nilai parameter saat runtime.
- name: ApplyTestComponents action: ExecuteComponents onFailure: Abort inputs: instanceId.$: "$.stepOutputs.LaunchTestInstance.instanceId"
Contoh 2: Interpolasi string dalam variabel dinamis
Contoh berikut menunjukkan bagaimana variabel dinamis menggunakan interpolasi string untuk menentukan nilai saat runtime.
- name: ValidateImageConfiguration action: ExecuteStateMachine inputs: stateMachineArn: arn:aws:states:us-east-1:111122223333:stateMachine:ImageValidation input: | { "imageId": "{{ $.stepOutputs.CreateImageFromInstance.imageId }}", "region": "us-east-1", "buildDate": "{{ $.imagebuilder.dateTime }}", "instanceType": "{{ $.stepOutputs.LaunchStep.instanceType }}" }
Dalam contoh ini, JSONPath ekspresi yang dibungkus dengan tanda kurung kurawal ganda diselesaikan saat runtime:
-
{{ $.stepOutputs.CreateImageFromInstance.imageId }}- Menyelesaikan ke ID gambar aktual dari langkah CreateImageFromInstance -
{{ $.imagebuilder.dateTime }}- Menyelesaikan ke stempel waktu build saat ini. Lihat Gunakan variabel sistem Image Builder daftar variabel sistem Image Builder yang dapat Anda gunakan. -
{{ $.stepOutputs.LaunchStep.instanceType }}- Menyelesaikan ke jenis instance yang digunakan dalam LaunchStep
String literal seperti "region": "us-east-1" tetap tidak berubah.
catatan
Interpolasi string berfungsi dengan konten string apa pun dalam dokumen alur kerja Anda, termasuk string multiline menggunakan operator pipa YAMAL (). | Persyaratan kurung kurawal bertindak sebagai mekanisme pelarian untuk membedakan dengan jelas antara JSONPath variabel dan konten teks literal.
Gunakan variabel sistem Image Builder
Image Builder menyediakan variabel sistem berikut yang dapat Anda gunakan dalam dokumen alur kerja Anda:
|
Nama variabel |
Deskripsi |
Tipe |
Nilai contoh |
|---|---|---|---|
|
cloudWatchLogKelompok |
Nama grup CloudWatch Log untuk log keluaran. Format: |
String |
|
|
cloudWatchLogStreaming |
Nama aliran CloudWatch Log untuk log keluaran. |
String |
|
|
collectImageMetadata |
Pengaturan yang mengarahkan Image Builder apakah akan mengumpulkan metadata instance. |
Boolean |
|
|
collectImageScanTemuan |
Nilai setelan saat ini yang memungkinkan Image Builder mengumpulkan temuan pemindaian gambar. |
Boolean |
|
|
imageBuildNumber |
Nomor versi build gambar. |
Bilangan Bulat |
|
|
imageId |
Id AMI dari gambar dasar. |
String |
|
|
ImageName |
Nama gambar. |
String |
|
|
ImageType |
Jenis output gambar. |
String |
|
|
imageVersionNumber |
Nomor versi gambar. |
String |
|
|
instanceProfileName |
Nama peran profil instance yang digunakan Image Builder untuk meluncurkan instance build dan test. |
String |
|
|
platform |
Platform sistem operasi dari gambar yang dibangun. |
String |
|
|
S3log |
Objek JSON yang berisi konfigurasi untuk log S3 yang ditulis Image Builder. |
Objek JSON |
{'S3logs': {'s3 BucketName ':' ', 's3 |
|
securityGroups |
Grup keamanan IDs yang berlaku untuk membangun dan menguji instance. |
Daftar [String] |
|
|
SourceImagearn |
Nama Sumber Daya Amazon (ARN) dari sumber daya image Image Builder yang digunakan alur kerja untuk tahap pembuatan dan pengujian. |
String |
arn:aws:imagebuilder: ::image// |
|
subnetId |
ID subnet untuk meluncurkan instance build dan test ke dalam. |
String |
|
|
terminateInstanceOnKegagalan |
Nilai setelan saat ini yang mengarahkan Image Builder untuk menghentikan instance jika gagal atau menyimpannya untuk pemecahan masalah. |
Boolean |
|
|
WorkflowPhase |
Tahap saat ini yang berjalan untuk eksekusi alur kerja. |
String |
|
|
workingDirectory |
Jalur ke direktori kerja. |
String |
|