Cree una canalización AMI de imágenes a partir del AWS CLI - 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.

Cree una canalización AMI de imágenes a partir del AWS CLI

Puede crear una canalización de AMI imágenes con un JSON archivo que contenga los detalles de configuración como entrada al create-image-pipeline comando del AWS CLI.

La frecuencia con la que la canalización crea una nueva imagen para incorporar las actualizaciones pendientes de la imagen base y los componentes depende de la schedule que haya configurado. Una schedule tiene los siguientes atributos:

  • scheduleExpression: establece el cronograma de ejecución de la canalización para evaluar pipelineExecutionStartCondition y determinar si se debe iniciar una compilación. El cronograma se configura con expresiones cron. Para obtener más información sobre cómo dar formato a una expresión cron en Generador de Imágenes, consulte Usa expresiones cron en Image Builder.

  • pipelineExecutionStartCondition: determina si su canalización debe iniciar la compilación. Los valores válidos son:

    • EXPRESSION_MATCH_ONLY: la canalización creará una nueva imagen cada vez que la expresión cron coincida con la hora actual.

    • EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE: la canalización no iniciará la compilación de una nueva imagen a menos que haya cambios pendientes en su imagen base o en los componentes.

Al ejecutar el create-image-pipeline comando en el AWS CLI, muchos de los recursos de configuración son opcionales. Sin embargo, algunos de los recursos tienen requisitos condicionales, según el tipo de imagen que crea la canalización. Las canalizaciones de AMI imágenes requieren los siguientes recursos:

  • Receta de imagen ARN

  • Configuración de infraestructura ARN

  1. Cree un JSON archivo CLI de entrada

    Utilice su herramienta de edición de archivos favorita para crear un JSON archivo con las siguientes claves, además de valores que sean válidos para su entorno. En este ejemplo, se utiliza un archivo con el nombre create-image-pipeline.json:

    { "name": "MyWindows2019Pipeline", "description": "Builds Windows 2019 Images", "enhancedImageMetadataEnabled": true, "imageRecipeArn": "arn:aws:imagebuilder:us-west-2:123456789012:image-recipe/my-example-recipe/2020.12.03", "infrastructureConfigurationArn": "arn:aws:imagebuilder:us-west-2:123456789012:infrastructure-configuration/my-example-infrastructure-configuration", "distributionConfigurationArn": "arn:aws:imagebuilder:us-west-2:123456789012:distribution-configuration/my-example-distribution-configuration", "imageTestsConfiguration": { "imageTestsEnabled": true, "timeoutMinutes": 60 }, "schedule": { "scheduleExpression": "cron(0 0 * * SUN *)", "pipelineExecutionStartCondition": "EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE" }, "status": "ENABLED" }
    nota
    • Debe incluir la file:// notación al principio de la ruta del JSON archivo.

    • La ruta del JSON archivo debe seguir la convención correspondiente al sistema operativo base en el que se ejecute el comando. Por ejemplo, Windows utiliza la barra diagonal inversa (\) para hacer referencia a la ruta del directorio y Linux usa la barra diagonal (/).

  2. Ejecute el siguiente comando utilizando el archivo que creó como entrada.

    aws imagebuilder create-image-pipeline --cli-input-json file://create-image-pipeline.json