The goal of this repository is store my personal CloudFormation templates and provided to the community in order to create single or nested stacks to build real projects. The provided CloudFormation template automates the entire creation and deployment of AWS Products. The project includes the following templates:
- VPC Structures
- This include: Internet Gateway, Subnets and their Route Tables Associations
 
 - Lambda functions in order to handle the service:
- EC2 (Auto assign Ipv6 and Subnet)
 - Simple Email Service (SES) (Send email)
 - API Gateway (Communicate the steps from the API and send the instruction to the State Machine)
 
 - IAM Roles in order to allow:
- Lambda functions
 - State Machine
 
 - Amazon Relational Database Service (RDS)
 - Amazon Elastic File System (EFS) File System (FS)
 - Application Load Balancers (ALB)
 - Launch Template
 - AutoScaling Group (ASG)
 - SSM Parameter with the CloudWatch configuration for monitoring EC2 Instance
 - Simple Email Service (SES)
 - S3 Bucket as Static website configuration
 - State Machine with Step Functions
 - API Gateway (RestAPI) with CORS enabled and association with a Lambda Function
 
- You must have an AWS account.
- Create an AWS following the official tutorial from AWS -> https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-creating.html
 
 
IMPORTANT NOTE: Creating stacks in your AWS account will create and consume AWS resources, which will cost money. I do not take any responsibility for the additional cost to use these templates, you should get information about the prices by using the official website. Be sure to shut down/remove all the resources once you have finished to avoid ongoing charges to your AWS account (see instructions on cleaning up/tear down below).
- Enter in your AWS account.
 - Search the service AWS 
CloudFormationand then click the service. - Inside this service you should search the option 
Stacks, click it. - Here you need go to click the dropdown menu 
Create stack>with new resources (standard). - Now inside the box 
Prerequisite - Prepare templateyou can choose how validate and prepare the template. I recommend you useCreate template in Designer, then into the box below click inCreate template in Designer. - Click in 
Template, select all inside and paste one of the templates. - Click in 
Create stack(Cloud icon ☁️), you should redirect to the before page, then clickNext. - You will be redirect to 
Specify stack details, fill all the inputs then clickNext. - You will be redirect to 
Configure stack options, go down and clickNext. - You will be redirect to 
Review test, go down, sometimes will be require the section of Capabilities check theacknowledgebox, read it and check it. - Click 
Submit. - Wait until the stack if created, you can refresh the status, must change from 
CREATE_IN_PROGRESStoCREATE_COMPLETE. - Into the tab Resources you can see all the services deployed.
 
To tear down your application and remove all resources associated with the Template, follow these steps:
- Log into the AWS CloudFormation service.
 - Go to 
Stacks. - Find and select the stack you created.
 - Delete the stack using the button 
Delete. 
Remember to shut down/remove all related resources once you are finished to avoid ongoing charges to your AWS account.
This sample code is made available under a modified MIT license. See the LICENSE file.