ワークフロードキュメントでは動的変数を使用します - EC2 イメージビルダー

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ワークフロードキュメントでは動的変数を使用します

ワークフロードキュメントで動的変数を使用して、イメージ作成プロセスのランタイム時に変化する値を表すことができます。動的変数値は、ターゲット変数を一意に識別する構造ノードを備えた JSONPath セレクターとして表されます。

JSONPath の動的ワークフロー変数構造

$.<document structure>.[<step name>.]<variable name>

ルート ($) の後の最初のノードは、stepOutputs または Image Builder システム変数の場合は、imageBuilder などのワークフロードキュメント構造を表します。以下のリストには、サポートされている JSONPath ワークフロードキュメント構造ノードが含まれています。

ドキュメント構造ノード
  • parameters – ワークフローパラメータ

  • 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 には、ワークフロードキュメントで使用できる以下のシステム変数があります。

変数名

説明

[Type] (タイプ)

値の例

cloudWatchLogGroup

出力ログの CloudWatch Logs グループの名前。

形式: /aws/imagebuilder/<recipe-name>

String

/aws/imagebuilder/sampleImageRecipe

cloudWatchLogStream

出力ログの CloudWatch Logs ストリームの名前。

String

1.0.0/1

collectImageMetadata

インスタンスメタデータを収集するかどうかを Image Builder に指示する設定。

ブール値

true | false

collectImageScanFindings

Image Builder が画像スキャン検出結果を収集できるようにする設定の現在の値。

ブール値

true | false

imageBuildNumber

イメージのビルドバージョン番号。

整数

1

imageId

ベースイメージの AMI ID。

String

ami-1234567890abcdef1

imageName

イメージの名前。

String

sampleImage

imageType

画像出力タイプ。

String

AMI | Docker

imageVersionNumber

イメージのバージョン番号。

String

1.0.0

instanceProfileName

Image Builder がビルドインスタンスとテストインスタンスを起動するために使用するインスタンスプロファイルロールの名前。

String

SampleImageBuilderInstanceProfileRole

platform

ビルドされたイメージのオペレーティングシステムプラットフォーム。

String

Linux | Windows | MacOS

s3Logs

Image Builder が書き込む S3 ログの設定を含む JSON オブジェクト。

JSON オブジェクト

{'s3Logs': {'s3BucketName': 'sample-bucket', 's3KeyPrefix': 'ib-logs'}}

securityGroups

ビルドインスタンスとテストインスタンスに適用されるセキュリティグループ ID。

List [String]

[sg-1234567890abcdef1, sg-11112222333344445]

sourceImageARN

ワークフローがビルドステージとテストステージに使用する Image Builder イメージリソースの Amazon リソースネーム (ARN)。

String

arn:aws:imagebuilder:us-east-1:111122223333:image/sampleImage/1.0.0/1

subnetId

ビルドインスタンスとテストインスタンスを起動するサブネットの ID。

String

subnet-1234567890abcdef1

terminateInstanceOnFailure

障害発生時にインスタンスを終了するか、トラブルシューティングのために保持するよう Image Builder に指示する設定の現在の値。

ブール値

true | false

workflowPhase

ワークフロー実行のために実行中の現在のステージ。

String

Build | Test

workingDirectory

作業ディレクトリへのパス。

String

/tmp