aws:executeAutomation – Executa outra automação - AWS Systems Manager

aws:executeAutomation – Executa outra automação

Executa uma automação secundária chamando um runbook secundário. Com essa ação, você pode criar runbooks para suas operações mais comuns e fazer referência a esses runbooks durante uma automação. Essa ação pode simplificar seus runbooks, removendo a necessidade de duplicar etapas em runbooks semelhantes.

A automação secundária é executada no contexto do usuário que iniciou a automação primária. Isso significa que a automação secundária usa o mesmo usuário ou perfil do AWS Identity and Access Management (IAM) usado pelo usuário que iniciou a primeira automação.

Importante

Se você especificar parâmetros em uma automação secundária que usa uma função assumida (uma função que usa a política iam:passRole), o usuário ou a função que iniciou a automação primária deverá ter permissão para transmitir a função assumida especificada na automação secundária. Para obter mais informações sobre como configurar uma função assumida para o Automation, consulte Criar perfis de serviço para o Automation usando o console.

Entrada

YAML
name: Secondary_Automation action: aws:executeAutomation maxAttempts: 3 timeoutSeconds: 3600 onFailure: Abort inputs: DocumentName: secondaryAutomation RuntimeParameters: instanceIds: - i-1234567890abcdef0
JSON
{ "name":"Secondary_Automation", "action":"aws:executeAutomation", "maxAttempts":3, "timeoutSeconds":3600, "onFailure":"Abort", "inputs":{ "DocumentName":"secondaryAutomation", "RuntimeParameters":{ "instanceIds":[ "i-1234567890abcdef0" ] } } }
DocumentName

O nome do runbook secundário a ser executado durante a etapa. Para runbooks na mesma Conta da AWS, especifique o nome do runbook. Para runbooks compartilhados de uma Conta da AWS diferente, especifique o nome do recurso da Amazon (ARN) do runbook. Para obter informações sobre como usar runbooks compartilhados, consulte Usar documentos compartilhados do .

Tipo: string

Obrigatório: Sim

DocumentVersion

A versão do runbook secundário a ser executada. Se não for especificada, o Automation executará a versão padrão do runbook.

Tipo: string

Obrigatório: Não

MaxConcurrency

O número máximo de destinos que podem executar essa tarefa em paralelo. Você pode especificar um número, como 10, ou uma porcentagem, como 10%.

Tipo: string

Obrigatório: Não

MaxErrors

O número de erros permitidos antes que o sistema interrompa a execução de automações em outros destinos. Você pode especificar um número absoluto de erros, como 10, ou uma porcentagem do conjunto de destino, como 10%. Se você especificar 3, por exemplo, o sistema deixará de executar a automação quando o quarto erro for recebido. Se você especificar 0, o sistema deixará de executar a automação em destinos adicionais depois que o primeiro resultado do erro for retornado. Se você executar uma automação em 50 recursos e definir MaxErrors para 10%, o sistema interromperá a execução da automação em destinos adicionais quando o sexto erro for recebido.

As automações que já estiverem em execução quando o limite de MaxErrors for atingido poderão ser concluídas, mas algumas dessas automações também poderão falhar. Se você precisar garantir que não haverá mais automações com falhas do que o especificado em MaxErrors, defina MaxConcurrency para 1, para que as automações prossigam uma de cada vez.

Tipo: string

Obrigatório: Não

RuntimeParameters

Parâmetros necessários para o runbook secundário. O mapeamento usa o seguinte formato: {"parameter1" : "value1", "parameter2" : "value2" }

Tipo: mapa

Obrigatório: Não

Tags

Metadados opcional que você atribui a um recurso. É possível especificar um máximo de cinco tags para uma automação.

Tipo: MapList

Obrigatório: Não

TargetLocations

Um local é uma combinação de Regiões da AWS e/ou Contas da AWS onde você deseja executar a automação. Um número mínimo de 1 item deve ser especificado e um número máximo de 100 itens pode ser especificado.

Tipo: MapList

Obrigatório: Não

TargetMaps

Uma lista de mapeamentos de valor-chave de parâmetros do documento para recursos de destino. Ambos Targets e TargetMaps não podem ser especificados juntos.

Tipo: MapList

Obrigatório: Não

TargetParameterName

O nome do parâmetro usado como recurso de destino para a automação controlada por taxa. Obrigatório se você especificar Targets.

Tipo: string

Obrigatório: Não

Destinos

Uma lista de mapeamentos de valor-chave para recursos de destino. Obrigatório se você especificar TargetParameterName.

Tipo: MapList

Obrigatório: Não

Saída
Saída

O resultado gerado pela automação secundária. Você pode fazer referência à saída usando o seguinte formato: Secondary_Automation_Step_Name.Output

Tipo: StringList

Exemplo:

- name: launchNewWindowsInstance action: 'aws:executeAutomation' onFailure: Abort inputs: DocumentName: launchWindowsInstance nextStep: getNewInstanceRootVolume - name: getNewInstanceRootVolume action: 'aws:executeAwsApi' onFailure: Abort inputs: Service: ec2 Api: DescribeVolumes Filters: - Name: attachment.device Values: - /dev/sda1 - Name: attachment.instance-id Values: - '{{launchNewWindowsInstance.Output}}' outputs: - Name: rootVolumeId Selector: '$.Volumes[0].VolumeId' Type: String nextStep: snapshotRootVolume - name: snapshotRootVolume action: 'aws:executeAutomation' onFailure: Abort inputs: DocumentName: AWS-CreateSnapshot RuntimeParameters: VolumeId: - '{{getNewInstanceRootVolume.rootVolumeId}}' Description: - 'Initial root snapshot for {{launchNewWindowsInstance.Output}}'
ExecutionId

O ID da automação secundária.

Tipo: string

Status

O status da automação secundária.

Tipo: string