

# Criar um conjunto de alterações para uma pilha do CloudFormation
<a name="using-cfn-updating-stacks-changesets-create"></a>

Para criar um conjunto de alterações para uma pilha em execução, envie as alterações que deseja fazer fornecendo um modelo modificado, novos valores de parâmetros de entrada, ou ambos. O CloudFormation gera um conjunto de alterações comparando sua pilha com as alterações enviadas.

É possível modificar um modelo antes de criar o conjunto de alterações ou durante a criação do conjunto de alterações.

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

**Para criar um conjunto de alterações**

1. Abra o console do CloudFormation em [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

1. Na barra de navegação na parte superior da tela, escolha sua Região da AWS.

1. Na página **Pilhas**, escolha a pilha em execução para a qual você deseja criar um conjunto de alterações.

1. No painel de detalhes da pilha, escolha **Ações de pilha** e selecione **Criar um conjunto de alterações**.

1. Na página **Create change set for {{stack-name}}** (Criar conjunto de alterações para nome-pilha), execute um dos seguintes procedimentos para modificar os valores do parâmetro de entrada, especificar a localização de um modelo de atualização ou modificar o modelo:    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets-create.html)

1. Na página **Especificar detalhes da pilha**, especifique um nome para o conjunto de alterações e, opcionalmente, especifique uma descrição do conjunto de alterações para identificar sua finalidade na seção **Visão geral**. Se o seu modelo contém parâmetros, na página **Specify stack details (Especificar detalhes da pilha)**, insira ou modifique os valores do parâmetro de entrada aplicáveis e escolha **Next (Próximo)**.

   Se você estiver reutilizando o modelo da pilha, o CloudFormation preencherá cada parâmetro com o valor atual nela, com exceção dos parâmetros declarados com o atributo `NoEcho`. Para usar os valores existentes para esses parâmetros, selecione **Use existing value (Usar valor existente)**.

   Para obter mais informações sobre o uso de `NoEcho` para ocultar informações confidenciais e sobre o uso de parâmetros dinâmicos para gerenciar segredos, consulte a prática recomendada [Não incorporar credenciais em seus modelos](security-best-practices.md#creds).

1. Na página **Configurar opções da pilha**, atualize as tags da pilha, o perfil de serviço do IAM, a política da pilha, a configuração de reversão, o tópico de notificação do Amazon SNS (se aplicável) ou conjunto de alterações.
**nota**  
Os conjuntos de alterações para pilhas aninhadas são **habilitados** por padrão, o que criará conjuntos de alterações para todas as pilhas aninhadas especificadas em seu modelo. Para criar um conjunto de alterações apenas para a pilha atual, escolha **Disabled (Desabilitado)**. Para obter mais informações sobre os conjuntos de alterações para pilhas aninhadas, consulte [Conjuntos de alteração para pilhas aninhadas](change-sets-for-nested-stacks.md).

1. Se o modelo incluir recursos do IAM, escolha **Reconheço que o CloudFormation pode criar recursos do IAM** em **Recursos**. Os recursos do IAM podem modificar as permissões na sua conta da AWS. Analise esses recursos para garantir que você está permitindo apenas as ações que deseja. Para obter mais informações, consulte [Confirmar recursos do IAM em modelos do CloudFormation](control-access-with-iam.md#using-iam-capabilities).

1. Escolha **Próximo** para continuar.

1. Na página **Review {{stack-name}}** (Revisar nome-pilha), revise as alterações para esse conjunto de alterações.

1. Selecione **Enviar**.

   Você será redirecionado para a guia **Changes (Alterações)** da página de detalhes do conjunto de alterações. Enquanto o CloudFormation está gerando o conjunto de alterações, o status do conjunto de alteações é `CREATE_PENDING`. Após criar o conjunto de alterações, o CloudFormation define o status como `CREATE_COMPLETE`. Na seção **Alterações**, o CloudFormation relaciona todas as alterações que serão feitas em sua pilha. Para obter mais informações, consulte [Visualizar um conjunto de alterações para uma pilha do CloudFormation](using-cfn-updating-stacks-changesets-view.md).

   Escolha **Visualizar detalhes** na coluna **Alterações no nível da propriedade** para visualizar as alterações feitas no nível da propriedade.

   Se o CloudFormation falhar na criação do conjunto de alterações (exibindo o status `FAILED`), corrija o erro exibido no campo **Status** e recrie o conjunto de alterações.

1. Depois de confirmar que as alterações parecem estar corretas, escolha **Executar conjunto de alterações**

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

**Para criar um conjunto de alterações para pilhas aninhadas**

1. Abra o console do CloudFormation em [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

1. Na barra de navegação na parte superior da tela, escolha sua Região da AWS.

1. Na página **Pilhas**, selecione a pilha em execução para a qual você deseja criar um conjunto de alterações.

1. No painel de detalhes da pilha, escolha **Ações de pilha** e selecione **Criar um conjunto de alterações**.

1. Na página **Create change set for {{stack-name}}** (Criar conjunto de alterações para nome-pilha), execute um dos seguintes procedimentos para modificar os valores do parâmetro de entrada, especificar a localização de um modelo de atualização ou modificar o modelo:    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets-create.html)

1. Na página **Especificar detalhes da pilha**, especifique um nome para o conjunto de alterações e, opcionalmente, especifique uma descrição do conjunto de alterações para identificar sua finalidade na seção **Visão geral**. Se o seu modelo contém parâmetros, na página **Specify stack details (Especificar detalhes da pilha)**, insira ou modifique os valores do parâmetro de entrada aplicáveis e escolha **Next (Próximo)**.

   Se você estiver reutilizando o modelo da pilha, o CloudFormation preencherá cada parâmetro com o valor atual nela, com exceção dos parâmetros declarados com o atributo `NoEcho`. Para usar os valores existentes para esses parâmetros, selecione **Use existing value (Usar valor existente)**.

   Para obter mais informações sobre o uso de `NoEcho` para ocultar informações confidenciais e sobre o uso de parâmetros dinâmicos para gerenciar segredos, consulte a melhor prática [Não incorporar credenciais em seus modelos](security-best-practices.md#creds).

1. Na página **Configurar opções da pilha**, atualize as tags da pilha, o perfil de serviço do IAM, a política da pilha, a configuração de reversão, o tópico de notificação do Amazon SNS (se aplicável) ou conjunto de alterações. Para obter mais informações, consulte [Configurar opções da pilha](cfn-console-create-stack.md#configure-stack-options).
**nota**  
Os conjuntos de alterações para pilhas aninhadas são **habilitados** por padrão, o que criará conjuntos de alterações para todas as pilhas aninhadas especificadas em seu modelo. Para obter mais informações sobre os conjuntos de alterações para pilhas aninhadas, consulte [Conjuntos de alteração para pilhas aninhadas](change-sets-for-nested-stacks.md).

1. Se o modelo incluir recursos do IAM, escolha **Reconheço que o CloudFormation pode criar recursos do IAM** em **Recursos**. Os recursos do IAM podem modificar as permissões na sua conta da AWS. Analise esses recursos para garantir que você está permitindo apenas as ações que deseja. Para obter mais informações, consulte [Confirmar recursos do IAM em modelos do CloudFormation](control-access-with-iam.md#using-iam-capabilities).

1. Escolha **Próximo** para continuar.

1. Na página **Review {{stack-name}}** (Revisar nome-pilha), revise as alterações para esse conjunto de alterações.

1. Selecione **Enviar**.
**nota**  
Os conjuntos de alterações no nível da propriedade do CloudFormation não resolvem referências entre pilhas quando você cria conjuntos de alterações para pilhas aninhadas. Os conjuntos de alterações poderão marcar recursos em uma pilha subordinada para substituição condicional se eles referenciarem a saída de uma pilha superior e ela tiver sido modificada

   Você será redirecionado para a guia **Changes (Alterações)** da página de detalhes do conjunto de alterações. Enquanto o CloudFormation está gerando o conjunto de alterações, o status do conjunto de alteações é `CREATE_PENDING`. Após criar o conjunto de alterações, o CloudFormation define o status como `CREATE_COMPLETE`. Na seção **Alterações**, o CloudFormation relaciona todas as alterações que serão feitas em sua pilha. Para obter mais informações, consulte [Visualizar um conjunto de alterações para uma pilha do CloudFormation](using-cfn-updating-stacks-changesets-view.md).

   Se o CloudFormation falhar na criação do conjunto de alterações (exibindo o status `FAILED`), corrija o erro exibido no campo **Status** e recrie o conjunto de alterações.

1. Depois de confirmar que as alterações parecem estar corretas, escolha **Executar conjunto de alterações**

------

**Para criar um conjunto de alterações (AWS CLI)**
+ Use o 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).

  Você envia suas alterações como opções de comando. Você pode especificar novos valores de parâmetros, um modelo modificado, ou ambos. Por exemplo, o comando a seguir cria um conjunto de alterações chamado `SampleChangeSet` para a pilha `MyStack`. O conjunto de alterações usa o modelo da pilha atual, mas com um valor diferente para o 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"}}
  ```