

# Creación de un conjunto de cambios para una pila de CloudFormation
<a name="using-cfn-updating-stacks-changesets-create"></a>

Para crear un conjunto de cambios de una pila en ejecución, envíe los cambios que quiera hacer proporcionando una plantilla modificada, nuevos valores de parámetros de entrada o ambos. CloudFormation genera un conjunto de cambios comparando la pila con los cambios que envió.

Puede modificar una plantilla antes de crear el conjunto de cambios o durante el proceso de creación del conjunto de cambios.

------
#### [ Create a change set (console) ]

**Creación de un conjunto de cambios**

1. Abra la consola de CloudFormation en [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

1. En la barra de navegación de la parte superior de la pantalla, elija la Región de AWS.

1. En la página **Pilas**, seleccione la pila en ejecución para la que desea crear un conjunto de cambios.

1. En el panel de detalles de la pila, seleccione **Acciones de pila** y, a continuación, seleccione **Crear conjunto de cambios para pila actual**.

1. En la página **Create change set for *nombre-pila*(Crear conjunto de cambios para nombre-pila)**, realice una de las siguientes operaciones para modificar los valores de los parámetros de entrada, especifique la ubicación de una plantilla actualizada o modifique la plantilla:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets-create.html)

1. En la página **Especificar detalles de la pila**, especifique el nombre de la pila para el conjunto de cambios y, de manera opcional, agregue una descripción del conjunto para identificar su propósito en la sección **Información general**. Si la plantilla incluye parámetros, en la página **Specify stack details (Especificar detalles de la pila)**, ingrese o modifique los valores de parámetros de entrada pertinentes y, a continuación, seleccione **Next (Siguiente)**.

   Si reutiliza la plantilla de la pila, CloudFormation rellenará cada parámetro con el valor actual en la pila, con la excepción de los parámetros declarados con el atributo `NoEcho`. Para utilizar los valores existentes para esos parámetros, seleccione **Use existing value (Usar valor existente)**.

   Para obtener más información sobre el uso de `NoEcho` para enmascarar información confidencial y el uso de parámetros dinámicos para la administración de secretos, consulte la práctica recomendada de [No integre credenciales en sus plantillas](security-best-practices.md#creds).

1. En la página **Configurar opciones de pila**, actualice las etiquetas de la pila, el rol de servicio de IAM, la política de pila, la configuración de reversión, el tema de notificación de Amazon SNS (si corresponde) o cambie los conjuntos.
**nota**  
Los conjuntos de cambio para las pilas anidadas están, de manera predeterminada, **Habilitadas**, lo cual crea conjuntos de cambio para todas las pilas anidadas especificadas en la plantilla. Para crear un conjunto de cambios solo para la pila actual, seleccione **Disabled (Desabilitado)**. Para obtener más información sobre los conjuntos de cambios para las pilas anidadas, consulte [Conjuntos de cambios para pilas anidadas](change-sets-for-nested-stacks.md).

1. Si la plantilla incluye recursos de IAM, en **Capacidades** seleccione **Acepto que CloudFormation pueda crear recursos de IAM**. Los recursos de IAM pueden modificar los permisos de su cuenta de AWS; revise estos recursos para garantizar que solo se le permitan las acciones que planea. Para obtener más información, consulte [Reconocimiento de recursos de IAM en plantillas de CloudFormation](control-access-with-iam.md#using-iam-capabilities).

1. Elija **Siguiente** para continuar.

1. En la página **Review *stack-name* (Revisar nombre-pila)**, revise los cambios del conjunto de cambios.

1. Seleccione **Submit (Enviar)**.

   Se le redirigirá a la pestaña **Changes (Cambios)** de la página de detalles del conjunto de cambios. Mientras CloudFormation genera un conjunto de cambios, el estado del conjunto es `CREATE_PENDING`. Una vez que crea el conjunto de cambios, CloudFormation establece el estado como `CREATE_COMPLETE`. En la sección **Changes (Cambios)**, CloudFormation enumera todos los cambios que realizará en la pila. Para obtener más información, consulte [Visualización de un conjunto de cambios para una pila de CloudFormation](using-cfn-updating-stacks-changesets-view.md).

   Seleccione **Ver detalles** en la columna **Cambios a nivel de propiedad** para poder ver los cambios que se realizaron en el nivel de propiedad.

   Si CloudFormation no logra crear el conjunto de cambios (informa un estado `FAILED`), arregle el error que se muestra en el campo **Status (Estado)** y cree nuevamente el conjunto de cambios.

1. Después de controlar los cambios, seleccione **Ejecutar conjunto de cambios**.

------
#### [ Create a change set for nested stacks (console) ]

**Creación de un conjunto de cambios para pilas anidadas**

1. Abra la consola de CloudFormation en [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

1. En la barra de navegación de la parte superior de la pantalla, elija la Región de AWS.

1. En la página **Pilas**, seleccione la pila en ejecución para la que desea crear un conjunto de cambios.

1. En el panel de detalles de la pila, seleccione **Acciones de pila** y, a continuación, seleccione **Crear conjunto de cambios para pila actual**.

1. En la página **Create change set for *nombre-pila*(Crear conjunto de cambios para nombre-pila)**, realice una de las siguientes operaciones para modificar los valores de los parámetros de entrada, especifique la ubicación de una plantilla actualizada o modifique la plantilla:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets-create.html)

1. En la página **Especificar detalles de la pila**, especifique el nombre de la pila para el conjunto de cambios y, de manera opcional, agregue una descripción del conjunto para identificar su propósito en la sección **Información general**. Si la plantilla incluye parámetros, en la página **Specify stack details (Especificar detalles de la pila)**, ingrese o modifique los valores de parámetros de entrada pertinentes y, a continuación, seleccione **Next (Siguiente)**.

   Si reutiliza la plantilla de la pila, CloudFormation rellenará cada parámetro con el valor actual en la pila, con la excepción de los parámetros declarados con el atributo `NoEcho`. Para utilizar los valores existentes para esos parámetros, seleccione **Use existing value (Usar valor existente)**.

   Para obtener más información sobre el uso de `NoEcho` para enmascarar información confidencial y el uso de los parámetros dinámicos para la administración de secretos, consulte la práctica recomendada de [No integre credenciales en sus plantillas](security-best-practices.md#creds).

1. En la página **Configurar opciones de pila**, actualice las etiquetas de la pila, el rol de servicio de IAM, la política de pila, la configuración de reversión, el tema de notificación de Amazon SNS (si corresponde) o cambie los conjuntos. Para obtener más información, consulte [Configurar las opciones la pila](cfn-console-create-stack.md#configure-stack-options).
**nota**  
Los conjuntos de cambio para las pilas anidadas están, de manera predeterminada, **Habilitadas**, lo cual crea conjuntos de cambio para todas las pilas anidadas especificadas en la plantilla. Para obtener más información sobre los conjuntos de cambios para las pilas anidadas, consulte [Conjuntos de cambios para pilas anidadas](change-sets-for-nested-stacks.md).

1. Si la plantilla incluye recursos de IAM, en **Capacidades** seleccione **Acepto que CloudFormation pueda crear recursos de IAM**. Los recursos de IAM pueden modificar los permisos de su cuenta de AWS; revise estos recursos para garantizar que solo se le permitan las acciones que planea. Para obtener más información, consulte [Reconocimiento de recursos de IAM en plantillas de CloudFormation](control-access-with-iam.md#using-iam-capabilities).

1. Elija **Siguiente** para continuar.

1. En la página **Review *stack-name* (Revisar nombre-pila)**, revise los cambios del conjunto de cambios.

1. Elija **Enviar**.
**nota**  
Los conjuntos de cambios a nivel de propiedad de CloudFormation no resuelven las referencias entre pilas al crear conjuntos de cambios para pilas anidadas. Los conjuntos de cambios pueden marcar los recursos de una pila secundaria para su reemplazo condicional si hacen referencia a la salida de una pila principal y esta última se ha modificado

   Se le redirigirá a la pestaña **Changes (Cambios)** de la página de detalles del conjunto de cambios. Mientras CloudFormation genera un conjunto de cambios, el estado del conjunto es `CREATE_PENDING`. Una vez que crea el conjunto de cambios, CloudFormation establece el estado como `CREATE_COMPLETE`. En la sección **Changes (Cambios)**, CloudFormation enumera todos los cambios que realizará en la pila. Para obtener más información, consulte [Visualización de un conjunto de cambios para una pila de CloudFormation](using-cfn-updating-stacks-changesets-view.md).

   Si CloudFormation no logra crear el conjunto de cambios (informa un estado `FAILED`), arregle el error que se muestra en el campo **Status (Estado)** y cree nuevamente el conjunto de cambios.

1. Después de controlar los cambios, seleccione **Ejecutar conjunto de cambios**.

------

**Creación de un conjunto de cambios (AWS CLI)**
+ Utilice el comando [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/create-change-set.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/create-change-set.html).

  Envíe los cambios como opciones de comando. Puede especificar nuevos valores de parámetros, una plantilla modificada o ambos. Por ejemplo, el comando que se muestra a continuación crea un conjunto de cambios con el nombre `SampleChangeSet` para la pila `MyStack`. El conjunto de cambios utiliza la plantilla de la pila actual, pero con un valor diferente para el parámetro `Purpose`:

  ```
  aws cloudformation create-change-set --stack-name MyStack \
      --change-set-name SampleChangeSet --use-previous-template \
      --parameters \
        ParameterKey="InstanceType",UsePreviousValue=true ParameterKey="KeyPairName",UsePreviousValue=true ParameterKey="Purpose",ParameterValue="production"
  ```