Create AWS CodeCommit, CodePipeline, CodeBuild, and CodeDeploy

Overview

In this lesson, we will be configuring AWS’s CI/CD pipeline services.

Let’s go through each of the AWS services we will be using.

AWS CodeCommit

AWS CodeCommit, which is the Git repository storage, is where our PHP/Symfony code will be stored.

AWS CodePipeline

AWS CodePipeline controls the overall pipeline process of how code is built and deployed through different stages. We will use CodePipeline to set up a source stage to get code from CodeCommit, then pass the code to CodeBuild to build code, and then finally start a CodeDeploy to deploy code to Elastic Beanstalk.

AWS CodeBuild

AWS CodeBuild will be used to build our PHP code. CodeBuild is an ephemeral server where a server is spun up, commands are run to build and test code, and, finally, the server is destroyed.

AWS CodeDeploy

AWS CodeDeploy will be used to deploy code from the S3 bucket to the EB environment. CodeDeploy can also deploy to many other AWS services.

AWS S3

AWS S3 will be used to store built code from AWS CodeBuild. AWS S3 is a storage service that is used to store and retrieve data.

AWS Elastic Container Registry (ECR)

AWS ECR will be used to push a Docker container that has everything installed to build and compile the PHP Symfony application. This ECR container will be used by CodeBuild as a base operating system. This way, we don’t have to install packages every time the pipeline runs, which saves time and money.

Get hands-on with 1400+ tech skills courses.