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á.
Ações de etapa compatíveis com seu documento de fluxo de trabalho
Esta seção inclui detalhes das ações de etapa compatíveis com o Image Builder.
Termos usados nesta seção
- AMI
-
Imagem de máquina da Amazon (AMI)
- ARN
-
Nome do recurso da Amazon
Ações compatíveis
ApplyImageConfigurations
Essa ação de etapa aplica várias configurações e integrações distribuídas AMIs, como configurações de licença, configurações de modelo de lançamento, configurações de exportação do S3, configurações do EC2 Fast Launch e configurações de parâmetros do Systems Manager. As configurações se aplicam a imagens distribuídas somente na conta de origem, exceto às configurações de parâmetros SSM, que podem ser aplicadas entre contas.
Tempo limite padrão: 360 minutos
Tempo limite máximo: 720 minutos
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| região | A região da imagem. | String | Sim | ||
| licenseConfigurationArns | O ARN de configuração da licença para a imagem. | Array | Não | ||
| launchTemplateConfigurations | Array | Não | |||
| launchTemplateConfigurations:launchTemplateId | O ID do modelo de lançamento a ser aplicado à imagem. | String | Sim, se launchTemplateConfigurations for especificado |
||
| launchTemplateConfigurations: ID da conta | A conta do modelo de lançamento IDs a ser aplicada à imagem. | String | Não | ||
| launchTemplateConfigurations:setDefaultVersion | A configuração da versão padrão do modelo de lançamento para a imagem. | Booleano | Não | ||
| s3 ExportConfiguration | Array | Não | |||
| ExportConfigurationS3: Nome da função | O nome da função de configuração de exportação do S3 para a imagem. | String | Sim, se s3ExportConfiguration for especificado |
||
| s3: ExportConfiguration diskImageFormat | O formato de imagem de disco de configuração de exportação do S3 para a imagem. | String | Sim, se s3ExportConfiguration for especificado |
Valores permitidos - VMDK|RAW|VHD | |
| S3: balde S3 ExportConfiguration | O nome do bucket de configuração de exportação do S3 para a imagem. | String | Sim, se s3ExportConfiguration for especificado |
||
| S3: prefixo S3 ExportConfiguration | O prefixo do bucket de configuração de exportação do S3 para a imagem. | String | Não | ||
| fastLaunchConfigurations | A configuração do EC2 Fast Launch para a imagem. | Array | Não | ||
| fastLaunchConfigurations:ativado | EC2 Início rápido enabled/disabled para a imagem. | Booleano | Sim, se fastLaunchConfigurations for especificado |
||
| fastLaunchConfigurations: Configuração do snapshot | EC2 Início rápido enabled/disabled para a imagem. | Mapa | Não | ||
| fastLaunchConfigurations: Configuração do snapshot: targetResourceCount | EC2 Contagem de recursos alvo do Fast Launch para a imagem. | Inteiro | Não | ||
| fastLaunchConfigurations:maxParallelLaunches | EC2 Fast Launch: máximo de lançamentos paralelos para a imagem. | Inteiro | Não | ||
| fastLaunchConfigurations: Modelo de lançamento | Não | ||||
| fastLaunchConfigurations: Modelo de lançamento: launchTemplateId | EC2 ID do modelo de lançamento do Fast Launch para a imagem. | String | Não | ||
| fastLaunchConfigurations: Modelo de lançamento: launchTemplateName | EC2 Nome do modelo de lançamento do Fast Launch para a imagem. | String | Não | ||
| fastLaunchConfigurations: Modelo de lançamento: launchTemplateVersion | EC2 Versão do modelo de lançamento do Fast Launch para a imagem. | String | Não | ||
| ssmParameterConfigurations | A configuração do parâmetro SSM para a imagem. | Mapa | Não | ||
| ssmParameterConfigurations:amiAccountId | O ID da conta da AMI do parâmetro SSM para a imagem. | String | Não | ||
| ssmParameterConfigurations:Nome do parâmetro | O nome do parâmetro SSM da imagem. | String | Sim, se ssmParameterConfigurations for especificado |
||
| ssmParameterConfigurations:Tipo de dados | O tipo de dados do parâmetro SSM para a imagem. | String | Não | Valores permitidos - text|aws:ec2:image) |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| Imagens configuradas | Uma lista de imagens configuradas. | Array |
| Imagens configuradas: ID da conta | O ID da conta de destino da imagem distribuída. | String |
| Imagens configuradas: nome | O nome da AMI. | String |
| Imagens configuradas: AMIID | O ID da AMI da imagem distribuída. | String |
| Imagens configuradas: data de início | Hora UTC quando a distribuição começou. | String |
| Imagens configuradas: data de parada | Hora UTC quando a distribuição foi concluída. | String |
| Configurar imagens: etapa | A etapa na qual a distribuição foi interrompida. | Concluído| AssociateLicensesRunning | UpdateLaunchTemplateRunning | | PutSsmParametersRunning | UpdateFastLaunchConfiguration ExportAmiQueued ExportAmiRunning |
| Imagens configuradas: região | Tom AWS da imagem distribuída | String |
| Imagens configuradas: status | Status de distribuição. | Concluído | Falha|Cancelado| TimedOut |
| Imagens configuradas: mensagem de erro | Mensagem de erro, se houver. | String |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:ApplyImageConfigurationsaction: ApplyImageConfigurations onFailure: Abort inputs: distributedImages.$: $.stepOutputs.DistributeImageStep.distributedImages
Use a saída do valor da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.ApplyImageConfigurationsStep.configuredImages
BootstrapInstanceForContainer
Essa ação de etapa executa um script de serviço para fazer o bootstrap da instância com requisitos mínimos para executar fluxos de trabalho de contêiner. O Image Builder usa o sendCommand na API do Systems Manager para executar esse script. Para obter mais informações, consulte Comando Run do AWS Systems Manager.
nota
O script bootstrap instala os pacotes Docker AWS CLI e Docker, que são pré-requisitos para que o Image Builder crie contêineres do Docker com sucesso. Se você não incluir essa ação, a compilação da imagem poderá falhar.
Tempo limite padrão: 60 minutos
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| instanceId | O ID da instância para o bootstrap. | String | Sim | Deve ser o ID da instância de saída da etapa do fluxo de trabalho que iniciou a instância para esse fluxo de trabalho. |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| runCommandId | O ID do sendCommand do Systems Manager que executou o script de bootstrap na instância. | String |
| status | O status retornado do sendCommand do Systems Manager. | String |
| saída | A saída retornada do sendCommand do Systems Manager. | String |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:ContainerBootstrapStepaction: BootstrapInstanceForContainer onFailure: Abort inputs: instanceId.$: $.stepOutputs.LaunchStep.instanceId
Use a saída do valor da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.ContainerBootstrapStep.status
CollectImageMetadata
Essa ação de etapa só é válida para fluxos de trabalho de compilação.
EC2 O Image Builder executa o Agente AWS Systems Manager (Systems Manager) nas EC2 instâncias que ele executa para criar e testar sua imagem. O Image Builder coleta informações adicionais sobre a instância usada durante a fase de compilação com o Systems Manager Inventory. Essas informações incluem o nome e a versão do sistema operacional (SO), bem como a lista de pacotes e suas respectivas versões, conforme relatado pelo seu sistema operacional.
nota
Essa ação de etapa só funciona para imagens criadas AMIs.
Tempo limite padrão: 30 minutos
Reversão: o Image Builder reverte todos os recursos do Systems Manager que foram criados durante essa etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| instanceId | A instância de compilação à qual aplicar as configurações de metadados. | String | Sim | Deve ser o ID da instância de saída da etapa do fluxo de trabalho que iniciou a instância de compilação para esse fluxo de trabalho. |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| osVersion | O nome e a versão do sistema operacional coletados da instância de compilação. | String |
| associationId | O ID de associação do Systems Manager usado para coleta de inventário. | String |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:CollectMetadataStepaction: CollectImageMetadata onFailure: Abort inputs: instanceId: $.stepOutputs.LaunchStep.instanceId
Use a saída da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.CollectMetadataStep.osVersion
CollectImageScanFindings
Se o Amazon Inspector estiver habilitado para sua conta e a digitalização de imagens estiver habilitada para seu pipeline, essa ação de etapa coletará descobertas de digitalização de imagens relatadas pelo Amazon Inspector para sua instância de teste. Essa ação de etapa não está disponível para fluxos de trabalho de compilação.
Tempo limite padrão: 120 minutos
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| instanceId | O ID da instância na qual a varredura foi executada. | String | Sim | Deve ser o ID da instância de saída da etapa do fluxo de trabalho que iniciou a instância para esse fluxo de trabalho. |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| runCommandId | O ID do sendCommand do Systems Manager que executou o script para coletar as descobertas. | String |
| status | O status retornado do sendCommand do Systems Manager. | String |
| saída | A saída retornada do sendCommand do Systems Manager. | String |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:CollectFindingsStepaction: CollectImageScanFindings onFailure: Abort inputs: instanceId.$: $.stepOutputs.LaunchStep.instanceId
Use a saída do valor da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.CollectFindingsStep.status
CreateImage
Essa ação de etapa cria uma imagem de uma instância em execução com a EC2 CreateImage API da Amazon. Durante o processo de criação, antes prosseguir, a ação de etapa aguarda conforme necessário para verificar se os recursos alcançaram o estado correto.
Tempo limite padrão: 720 minutos
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| instanceId | A instância com base na qual criar a nova imagem. | String | Sim | A instância do ID de instância fornecido deverá estar em um estado running quando essa etapa for iniciada. |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| imageId | O ID de AMI da imagem que foi criada. | String |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:CreateImageFromInstanceaction: CreateImage onFailure: Abort inputs: instanceId.$: "i-1234567890abcdef0"
Use a saída do valor da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.CreateImageFromInstance.imageId
DistributeImage
Essa ação de etapa distribui uma AMI para regiões e contas especificadas. Ele cria cópias da AMI nas regiões e contas de destino com base na configuração de distribuição fornecida nas solicitações de CreateImage ou CreateImagePipeline APIs ou nas configurações de distribuição personalizadas fornecidas no fluxo de trabalho para substituir as configurações na configuração de distribuição.
Tempo limite padrão: 360 minutos
Tempo limite máximo: 720 minutos
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| região | A lista de regiões para distribuir a imagem. | String | Sim | Tamanho mínimo de 1. Tamanho máximo de 1.024. | |
| nome | O nome da configuração de distribuição. | String | Não | ||
| description | As distribuições da configuração de distribuição. | String | Não | ||
| targetAccountIds | Conta IDs para a qual distribuir a imagem. | Array | Não | ||
| Etiquetas Ami | As tags da configuração de distribuição. | Mapa | Não | ||
| kmsKeyId | Chaves KMS a serem aplicadas à imagem distribuída. | String | Não |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| Imagens distribuídas | Uma lista de imagens distribuídas | Array |
| Imagens distribuídas: Região | A AWS região da imagem distribuída. | String |
| Imagens distribuídas: nome | O nome da AMI. | String |
| Imagens distribuídas: Amiid | O ID da AMI da imagem distribuída. | String |
| Imagens distribuídas: ID da conta | O ID da conta de destino da imagem distribuída. | String |
| Imagens distribuídas: data de início | Hora UTC quando a distribuição começou. | String |
| Imagens distribuídas: data de parada | Hora UTC quando a distribuição foi concluída. | String |
| Imagens distribuídas: status | Status de distribuição. | Concluído | Falha|Cancelado| TimedOut |
| Imagens distribuídas: etapa | A etapa na qual a distribuição foi interrompida. | Concluído| CopyAmiRunning |
| Imagens distribuídas: mensagem de erro | Mensagem de erro, se houver. | String |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:DistributeImageaction: DistributeImage onFailure: Abort inputs: distributions: - region.$: "$.parameters.SourceRegion" description: "AMI distribution to source region" amiTags: DistributionTest: "SourceRegion" WorkflowStep: "DistributeToSourceRegion" BuildDate: "{{imagebuilder:buildDate:yyyyMMHHss}}" BuildVersion: "{{imagebuilder:buildVersion}}"
Use a saída do valor da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.DistributeImageStep.distributedImages
ExecuteComponents
Essa ação de etapa executa componentes especificados na fórmula da imagem atual que está sendo criada. Fluxos de trabalho de compilação executam componentes de compilação na instância de compilação. Os fluxos de trabalho de teste executam somente componentes de teste na instância de teste.
O Image Builder usa o sendCommand na API do Systems Manager para executar esse componentes. Para obter mais informações, consulte Comando Run do AWS Systems Manager.
Tempo limite padrão: 720 minutos
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| instanceId | O ID da instância na qual os componentes devem ser executados. | String | Sim | Deve ser o ID da instância de saída da etapa do fluxo de trabalho que iniciou a instância para esse fluxo de trabalho. |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| runCommandId | O ID do sendCommand do Systems Manager que executou os componentes na instância. | String |
| status | O status retornado do sendCommand do Systems Manager. | String |
| saída | A saída retornada do sendCommand do Systems Manager. | String |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:ExecComponentsStepaction: ExecuteComponents onFailure: Abort inputs: instanceId: $.stepOutputs.LaunchStep.instanceId
Use a saída da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.ExecComponentsStep.status
ExecuteStateMachine
Essa ação de etapa inicia a execução de uma máquina de AWS Step Functions estado a partir de um fluxo de trabalho do Image Builder. O Image Builder usa a StartExecution API Step Functions para iniciar a máquina de estado e esperar que ela seja concluída. Isso é útil para integrar fluxos de trabalho complexos, validação de conformidade ou processos de certificação em seu pipeline de criação de imagens.
Para obter mais informações, consulte Saiba mais sobre máquinas de estado em Step Functions no AWS Step Functions Developer Guide.
Tempo limite padrão: 6 horas
Tempo limite máximo: 24 horas
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| stateMachineArn | O ARN da máquina de estados Step Functions a ser executada. | String | Sim | Deve ser um ARN de máquina de estado válido. | |
| input | Dados de entrada JSON para fornecer à máquina de estado. | String | Não | {} | Deve ser uma string JSON válida, tamanho máximo: 16 KiB. |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| executionArn | O ARN da execução da máquina de estado. | String |
Permissões do IAM necessárias
Sua função de execução personalizada deve ter as seguintes permissões para usar essa ação de etapa:
Permitir ações
-
states:StartExecution -
states:DescribeExecution
Especificar recursos
-
arn:aws:states:us-west-2:111122223333:stateMachine:state-machine-name -
arn:aws:states:us-west-2:111122223333:execution:state-machine-name:*
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:ValidateImageComplianceaction: ExecuteStateMachine timeoutSeconds: 3600 onFailure: Abort inputs: stateMachineArn: arn:aws:states:us-west-2:111122223333:stateMachine:ImageComplianceValidationinput: | { "imageId": "{{ $.stepOutputs.CreateImageFromInstance.imageId }}", "region": "us-west-2", "complianceLevel": "high", "requiredScans": ["cve", "benchmark", "configuration"] }
Use a saída do valor da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.ValidateImageCompliance.executionArn
LaunchInstance
Essa ação de etapa inicia uma instância na sua Conta da AWS e espera até que o agente do Systems Manager esteja em execução na instância antes de passar para a próxima etapa. A ação de inicialização usa configurações de sua fórmula e recursos de configuração de infraestrutura associados à sua imagem. Por exemplo, o tipo de instância a ser executada vem da configuração da infraestrutura. A saída é o ID da instância que foi executada.
A entrada waitFor configura a condição que satisfaz o requisito de conclusão da etapa.
Tempo limite padrão: 60 minutos
Reversão: para instâncias de construção, a reversão executa a ação que você configurou em seu recurso de configuração de infraestrutura. Por padrão, as instâncias de compilação são encerradas se a criação da imagem falhar. No entanto, há uma definição na configuração da infraestrutura para manter a instância de compilação para solução de problemas.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| imageIdOverride | A imagem a ser usada para iniciar a instância | String | Não |
Estágio de construção: imagem base da receita da imagem Estágio de teste: saída da AMI do estágio de construção |
Deve ser uma ID de AMI válida |
| instanceTypesOverride | O Image Builder tenta cada tipo de instância na lista até encontrar uma que seja executada com êxito. | Lista de strings | Não | Tipos de instância especificados em sua configuração de infraestrutura | Devem ser tipos de instância válidos |
| waitFor | A condição a ser aguardada antes de concluir a etapa do fluxo de trabalho e passar para a próxima etapa | String | Sim | O Image Builder é compatível com ssmAgent. |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| instanceId | O ID de instância da instância que foi executada. | String |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:LaunchStepaction: LaunchInstance onFailure: Abort inputs: waitFor:ssmAgent
Use a saída da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.LaunchStep.instanceId
ModifyImageAttributes
Essa ação de etapa modifica atributos distribuídos AMIs, como permissões de execução e outros atributos da AMI. Ele opera com base nas AMIs que foram distribuídas para regiões e contas alvo.
Tempo limite padrão: 120 minutos
Tempo limite máximo: 180 minutos
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| região | A região da imagem. | String | Sim | ||
| Permissão de lançamento | Não | ||||
| Permissão de lançamento: IDs de usuário | O usuário IDs a ser modificado nas permissões de lançamento da imagem. | String | Não | ||
| Permissão de lançamento: grupos de usuários | Os grupos de usuários a serem modificados nas permissões de lançamento da imagem. | String | Não | ||
| Permissão de lançamento: Organization ARNS | A AWS organização ARNs a ser modificada nas permissões de lançamento da imagem. | String | Não | ||
| Permissão de lançamento: organizationalUnitArns | A unidade AWS organizacional ARNs a ser modificada nas permissões de lançamento da imagem. | String | Não |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| Imagens modificadas | Uma lista de imagens modificadas | Array |
| Imagens modificadas: ID da conta | O ID da conta de destino da imagem distribuída. | String |
| Imagens modificadas: Nome | O nome da AMI. | String |
| Imagens modificadas: Amiid | O ID da AMI da imagem distribuída. | String |
| Imagens modificadas: data de início | Hora UTC quando a distribuição começou. | String |
| Imagens modificadas: data de parada | Hora UTC quando a distribuição foi concluída. | String |
| Imagens modificadas: etapa | A etapa na qual a distribuição foi interrompida. | Concluído| ModifyAmiRunning |
| Imagens modificadas: Região | A AWS região da imagem. | String |
| Imagens modificadas: Status | Status de distribuição. | Concluído | Falha|Cancelado| TimedOut |
| Imagens modificadas: mensagem de erro | Mensagem de erro, se houver. | String |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:ModifyImageAttributesaction: ModifyImageAttributes onFailure: Abort inputs: distributedImages.$: $.stepOutputs.DistributeImageStep.distributedImages
Use a saída do valor da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.ModifyImageAttributesStep.modifiedImages
RegisterImage
Essa ação de etapa registra uma nova Amazon Machine Image (AMI) usando a EC2 RegisterImage API da Amazon. Ele permite que você crie uma AMI a partir de um snapshot existente ou de um conjunto de snapshots, especificando vários atributos de imagem.
Tempo limite padrão: 720 minutos
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| arquitetura | A arquitetura da AMI. | String | Não | Valores válidos: i386, x86_64, arm64, x86_64_mac, arm64_mac | |
| blockDeviceMapping | As entradas de mapeamento de dispositivos de bloco para a AMI. | Array | Não | ||
| Modo de inicialização | O modo de inicialização da AMI. | String | Não | Valores válidos: legacy-bios, uefi, uefi-preferred | |
| description | Uma descrição para a AMI. | String | Não | ||
| enaSupport | Se a rede aprimorada com ENA está habilitada. | Booleano | Não | ||
| Localização da imagem | A localização do manifesto da AMI. | String | Não | Necessário para suporte de S3 AMIs | |
| Suporte ao IMDS | O nível de IMDSv2 suporte. | String | Não | Valores válidos: v2.0 | |
| includeSnapshotTags | Se deve incluir tags do primeiro instantâneo definido no mapeamento do dispositivo de bloco. | Booleano | Não | FALSE |
Quando definidas como verdadeiras, as tags são incluídas da seguinte forma:
|
| ID do kernel | O ID do kernel a ser usado. | String | Não | ||
| RAM é Kid | O ID do disco RAM a ser usado. | String | Não | ||
| rootDeviceName | O nome do dispositivo raiz. | String | Não | Exemplo: /dev/sda1 | |
| sriovNetSupport | Rede aprimorada com a interface Intel 82599 VF. | String | Não | ||
| Suporte TPM | Suporte à versão TPM. | String | Não | Valores válidos: v2.0 | |
| Dados da UEFI | Dados UEFI codificados em Base64. | String | Não | ||
| Tipo de virtualização | O tipo de virtualização. | String | Não | Valores válidos: hvm, paravirtual |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| imageId | O ID da AMI da imagem registrada. | String |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name: RegisterNewImage action: RegisterImage onFailure: Abort inputs: architecture: "x86_64" bootMode: "uefi" blockDeviceMapping: - DeviceName: "/dev/sda1" Ebs: SnapshotId: "snap-1234567890abcdef0" VolumeSize: 100 VolumeType: "gp3" rootDeviceName: "/dev/sda1" virtualizationType: "hvm"
Use a saída do valor da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.RegisterNewImage.imageId
Exemplo com uma SnapshotId de outra etapa e tags de snapshot incluídas na AMI gerada
- name: CreateSnapshot action: RunCommand onFailure: Abort inputs: instanceId: "i-1234567890abcdef0" documentName: "AWS-RunShellScript" parameters: commands: - "aws ec2 create-snapshot --volume-idvol-1234567890abcdef0--description 'Snapshot for AMI' --query 'SnapshotId' --output text" - name: RegisterImageFromSnapshot action: RegisterImage onFailure: Abort inputs: architecture: "x86_64" bootMode: "uefi" blockDeviceMapping: - DeviceName: "/dev/sda1" Ebs: SnapshotId.$: "$.stepOutputs.CreateSnapshot.output[0]" VolumeSize: 100 VolumeType: "gp3" includeSnapshotTags: true rootDeviceName: "/dev/sda1" virtualizationType: "hvm"
RunCommand
Essa ação de etapa executa um documento de comando para seu fluxo de trabalho. O Image Builder usa o sendCommand na API do Systems Manager para executá-lo em seu nome. Para obter mais informações, consulte Comando Run do AWS Systems Manager.
Tempo limite padrão: 12 horas
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| instanceId | O ID da instância na qual executar o documento de comando. | String | Sim | Deve ser o ID da instância de saída da etapa do fluxo de trabalho que iniciou a instância para esse fluxo de trabalho. | |
| documentName | O nome do documento de comando do Systems Manager a ser executado. | String | Sim | ||
| parameters | Uma lista de pares chave e valor para qualquer parâmetro exigido pelo documento de comando. | dictionary<string, list<string>> | Condicional | ||
| documentVersion | A versão do documento de comando a ser executada. | String | Não | $DEFAULT |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| runCommandId | O ID do sendCommand do Systems Manager que executou o documento de comando na instância. | String |
| status | O status retornado do sendCommand do Systems Manager. | String |
| saída | A saída retornada do sendCommand do Systems Manager. | Lista de strings |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:RunCommandDocaction: RunCommand onFailure: Abort inputs: documentName:SampleDocumentparameters: osPlatform: - "linux" instanceId.$: $.stepOutputs.LaunchStep.instanceId
Use a saída do valor da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.RunCommandDoc.status
RunSysPrep
Essa ação de etapa usa o sendCommand na API do Systems Manager para executar o documento AWSEC2-RunSysprep para instâncias do Windows antes que a instância de compilação seja encerrada para o snapshot. Essas ações seguem as AWS melhores práticas para endurecer e limpar a imagem
Tempo limite padrão: 60 minutos
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| instanceId | O ID da instância na qual executar o documento AWSEC2-RunSysprep. |
String | Sim | Deve ser o ID da instância de saída da etapa do fluxo de trabalho que iniciou a instância para esse fluxo de trabalho. |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| runCommandId | O ID do sendCommand do Systems Manager que executou o documento AWSEC2-RunSysprep na instância. |
String |
| status | O status retornado do sendCommand do Systems Manager. | String |
| saída | A saída retornada do sendCommand do Systems Manager. | String |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:RunSysprepaction: RunSysPrep onFailure: Abort inputs: instanceId.$: $.stepOutputs.LaunchStep.instanceId
Use a saída do valor da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.RunSysprep.status
SanitizeInstance
Essa ação de etapa executa o script de limpeza recomendado para instâncias Linux antes que a instância de compilação seja encerrada para o snapshot. O script de limpeza ajuda a garantir que a imagem final siga as práticas recomendadas de segurança e a remoção de qualquer artefato ou configuração de compilação que não deva ser transferida para seu snapshot. Para obter mais informações sobre o script, consulte Limpeza necessária após a construção. Essa ação não se aplica a imagens de contêiner.
O Image Builder usa o sendCommand na API do Systems Manager para executar esse script. Para obter mais informações, consulte Comando Run do AWS Systems Manager.
Tempo limite padrão: 60 minutos
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| instanceId | O ID da instância a passar por limpeza. | String | Sim | Deve ser o ID da instância de saída da etapa do fluxo de trabalho que iniciou a instância para esse fluxo de trabalho. |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| runCommandId | O ID do sendCommand do Systems Manager que executou o script de limpeza na instância. | String |
| status | O status retornado do sendCommand do Systems Manager. | String |
| saída | A saída retornada do sendCommand do Systems Manager. | String |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:SanitizeStepaction: SanitizeInstance onFailure: Abort inputs: instanceId: $.stepOutputs.LaunchStep.instanceId
Use a saída do valor da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.SanitizeStep.status
TerminateInstance
Essa ação de etapa encerra a instância com o ID da instância que é transmitido como entrada.
Tempo limite padrão: 30 minutos
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| instanceId | Forneça o ID da instância a ser encerrada. | String | Sim |
Saídas: não há saídas para essa ação de etapa.
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:TerminateInstanceaction: TerminateInstance onFailure: Continue inputs: instanceId.$:i-1234567890abcdef0
WaitForAction
Essa ação de etapa pausa o fluxo de trabalho em execução e aguarda o recebimento de uma ação externa da ação SendWorkflowStepAction da API do Image Builder. Esta etapa publica um EventBridge evento em seu ônibus de EventBridge eventos padrão com o tipo de EC2 Image Builder Workflow Step Waiting detalhe. A etapa também pode enviar uma notificação do SNS se você fornecer um ARN de tópico do SNS ou invocar uma função do Lambda de forma assíncrona se você fornecer um nome de função do Lambda.
Tempo limite padrão: 3 dias
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| snsTopicArn | Um ARN opcional de tópico do SNS para enviar uma notificação quando a etapa do fluxo de trabalho estiver pendente. | String | Não | ||
| lambdaFunctionName | Um nome opcional ou ARN da função Lambda a ser invocada de forma assíncrona quando a etapa do fluxo de trabalho estiver pendente. | String | Não | ||
| payload | Cadeia de caracteres JSON usada como mensagem para SNS e carga útil para Lambda. Se fornecida, uma carga personalizada é agrupada por padrãomessage/payload, used for SNS and Lambda respectively. If not provided, generates default message/payload. | String | Não | Deve ser uma string JSON válida, no máximo 16 KiB |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| action | A ação retornada pela ação de API SendWorkflowStepAction. | String (RESUME ou STOP) |
| reason | O motivo da ação retornada. | String |
Exemplo
Especifique a ação da etapa no documento do fluxo de trabalho com a notificação do SNS.
- name:SendEventAndWaitaction: WaitForAction onFailure: Abort inputs: snsTopicArn: arn:aws:sns:us-west-2:111122223333:ExampleTopic
Especifique a ação da etapa no documento do fluxo de trabalho com a invocação da função Lambda.
- name:SendEventAndWaitWithLambdaaction: WaitForAction onFailure: Abort inputs: lambdaFunctionName:ExampleFunctionpayload: | { "imageId": "{{ $.stepOutputs.CreateImageFromInstance.imageId }}", "region": "us-west-2" }
Use a saída do valor da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.SendEventAndWait.reason
WaitForSSMAgent
Essa ação de etapa espera que uma EC2 instância se torne gerenciável AWS Systems Manager após os períodos esperados de falta de resposta. É particularmente importante para fluxos de trabalho com interrupções de instância conhecidas, como reinicializações do sistema, atualizações do sistema operacional ou operações específicas da plataforma que desconectam temporariamente a instância do SSM. O Image Builder monitora a instância até que ela recupere a conectividade SSM ou atinja o tempo limite.
Tempo limite padrão: 60 minutos
Tempo limite máximo: 180 minutos
Reversão: não há reversão para essa ação de etapa.
Entradas: a tabela a seguir inclui entradas compatíveis com essa ação de etapa.
| Nome da entrada | Description | Tipo | Obrigatório | Padrão | Restrições |
|---|---|---|---|---|---|
| instanceId | O ID da instância para monitorar a conectividade do SSM. | String | Sim | Deve ser um ID de EC2 instância válido |
Saídas: a tabela a seguir inclui saídas para essa ação de etapa.
| Nome da saída | Description | Tipo |
|---|---|---|
| Status | Status da conexão do SSM Agent. | String |
Exemplo
Especifique a ação de etapa no documento de fluxo de trabalho.
- name:WaitForInstanceAfterRebootaction: WaitForSSMAgent onFailure: Abort timeoutInSeconds: 900 # 15 minutes inputs: instanceId.$: $.stepOutputs.LaunchStep.instanceId
Use a saída do valor da ação da etapa no documento do fluxo de trabalho.
$.stepOutputs.WaitForInstanceAfterReboot.Status