# CloudFormation

The AWS CloudFormation action lets you create, update and delete CF stacks on a push to branch, recurrently on a time interval, or manually on a click.

![Example pipeline with CloudFormation](/docs/deployments/aws/cloudformation/cloudformation-1.png 640x562)

<Hint type="tip">

If you are new to Buddy, check out our [workflow guides](/docs/basics/workflows.md) that will tell you how to build, test and deploy your type of application.

</Hint>

<Hint type="info">

<actionsBox name="CloudFormation" slug="cloudformation" />

</Hint>

## Configure pipeline in Buddy

1. Create a new project in Buddy and select your Git provider:

![Creating a new project](/docs/_global/create-new-project.png 640x366)

2. Add a new pipeline and configure the details: name, trigger mode, and branch from which you want to deploy.

![Adding a new pipeline](/docs/_global/add-new-pipeline.png 640x497)

## Configure AWS CloudFormation action

<Hint type="warning">

Before you add the action, make sure that your AWS user has [proper permissions](/docs/integrations/amazon-web-services/aws-policies.md) assigned and [full programmatic access to AWS](https://docs.aws.amazon.com/workspaces-web/latest/adminguide/getting-started-iam-user-access-keys.html).

</Hint>

1. Look up AWS on the action list and click **AWS CloudFormation** to add it to the pipeline:

![Amazon Web Services actions](/docs/deployments/aws/cloudformation/cloudformation-2.png 640x424)

2. Within the action, you first select the method you need and provide your CloudFormation stack's details to proceed. There are four methods available:

- Deploy 
- Create
- Update
- Delete

![AWS CloudFormation method select](/docs/deployments/aws/cloudformation/cloudformation-3.png 640x452)

3. Once you add the method, you will be able to adjust additional settings available within the action. The action has five configuration tabs in total:

- <u>Run</u> – here you [select the AWS integration](/docs/integrations/amazon-web-services/amazon.md) and provide the deployment command
- <u>Environment</u> – if your process requires specific dependencies, you can install them here. The files will stay cached in the container for future pipeline runs
- <u>Variables</u> – here you can view the variables created by your AWS integration, and create your own if required
- <u>Conditions</u> – here you configure the [trigger conditions](/docs/pipelines/conditional-executions.md) for which the action will run
- <u>Options</u> – here you define the action's name and behavior on failure and timeout

![AWS CloudFormation action configuration](/docs/deployments/aws/cloudformation/cloudformation-4.png 640x552)

4. When ready, click **Add this action** to finish configuration.

<Hint type="success">

Congratulations – you have just automated serverless deployments with AWS CloudFormation and Buddy! 🥳

</Hint>


---
Original source: https://buddy.works/docs/basics/deployments/aws/cloudformation