ManageEC2 TOE使用 EC2 Image Builder 组件参数 - EC2 Image Builder
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

ManageEC2 TOE使用 EC2 Image Builder 组件参数

你可以管理EC2 TOE组件,包括创建和设置组件参数,直接从 EC2 Image Builder 控制台或使用Amazon CLI命令,或者其中一个 Image Builder 软件开发工具包。在本节中,我们将介绍在组件中创建和使用参数,以及通过 Image Builder 控制台设置组件参数以及Amazon CLI命令。

在 YAML 组件文档中使用参数

要生成组件,您必须提供 YAML 应用程序组件文档,该文档表示用于创建组件的阶段和步骤。引用组件的配方可以设置参数以在运行时自定义值,如果未将参数设置为特定值,则默认值将生效。

使用输入参数创建组件文档

本部分介绍如何在 YAML 组件文档中定义和使用输入参数。

要创建使用参数并在 Image Builder 构建或测试实例中运行命令的 YAML 应用程序组件文档,请按照与映像操作系统匹配的步骤操作:

Linux

创建 YAML 组件文档

使用你最喜欢的文件编辑工具创建名为hello-world-test.yaml,该内容包含以下内容:

# Document Start # name: "HelloWorldTestingDocument-Linux" description: "Hello world document to demonstrate parameters." schemaVersion: 1.0 parameters: - MyInputParameter: type: string default: "It's me!" description: This is an input parameter. phases: - name: build steps: - name: HelloWorldStep action: ExecuteBash inputs: commands: - echo "Hello World! Build phase. My input parameter value is {{ MyInputParameter }}" - name: validate steps: - name: HelloWorldStep action: ExecuteBash inputs: commands: - echo "Hello World! Validate phase. My input parameter value is {{ MyInputParameter }}" - name: test steps: - name: HelloWorldStep action: ExecuteBash inputs: commands: - echo "Hello World! Test phase. My input parameter value is {{ MyInputParameter }}" # Document End
提示

在线使用这样的工具YAML 验证程序,或者在代码环境中使用 YAML lint 扩展名,以验证您的 YAML 格式是否正确。

Windows

创建 YAML 组件文档

使用你最喜欢的文件编辑工具创建名为hello-world-test.yaml,该内容包含以下内容:

# Document Start # name: "HelloWorldTestingDocument-Windows" description: "Hello world document to demonstrate parameters." schemaVersion: 1.0 parameters: - MyInputParameter: type: string default: "It's me!" description: This is an input parameter. phases: - name: build steps: - name: HelloWorldStep action: ExecutePowerShell inputs: commands: - Write-Host "Hello World! Build phase. My input parameter value is {{ MyInputParameter }}" - name: validate steps: - name: HelloWorldStep action: ExecutePowerShell inputs: commands: - Write-Host "Hello World! Validate phase. My input parameter value is {{ MyInputParameter }}" - name: test steps: - name: HelloWorldStep action: ExecutePowerShell inputs: commands: - Write-Host "Hello World! Test phase. My input parameter value is {{ MyInputParameter }}" # Document End
提示

在线使用这样的工具YAML 验证程序,或者在代码环境中使用 YAML lint 扩展名,以验证您的 YAML 格式是否正确。

有关用于的阶段、步骤和语法的更多信息EC2 TOEYAML 应用组件文档,请参阅在中使用文档EC2 TOE. 有关参数及其要求的更多信息,请参阅参数的 部分在中定义和引用变量EC2 TOE页.

从 YAML 组件文档中创建组件

无论你用什么方法来创建EC2 TOE组件,则始终需要 YAML 应用程序组件文档作为基准。

在 Image Builder 配方中设置组件参数(控制台)

对于图像配方和容器配方,设置组件参数的工作方式相同。创建新配方或配方的新版本时,您可以从生成组件测试组件列表。组件列表包括适用于您为映像选择的基本操作系统的组件。

选择组件后,它将显示在选定的组件部分,直接位于组件列表下方。将显示选定的每个组件的配置选项。如果您的组件定义了输入参数,则它们将显示为可扩展部分,名为输入参数.

为组件定义的每个参数显示以下参数设置:

  • 参数名称(不可编辑) — 参数的名称。

  • 说明(不可编辑) — 参数描述

  • 类型(不可编辑) — 参数值的数据类型。

  • — 参数的值。如果在此配方中首次使用此组件,并且已为组件定义了默认值,则默认值将显示在框中带有灰显的文本。如果没有输入其他值,EC2 TOE使用默认值。