Skip to content

kimisme9386/lab-ecs-fargate-cd-infra

Repository files navigation

lab-ecs-fargate-cd-infra

Build CodePipeline to implement two approach of deployment on AWS CDK.

Notice: This project is not CDK Construct which is CDK App for lab

Introduction

Include three stacks

  • ApiNetwork - Vpc, Alb, Subnet and so on...

  • ApiApp - ECS cluster, ECS Service, ECS Task Definitions, ECR and so on...

  • ApiPipeline - CodePipeline, CodeBuild

Web App for ECS

  • Using Python Flask Web Framework
  • In flask.d root directory

Support two approach of deployment

  • Two valid value of Deployment.type is RollingUpdate or BlueGreen

E2E testing when choosing BlueGreen deployment

Usage

Modify configs/lab.yml to configure ECS.

The most important property is desiredCount which determines how many ECS Tasks should be run.

⚠️ Notice: desiredCount should be set 0 when first cdk deploy because ECR container image of ECS task hasn't be created yet.

Two demo configurations

Both the two configurations accept traffic from ALB.