maradwan / notejam-app

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


AWS ECS Fargate, CodeCommit, CodeDeploy, CodePipeline and Terraform


Requirements

Steps

Clone the project

$ git clone git@github.com:maradwan/notejam-app.git YOUR_PROJECT_DIR/

1- Build the environments testing, development and production

  • To build testing environment

      $ cd YOUR_PROJECT_DIR/terraform/test
      $ terraform init
      $ terraform apply -auto-approve
    
  • To build development environment

      $ cd YOUR_PROJECT_DIR/terraform/dev
      $ terraform init
      $ terraform apply -auto-approve
    
  • To build production environment

      $ cd YOUR_PROJECT_DIR/terraform/dev
      $ terraform init
      $ terraform apply -auto-approve
    

2- After that we need to build the pipeline

	$ cd YOUR_PROJECT_DIR/terraform/app-pipeline/
	$ terraform init
	$ terraform apply -auto-approve

3- Then clone the new repository that has been created on codecommit and copy the app to the cloned folder

Deployment Strategy:

  • on testing environment:

    blue/green ECSAllAtOnce
    
  • on development environment:

    blue/green ECSLinear10PercentEvery1Minutes
    
  • on production environment:

    blue/green ECSLinear10PercentEvery1Minutes
    

If you would like to deploy to multi region , copy the environment dev,test and prod and change the region name from variables.tf also you need to add a stage in app-pipeline as I did for test-us.

About


Languages

Language:HCL 54.3%Language:Python 25.3%Language:HTML 10.4%Language:CSS 6.3%Language:Smarty 3.5%Language:Dockerfile 0.2%