本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在工作流程文件中使用動態變數
您可以使用工作流程文件中的動態變數來表示影像建立程序在執行期時不同的值。動態變數值以JSONPath選取器表示,具有可唯一識別目標變數的結構節點。
JSONPath 動態工作流程變數結構
$.<document structure>.[<step name>].<variable name>
根目錄 ($) 之後的第一個節點是指工作流程文件結構,例如 stepOutputs
,如果是 Image Builder 系統變數,則是指 imageBuilder
。下列清單包含支援的JSONPath工作流程文件結構節點。
文件結構節點
-
參數 - 工作流程參數
-
stepOutputs - 來自相同工作流程文件中步驟的輸出
-
workflowOutputs - 已執行之工作流程文件的輸出
-
imagebuilder - Image Builder 系統變數
parameters
和 stepOutputs
文件結構節點包含步驟名稱的選用節點。這有助於確保所有步驟的唯一變數名稱。
中的最終節點JSONPath是目標變數的名稱,例如 instanceId
。
每個步驟都可以參考具有這些JSONPath動態變數的任何先前步驟動作的輸出。這也稱為鏈結或參考 。若要參考先前步驟動作的輸出,您可以使用下列動態變數。
$.stepOutputs.
step-name
.output-name
範例
- name: ApplyTestComponents action: ExecuteComponents onFailure: Abort inputs: instanceId.$: "$.stepOutputs.LaunchTestInstance.instanceId"
使用 Image Builder 系統變數
Image Builder 提供下列系統變數,您可以在工作流程文件中使用:
變數名稱 |
Description (描述) |
Type |
範例值 |
---|---|---|---|
cloudWatchLog群組 |
輸出日誌的 CloudWatch Logs 群組名稱。 格式: |
字串 |
|
cloudWatchLog串流 |
輸出日誌的 CloudWatch Logs 串流名稱。 |
字串 |
|
collectImageMetadata |
指示 Image Builder 是否收集執行個體中繼資料的設定。 |
Boolean |
|
collectImageScan調查結果 |
可讓 Image Builder 收集影像掃描結果的設定的目前值。 |
Boolean |
|
imageBuildNumber |
映像的建置版本編號。 |
Integer |
|
imageId |
基礎映像的 AMI ID。 |
字串 |
|
imageName |
映像的名稱。 |
字串 |
|
imageType |
映像輸出類型。 |
字串 |
|
imageVersionNumber |
映像的版本號碼。 |
字串 |
|
instanceProfileName |
Image Builder 用來啟動建置和測試執行個體的執行個體設定檔角色名稱。 |
字串 |
|
平台 |
所建置映像的作業系統平台。 |
字串 |
|
s3Logs |
包含 Image Builder 寫入之 S3 日誌組態的JSON物件。 |
JSON 物件 |
{'s3Logs ':{'s3BucketName':' |
securityGroups |
IDs 適用於建置和測試執行個體的安全群組。 |
清單 【字串】 |
|
sourceImageARN |
工作流程用於建置和測試階段的 Image Builder 映像資源的 Amazon Resource Name (ARN)。 |
字串 |
arn:aws:imagebuilder: |
subnetId |
啟動建置和測試執行個體的子網路 ID。 |
字串 |
|
terminateInstanceOn失敗 |
指示 Image Builder 在故障時終止執行個體或保留執行個體以進行故障診斷的設定的目前值。 |
Boolean |
|
workflowPhase |
正在執行工作流程的目前階段。 |
字串 |
|
workingDirectory |
工作目錄的路徑。 |
字串 |
|