Use variáveis dinâmicas em seu documento de fluxo de trabalho - EC2 Image Builder

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á.

Use variáveis dinâmicas em seu documento de fluxo de trabalho

Você pode usar variáveis dinâmicas em seus documentos de fluxo de trabalho para representar valores que variam em runtime para seu processo de criação de imagem. Os valores das variáveis dinâmicas são representados como JSONPath seletores com nós estruturais que identificam exclusivamente a variável alvo.

JSONPath estrutura variável de fluxo de trabalho dinâmico

$.<document structure>.[<step name>.]<variable name>

O primeiro nó após a raiz ($) se refere à estrutura do documento do fluxo de trabalho, como stepOutputs, ou no caso das variáveis de sistema do Image Builder, a imageBuilder. A lista a seguir contém nós de estrutura JSONPath de documentos de fluxo de trabalho compatíveis.

Nós de estrutura do documento
  • parameters: os parâmetros do fluxo de trabalho

  • stepOutputs: saídas de uma etapa no mesmo documento de fluxo de trabalho

  • workflowOutputs: saídas de um documento de fluxo de trabalho que já foi executado

  • imagebuilder: variáveis de sistema do Image Builder

Os nós da estrutura de documento parameters e stepOutputs incluem um nó opcional para o nome da etapa. Isso ajuda a garantir nomes exclusivos de variáveis em todas as etapas.

O nó final no JSONPath é o nome da variável de destino, comoinstanceId.

Cada etapa pode se referir à saída de qualquer ação da etapa anterior com essas variáveis JSONPath dinâmicas. Isso também é conhecido como encadeamento ou referência. Você pode usar a variável dinâmica a seguir para fazer referência à saída de uma ação da etapa anterior.

$.stepOutputs.step-name.output-name

Quando um parâmetro de entrada se refere a uma variável dinâmica, o indicador de encadeamento (.$) deve ser anexado ao final do nome do parâmetro, conforme mostrado no exemplo a seguir.

Exemplo

- name: ApplyTestComponents action: ExecuteComponents onFailure: Abort inputs: instanceId.$: "$.stepOutputs.LaunchTestInstance.instanceId"

Usar variáveis de sistema do Image Builder

O Image Builder fornece as seguintes variáveis de sistema que você pode usar em seu documento de fluxo de trabalho:

Nome da variável

Descrição

Tipo

Valor de exemplo

cloudWatchLogGrupo

O nome do grupo CloudWatch Logs para registros de saída.

Formato: /aws/imagebuilder/<recipe-name>

String

/aws/imagebuilder/sampleImageRecipe

cloudWatchLogTransmitir

O nome do fluxo de CloudWatch registros para registros de saída.

String

1.0.0/1

collectImageMetadata

A configuração que orienta o Image Builder a coletar ou não os metadados da instância.

Booliano

true | false

collectImageScanConclusões

O valor atual da configuração que permite ao Image Builder coletar resultados de varredura de imagens.

Booliano

true | false

imageBuildNumber

O número de versão da compilação da imagem.

Inteiro

1

imageId

O ID da AMI da imagem de base.

String

ami-1234567890abcdef1

imageName

O nome da imagem.

String

sampleImage

imageType

O tipo de saída da imagem.

String

AMI | Docker

imageVersionNumber

O número de versão da imagem.

String

1.0.0

instanceProfileName

O nome da função do perfil de instância que o Image Builder usa para iniciar, criar e testar instâncias.

String

SampleImageBuilderInstanceProfileRole

platform

A plataforma do sistema operacional da imagem que foi compilada.

String

Linux | Windows | MacOS

s3Logs

Um objeto JSON que contém a configuração dos logs do S3 que o Image Builder grava.

Objeto JSON

{'S3Logs': {'s3 BucketName ':' ', 's3sample-bucket': KeyPrefix ''}} ib-logs

securityGroups

O grupo de segurança IDs que se aplica para criar e testar instâncias.

List [String]

[sg-1234567890abcdef1, sg-11112222333344445]

sourceImageARN

O nome do recurso da Amazon (ARN) do recurso de imagem do Image Builder que o fluxo de trabalho usa para os estágios de compilação e teste.

String

arn: aws:imagebuilder: ::image//us-east-1111122223333sampleImage1.0.0/1

subnetId

O ID da sub-rede na qual inicializar as instâncias de compilação e teste.

String

subnet-1234567890abcdef1

terminateInstanceOnFalha

O valor atual da configuração que direciona o Image Builder a encerrar a instância em caso de falha ou mantê-la para solução de problemas.

Booliano

true | false

workflowPhase

O estágio atual inicializado para a execução do fluxo de trabalho.

String

Build | Test

workingDirectory

O caminho para o diretório de trabalho.

String

/tmp