aws:createStack: cria uma pilha do AWS CloudFormation - AWS Systems Manager

aws:createStack: cria uma pilha do AWS CloudFormation

Cria uma pilha do AWS CloudFormation a partir de um modelo.

Para obter informações adicionais sobre como criar pilhas do CloudFormation, consulte CreateStack na Referência da API no AWS CloudFormation.

Entrada

YAML
name: makeStack action: aws:createStack maxAttempts: 1 onFailure: Abort inputs: Capabilities: - CAPABILITY_IAM StackName: myStack TemplateURL: http://s3.amazonaws.com/amzn-s3-demo-bucket/myStackTemplate TimeoutInMinutes: 5 Parameters: - ParameterKey: LambdaRoleArn ParameterValue: "{{LambdaAssumeRole}}" - ParameterKey: createdResource ParameterValue: createdResource-{{automation:EXECUTION_ID}}
JSON
{ "name": "makeStack", "action": "aws:createStack", "maxAttempts": 1, "onFailure": "Abort", "inputs": { "Capabilities": [ "CAPABILITY_IAM" ], "StackName": "myStack", "TemplateURL": "http://s3.amazonaws.com/amzn-s3-demo-bucket/myStackTemplate", "TimeoutInMinutes": 5, "Parameters": [ { "ParameterKey": "LambdaRoleArn", "ParameterValue": "{{LambdaAssumeRole}}" }, { "ParameterKey": "createdResource", "ParameterValue": "createdResource-{{automation:EXECUTION_ID}}" } } }
Capacidades

Uma lista de valores que você especifica antes que o CloudFormation possa criar certas pilhas. Alguns modelos de pilha podem incluir recursos que podem afetar as permissões na sua Conta da AWS. Para essas pilhas, você deve confirmar explicitamente seus recursos especificando esse parâmetro.

Os valores válidos são CAPABILITY_IAM, CAPABILITY_NAMED_IAM e CAPABILITY_AUTO_EXPAND.

CAPABILITY_IAM e CAPABILITY_NAMED_IAM

Se você tiver recursos do IAM, poderá especificar qualquer recurso. Se tiver recursos do IAM com nomes personalizados, você deverá especificar CAPABILITY_NAMED_IAM. Se você não especificar esse parâmetro, essa ação retornará um erro InsufficientCapabilities. Os seguintes recursos exigem especificar CAPABILITY_IAM ou CAPABILITY_NAMED_IAM.

Se o seu modelo de pilha contiver esses recursos, recomendamos que você reveja todas as permissões associadas a eles e edite suas permissões, se necessário.

Para obter mais informações, consulte o tópico sobre como Reconhecer recursos do IAM em modelos do AWS CloudFormation.

CAPABILITY_AUTO_EXPAND

Alguns modelos contêm macros. Macros executam o processamento personalizado em modelos. Isso inclui ações simples, como operações de localizar e substituir até transformações extensas de modelos inteiros. Por isso, os usuários geralmente criam um conjunto de alterações no modelo processado para que seja possível revisar as alterações resultantes das macros antes de criar a pilha de fato. Se o modelo de pilha tiver uma ou mais macros, e você optar por criar uma pilha diretamente do modelo processado sem primeiro revisar as alterações resultantes em um conjunto de alterações, será necessário reconhecer esse recurso.

Para obter mais informações, consulte Usar macros do AWS CloudFormation para executar processamento personalizado em modelos no Manual do usuário do AWS CloudFormation.

Tipo: matriz de strings

Valores Válidos: CAPABILITY_IAM | CAPABILITY_NAMED_IAM | CAPABILITY_AUTO_EXPAND

Obrigatório: Não

ClientRequestToken

Um identificador exclusivo para essa solicitação CreateStack. Especifique este token se definir maxAttempts nesta etapa como um valor maior que 1. Especificando esse token, o CloudFormation saberá que você não está tentando criar uma nova pilha com o mesmo nome.

Tipo: string

Obrigatório: Não

Restrições de comprimento: tamanho mínimo de 1. O tamanho máximo é 128.

Padrão: [a-zA-Z0-9][-a-zA-Z0-9]*

DisableRollback

Defina como true para desativar a reversão da pilha se a criação da pilha tiver falhado.

Condicional: é possível especificar o parâmetro DisableRollback ou OnFailure, mas não ambos.

Padrão: false

Tipo: Booliano

Obrigatório: Não

NotificationARNs

Os ARNs de tópicos do Amazon Simple Notification Service (Amazon SNS) para publicar eventos relacionados à pilha. Você pode encontrar ARNs de tópicos do SNS usando o console do Amazon SNS, https://console.aws.amazon.com/sns/v3/home.

Tipo: matriz de strings

Membros da matriz: número máximo de 5 itens.

Obrigatório: Não

OnFailure

Determina a ação a ser realizada se a criação da pilha falhar. Você deve especificar DO_NOTHING, ROLLBACK ou DELETE.

Condicional: é possível especificar o parâmetro OnFailure ou DisableRollback, mas não ambos.

Padrão: ROLLBACK

Tipo: string

Valores válidos: DO_NOTHING | ROLLBACK | DELETE

Obrigatório: Não

Parâmetros

Uma lista de estruturas Parameter que especificam parâmetros de entrada para a pilha. Para obter mais informações, consulte o tipo de dados Parameter.

Tipo: matriz de objetos Parameter

Obrigatório: Não

ResourceTypes

Os tipos de recursos de modelo com os quais você tem permissões para trabalhar para essa ação de criação de pilha. Por exemplo: AWS::EC2::Instance, AWS::EC2::* ou Custom::MyCustomInstance. Use a seguinte sintaxe para descrever tipos de recursos de modelo.

  • Para todos os recursos da AWS:

    AWS::*
  • Para todos os recursos personalizados:

    Custom::*
  • Para um recurso personalizado específico:

    Custom::logical_ID
  • Para todos os recursos de um AWS service (Serviço da AWS) específico:

    AWS::service_name::*
  • Para um recurso da AWS específico:

    AWS::service_name::resource_logical_ID

Se a lista de tipos de recursos não incluir um recurso que você está criando, a criação da pilha falhará. Por padrão, o CloudFormation concede permissões a todos os tipos de recursos. O IAM usa esse parâmetro para chaves de condição específicas do CloudFormation nas políticas do IAM. Para obter mais informações, consulte Controlar o acesso com o AWS Identity and Access Management.

Tipo: matriz de strings

Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 256.

Obrigatório: Não

RoleARN

O nome do recurso da Amazon (ARN) de uma função do IAM assumida pelo CloudFormation para criar a pilha. O CloudFormation usa as credenciais da função para fazer chamadas em seu nome. O CloudFormation sempre usará essa função para todas as futuras operações na pilha. Desde que os usuários tenham permissão para operar na pilha, o CloudFormation usará essa função mesmo que os usuários não tenham permissão para transmiti-la. Certifique-se de que a função conceda a menor quantidade de privilégios.

Se você não especificar um valor, o CloudFormation usará a função anteriormente associada à pilha. Se nenhuma função estiver disponível, o CloudFormation usará uma sessão temporária gerada a partir das suas credenciais de usuário.

Tipo: string

Restrições de tamanho: tamanho mínimo 20. Tamanho máximo de 2.048.

Obrigatório: Não

StackName

O nome que está associado à pilha. O nome deve ser exclusivo na região na qual você estiver criando a pilha.

nota

Um nome de pilha pode conter apenas caracteres alfanuméricos (sensíveis a maiúsculas e minúsculas) e hífens. Ele deve começar com um caractere alfabético e não pode ter mais de 128 caracteres.

Tipo: string

Obrigatório: Sim

StackPolicyBody

Estrutura que contém o corpo da política de pilha. Para obter mais informações, consulte o tópico sobre como Prevenir atualizações para recursos de pilha.

Condicional: é possível especificar o parâmetro StackPolicyBody ou StackPolicyURL, mas não ambos.

Tipo: string

Restrições de comprimento: tamanho mínimo de 1. Tamanho máximo de 16384.

Obrigatório: Não

StackPolicyURL

Localização de um arquivo contendo a política de pilha. O URL deve apontar para uma política localizada em um bucket do S3 na mesma região que a pilha. O tamanho do arquivo máximo permitido para a política de pilha é de 16 KB.

Condicional: é possível especificar o parâmetro StackPolicyBody ou StackPolicyURL, mas não ambos.

Tipo: string

Restrições de comprimento: tamanho mínimo de 1. Tamanho máximo de 1350.

Obrigatório: Não

Tags

Pares de chave/valor para associar a essa pilha. O CloudFormation também propaga essas tags para os recursos criados na pilha. Você pode especificar um número máximo de 10 tags.

Tipo: matriz de objetos Tag

Obrigatório: Não

TemplateBody

Estrutura que contém o corpo do modelo com um comprimento mínimo de 1 byte e um comprimento máximo de 51.200 bytes. Para obter mais informações, consulte Anatomia do modelo.

Condicional: é possível especificar o parâmetro TemplateBody ou TemplateURL, mas não ambos.

Tipo: string

Restrições de comprimento: tamanho mínimo de 1.

Obrigatório: Não

TemplateURL

Localização de um arquivo contendo o corpo do modelo. O URL deve apontar para um modelo que esteja localizado em um bucket do S3. O tamanho máximo permitido para o modelo é 460.800 bytes. Para obter mais informações, consulte Anatomia do modelo.

Condicional: é possível especificar o parâmetro TemplateBody ou TemplateURL, mas não ambos.

Tipo: string

Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 1.024.

Obrigatório: Não

TimeoutInMinutes

O tempo permitido antes que o status da pilha se torne CREATE_FAILED. Se DisableRollback não estiver definido ou estiver definido como false, a pilha será revertida.

Tipo: número inteiro

Intervalo válido: valor mínimo de 1.

Obrigatório: Não

Outputs

StackId

Identificador exclusivo da pilha.

Tipo: string

StackStatus

Status atual da pilha.

Tipo: string

Valores Válidos: CREATE_IN_PROGRESS | CREATE_FAILED | CREATE_COMPLETE | ROLLBACK_IN_PROGRESS | ROLLBACK_FAILED | ROLLBACK_COMPLETE | DELETE_IN_PROGRESS | DELETE_FAILED | DELETE_COMPLETE | UPDATE_IN_PROGRESS | UPDATE_COMPLETE_CLEANUP_IN_PROGRESS | UPDATE_COMPLETE | UPDATE_ROLLBACK_IN_PROGRESS | UPDATE_ROLLBACK_FAILED | UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS | UPDATE_ROLLBACK_COMPLETE | REVIEW_IN_PROGRESS

Obrigatório: Sim

StackStatusReason

Mensagem de sucesso ou falha associada ao status da pilha.

Tipo: string

Obrigatório: Não

Para obter mais informações, consulte CreateStack.

Considerações sobre segurança

Antes de poder usar a ação aws:createStack, você deve atribuir a seguinte política à função assumida do Automation para IAM. Para obter mais informações sobre a função de admissão, consulte Tarefa 1: Criar uma função de serviço para a automação.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "sqs:*", "cloudformation:CreateStack", "cloudformation:DescribeStacks" ], "Resource":"*" } ] }