aws:createStack: crear una pila de AWS CloudFormation - AWS Systems Manager

aws:createStack: crear una pila de AWS CloudFormation

Crea una pila de AWS CloudFormation a partir de una plantilla.

Para obtener información adicional acerca de la creación de pilas de CloudFormation, consulte CreateStack en la Referencia de la API de AWS CloudFormation.

Entrada

YAML
name: makeStack action: aws:createStack maxAttempts: 1 onFailure: Abort inputs: Capabilities: - CAPABILITY_IAM StackName: myStack TemplateURL: http://s3.amazonaws.com/DOC-EXAMPLE-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/DOC-EXAMPLE-BUCKET/myStackTemplate", "TimeoutInMinutes": 5, "Parameters": [ { "ParameterKey": "LambdaRoleArn", "ParameterValue": "{{LambdaAssumeRole}}" }, { "ParameterKey": "createdResource", "ParameterValue": "createdResource-{{automation:EXECUTION_ID}}" } } }
Capacidades

Una lista de valores que especifica para que CloudFormation pueda crear determinadas pilas. Algunas plantillas de pila incluyen recursos que pueden afectar los permisos de Cuenta de AWS. Para estas pilas, debe reconocer explícitamente sus capacidades especificando este parámetro.

Los valores válidos son CAPABILITY_IAM, CAPABILITY_NAMED_IAM y CAPABILITY_AUTO_EXPAND.

CAPABILITY_IAM y CAPABILITY_NAMED_IAM

Si tiene recursos de IAM, puede especificar cualquiera de las dos capacidades. Si tiene recursos de IAM con nombres personalizados, debe especificar CAPABILITY_NAMED_IAM. Si no especifica este parámetro, esta acción devuelve un error InsufficientCapabilities. Los siguientes recursos requieren que especifique CAPABILITY_IAM o CAPABILITY_NAMED_IAM.

Si su plantilla de pila contiene estos recursos, le recomendamos que revise todos los permisos asociados con ellos y edite sus permisos, si es necesario.

Para obtener más información, consulte Reconocimiento de recursos de IAM en plantillas de AWS CloudFormation.

CAPABILITY_AUTO_EXPAND

Algunas plantillas contienen macros. Las macros realizan procesamiento personalizado en las plantillas; esto puede incluir desde acciones sencillas como operaciones de búsqueda y reemplazo hasta amplias transformaciones de plantillas completas. Debido a esto, los usuarios suelen crear un conjunto de cambios a partir de la plantilla procesada, de modo que puedan revisar los cambios resultantes de las macros antes de proceder a crear la pila. Si la plantilla de pila contiene una o más macros y decide crear una pila directamente a partir de la plantilla procesada, sin revisar primero los cambios resultantes en un conjunto de cambios, deberá confirmar esta prestación.

Para obtener más información, consulte Uso de macros de AWS CloudFormation para realizar un procesamiento personalizado en plantillas en la Guía del usuario de AWS CloudFormation.

Tipo: matriz de cadenas

Valores válidos: CAPABILITY_IAM | CAPABILITY_NAMED_IAM | CAPABILITY_AUTO_EXPAND

Requerido: no

ClientRequestToken

Identificador exclusivo de esta solicitud CreateStack. Especifique este token si establece maxAttempts en este paso en un valor mayor que 1. Al especificar este token, CloudFormation sabe que no está intentando crear una pila nueva con el mismo nombre.

Tipo: cadena

Requerido: no

Limitaciones de longitud: longitud mínima de 1. Longitud máxima de 128.

Patrón: [a-zA-Z0-9][-a-zA-Z0-9]*

DisableRollback

Se configura en true para desactivar la restauración de la pila si se produce un error al crearla.

Condicional: puede especificar el parámetro DisableRollback o OnFailure, pero no ambos.

Valor predeterminado: false

Tipo: Booleano

Requerido: no

NotificationARNs

Los ARN de temas de Amazon Simple Notification Service (Amazon SNS) utilizados para publicar eventos relacionados con la pila. Puede encontrar ARN de temas de SNS con la consola de Amazon SNS, https://console.aws.amazon.com/sns/v3/home.

Tipo: matriz de cadenas

Miembros de la matriz: número máximo de 5 elementos.

Requerido: no

OnFailure

Determina la acción que se realizará si se produce un error en la creación de la pila. Debe especificar DO_NOTHING, ROLLBACK o DELETE.

Condicional: puede especificar el parámetro OnFailure o DisableRollback, pero no ambos.

Valor predeterminado: ROLLBACK

Tipo: cadena

Valores válidos: DO_NOTHING | ROLLBACK | DELETE

Requerido: no

Parámetros

Una lista de estructuras Parameter que especifican los parámetros de entrada de la pila. Para obtener más información, consulte el tipo de datos Parameter.

Tipo: matriz de objetos Parameter

Requerido: no

ResourceTypes

Los tipos de recurso de plantilla para los que tiene permiso para trabajar con ellos para esta acción de creación de la pila. Por ejemplo: AWS::EC2::Instance, AWS::EC2::* o Custom::MyCustomInstance. Utilice la siguiente sintaxis para describir los tipos de recurso de plantilla.

  • Para todos los recursos de AWS:

    AWS::*
  • Para todos los recursos personalizados:

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

    Custom::logical_ID
  • Para todos los recursos de un Servicio de AWS concreto:

    AWS::service_name::*
  • Para un recurso de AWS específico:

    AWS::service_name::resource_logical_ID

Si la lista de tipos de recursos no incluye un recurso que está va a crear, se produce un error en la creación de la pila. De forma predeterminada, CloudFormation concede permisos a todos los tipos de recursos. IAM utiliza este parámetro para las claves de condición específicas de CloudFormation en las políticas de IAM. Para obtener más información, consulte Control del acceso con AWS Identity and Access Management.

Tipo: matriz de cadenas

Limitaciones de longitud: longitud mínima de 1. La longitud máxima es de 256 caracteres.

Requerido: no

RoleARN

El nombre de recurso de Amazon (ARN) de un rol de (IAM) que CloudFormation asume al crear la pila. CloudFormation utiliza las credenciales del rol para realizar llamadas en su nombre. CloudFormation siempre utiliza este rol para todas las operaciones futuras en la pila. Siempre que los usuarios tengan permiso para operar en la pila, CloudFormation utiliza este rol, aunque los usuarios no tengan permiso para transmitirlo. Asegúrese de que el rol concede la menor cantidad de privilegios.

Si no especifica un valor, CloudFormation utiliza el rol que se había asociado anteriormente a la pila. Si no hay ningún rol disponible, CloudFormation utiliza una sesión temporal que se genera a partir de sus credenciales de usuario.

Tipo: cadena

Limitaciones de longitud: longitud mínima de 20. La longitud máxima es de 2048 caracteres.

Requerido: no

StackName

El nombre que está asociado a la pila. El nombre debe ser único en la región en la que se crea la pila.

nota

El nombre de una pila solo puede contener caracteres alfanuméricos (con distinción de mayúsculas y minúsculas) y guiones. Debe comenzar con un carácter alfabético y no puede tener más de 128 caracteres.

Tipo: cadena

Obligatorio: sí

StackPolicyBody

Estructura que contiene el cuerpo de políticas de la pila. Para obtener más información, consulte Evitar actualizaciones en los recursos de la pila.

Condicional: puede especificar el parámetro StackPolicyBody o StackPolicyURL, pero no ambos.

Tipo: cadena

Limitaciones de longitud: longitud mínima de 1. La longitud máxima es de 16384 caracteres.

Requerido: no

StackPolicyURL

Ubicación de un archivo que contiene la política de la pila. La URL debe apuntar a una política ubicada en un bucket de &S3; en la misma región que el stack. El tamaño de archivo máximo permitido para la política de la pila es de 16 KB.

Condicional: puede especificar el parámetro StackPolicyBody o StackPolicyURL, pero no ambos.

Tipo: cadena

Limitaciones de longitud: longitud mínima de 1. La longitud máxima es de 1350 caracteres.

Requerido: no

Etiquetas

Pares clave-valor para asociar con este stack. CloudFormation también propaga estas etiquetas a los recursos que se crean en la pila. Puede especificar un número máximo de 10 etiquetas.

Tipo: matriz de objetos Tag

Requerido: no

TemplateBody

Estructura que contiene el cuerpo de la plantilla con una longitud mínima de 1 byte y una longitud máxima de 51.200 bytes. Para obtener más información, consulte Anatomía de la plantilla.

Condicional: puede especificar el parámetro TemplateBody o TemplateURL, pero no ambos.

Tipo: cadena

Limitaciones de longitud: longitud mínima de 1.

Requerido: no

TemplateURL

Ubicación de un archivo que contiene el cuerpo de la plantilla. La URL debe apuntar a una plantilla que se encuentre en un bucket de S3. El tamaño máximo permitido para la plantilla es de 460.800 bytes. Para obtener más información, consulte Anatomía de la plantilla.

Condicional: puede especificar el parámetro TemplateBody o TemplateURL, pero no ambos.

Tipo: cadena

Limitaciones de longitud: longitud mínima de 1. La longitud máxima es de 1024 caracteres.

Requerido: no

TimeoutInMinutes

Periodo de tiempo que puede transcurrir antes de que el estado de la pila se convierta en CREATE_FAILED. Si no se ha establecido DisableRollback o se ha establecido en false, se restaurará la pila.

Tipo: entero

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

Requerido: no

Salidas

StackId

Identificador único de la pila.

Tipo: cadena

StackStatus

Estado actual de la pila.

Tipo: cadena

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

Obligatorio: sí

StackStatusReason

Mensaje de éxito o error asociado con el estado de la pila.

Tipo: cadena

Requerido: no

Para obtener más información, consulte CreateStack.

Consideraciones de seguridad

Para poder usar la acción aws:createStack, debe asignar la siguiente política al rol de asunción de Automation de IAM. Para obtener más información sobre el rol de asunción, consulte Tarea 1: crear un rol de servicio para Automation.

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