

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Crie um pipeline de imagens de contêiner a partir do AWS CLI
<a name="cli-create-container-pipeline"></a>

Para criar um pipeline de imagem a partir do AWS CLI, execute o **create-image-pipeline** comando com as opções de configuração que se aplicam ao seu pipeline. Você tem a opção de criar um arquivo JSON que contém toda a configuração do pipeline ou especificar a configuração em tempo de execução. Esta seção usa o método do arquivo de configuração JSON para simplificar o comando.

A frequência com que seu pipeline cria uma nova imagem para incorporar quaisquer atualizações pendentes da imagem base e dos componentes depende do `schedule` que você configurou. Cada `schedule` tem os atributos a seguir:
+ `scheduleExpression`: define o cronograma de execução do pipeline para avaliar `pipelineExecutionStartCondition` e determinar se ele deve iniciar uma compilação. A programação é configurada com expressões cron. Para obter mais informações sobre como formatar uma expressão cron no Image Builder, consulte [Usar expressões cron no Image Builder](cron-expressions.md).
+ `pipelineExecutionStartCondition`: determina se seu pipeline deve iniciar a compilação. Os valores válidos são:
  + `EXPRESSION_MATCH_ONLY`: seu pipeline compilará uma imagem sempre que a expressão cron corresponder à hora atual. 
  + `EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE`: seu pipeline não iniciará uma nova compilação de imagem, a menos que haja alterações pendentes em sua imagem base ou em seus componentes.

Quando você executa o **create-image-pipeline** comando no AWS CLI, muitos dos recursos de configuração são opcionais. No entanto, alguns dos recursos têm requisitos condicionais, dependendo do tipo de imagem que o pipeline cria. Os seguintes recursos são necessários para os pipelines de imagens de contêiner:
+ ARN da fórmula do contêiner
+ ARN de configuração de infraestrutura

Se você não incluir um recurso de configuração de distribuição ao executar o comando **create-image-pipeline**, a imagem de saída será armazenada no repositório ECR que você especifica como repositório de destino em sua fórmula do contêiner na região em que você executa o comando. Se você incluir um recurso de configuração de distribuição para seu pipeline, o repositório de destino que você especificou para a primeira região na distribuição será usado.

1. 

**Criar um arquivo JSON de entrada da CLI**

   Use a sua ferramenta favorita de edição de arquivos para criar um arquivo JSON com as chaves a seguir, além de valores válidos para seu ambiente. Este exemplo usa um arquivo denominado `create-image-pipeline.json`:

   ```
   {
   	"name": "MyWindows2019Pipeline",
   	"description": "Builds Windows 2019 Images",
   	"enhancedImageMetadataEnabled": true,
   	"containerRecipeArn": "arn:aws:imagebuilder:us-west-2:123456789012:container-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**  
É necessário incluir a notação `file://` no início do caminho do arquivo JSON.
O caminho para o arquivo JSON deve seguir a convenção apropriada para o sistema operacional de base no qual você está executando o comando. Por exemplo, o Windows usa a barra invertida (\$1) para se referir ao caminho do diretório, enquanto o Linux e o macOS usam a barra (/).

1. Execute o seguinte comando, usando o arquivo que você criou como entrada.

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