Skip to content

Terraform script to create AWS Codepipeline

Terraform Script Github

Terraform script creates the following

  • AWS Codebuild project

  • Roles

  • ECR repository for storing docker images

  • S3 bucket for storing the build artifacts, codepipeline artifacts

  • SSM parameter store to store the Docker Hub password

  • AWS EC2 instance and install the codedeploy agent

  • AWS Codedeploy application

  • AWS codedeploy deployment group

  • AWS Codepipeline

Code build project

  • Compiles the java project using maven

  • Build the docker image

  • Push the docker image to ECR repository

  • Publish the artifacts to s3 bucket

Code deploy

  • Install docker if not preset

  • Check if docker service is running or not

  • Stops the old docker container if running

  • Creates new docker container with new docker image

  • Validates if newly created docker container is running or not

Code pipeline

  • Takes the code from github, zip it and push to s3 bucket

  • Triggers the codebuild project, picks the codepipeline build artifacts from s3

  • Triggers the codedeploy