Tutorial: Crear un componente personalizado con parámetros de entrada - EC2Image Builder

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Tutorial: Crear un componente personalizado con parámetros de entrada

Puede administrar los componentes de Image Builder, incluida la creación y configuración de los parámetros de los componentes, directamente desde la consola de EC2 Image Builder, desde AWS CLI, o desde Image Builder API oSDKs. En esta sección, abordaremos la creación y el uso de parámetros en el componente y la configuración de los parámetros del componente mediante la consola Image Builder y AWS CLI comandos en tiempo de ejecución.

importante

Los parámetros de los componentes son valores de texto plano y se registran AWS CloudTrail Le recomendamos que utilice . AWS Secrets Manager o el AWS Systems Manager Tienda de parámetros para guardar tus secretos. Para obtener más información sobre Secrets Manager, consulte ¿Qué es Secrets Manager? en el AWS Secrets Manager Guía del usuario. Para obtener más información acerca de AWS Systems Manager Almacén de parámetros, consulte AWS Systems Manager Almacén de parámetros en el AWS Systems Manager Guía del usuario.

Utilice los parámetros en el documento YAML de componentes

Para crear un componente, debe proporcionar un documento del componente YAML o de JSON la aplicación. El documento contiene el código que se ejecuta durante las fases y los pasos que defina para personalizar la imagen. La receta que hace referencia al componente puede establecer los parámetros para personalizar los valores en el tiempo de ejecución, con valores predeterminados que surten efecto si el parámetro no está establecido en un valor específico.

Creación de un documento del componente con los parámetros de entrada

En esta sección, se muestra cómo definir y utilizar los parámetros de entrada en el documento de YAML componentes.

Para crear un documento de componentes de YAML aplicación que utilice parámetros y ejecute comandos en las instancias de compilación o prueba de Image Builder, siga los pasos que coincidan con el sistema operativo de su imagen:

Linux
Cree un documento YAML componente

Utilice una herramienta de edición de archivos para crear un archivo de documento componente. En los ejemplos de documentación se utiliza un archivo cuyo nombre hello-world-test.yaml incluye el siguiente contenido:

# 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
sugerencia

Utilice una herramienta como este YAMLvalidador en línea o una extensión YAML lint en su entorno de código para comprobar que está bien formado. YAML

Windows
Cree un documento componente YAML

Utilice una herramienta de edición de archivos para crear un archivo de documento componente. En los ejemplos de documentación se utiliza un archivo cuyo nombre hello-world-test.yaml incluye el siguiente contenido:

# 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
sugerencia

Utilice una herramienta como este YAMLvalidador en línea o una extensión YAML lint en su entorno de código para comprobar que está bien formado. YAML

Para obtener más información sobre las fases, los pasos y la sintaxis de TOE de AWS documentos que componen la aplicación, consulte Utilizar documentos en TOE de AWS. Para obtener más información sobre los parámetros y sus requisitos, consulte la Parámetros sección Definir y referenciar variables en TOE de AWSpágina.

Cree un componente a partir del documento del YAML componente

Sea cual sea el método que utilice para crear un TOE de AWS componente, el documento del componente de la YAML aplicación siempre se requiere como referencia.

Defina los parámetros de los componentes en una receta de Image Builder desde la consola

La configuración de los parámetros del componente funciona de la misma manera para las recetas de imágenes y las recetas de contenedores. Al crear una receta nueva o una nueva versión de una receta, se eligen los componentes que se van a incluir en las listas Componentes de compilación y Componentes de prueba. Las listas de componentes incluyen los componentes que son aplicables al sistema operativo base que haya elegido para la imagen.

Después de seleccionar un componente, se muestra en la sección Componentes seleccionados, justo debajo de las listas de componentes. Se muestran las opciones de configuración para cada componente seleccionado. Si el componente tiene parámetros de entrada definidos, se muestran como una sección ampliable denominada Parámetros de entrada.

Se muestran las siguientes configuraciones de parámetros para cada parámetro definido para el componente:

  • Nombre del parámetro (no editable): el nombre del parámetro.

  • Descripción (no editable): la descripción del parámetro.

  • Tipo (no editable): el tipo de datos del valor del parámetro.

  • Valor: el valor del parámetro. Si utiliza este componente por primera vez en esta receta y se ha definido un valor por defecto para el parámetro de entrada, el valor por defecto aparece en el cuadro Valor con el texto atenuado. Si no se introduce ningún otro valor, Image Builder utiliza el valor predeterminado.