Skip to content

Creates a fully managed AWS CodePipeline that automatically builds and deploys everytime code is committed to GitHub

Notifications You must be signed in to change notification settings

MatthewSilverstein/cloudformation-pipeline

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 

Repository files navigation

Cloudformation Boilerplate For Continuous Deployments with CodePipeline/CodeBuild

This repo creates a fully managed AWS CodePipeline that automatically builds and deploys everytime code is committed to GitHub.

Here is an example application using this template: https://github.com/MatthewSilverstein/serverless-java

Pipeline stages

Source (GitHub)

-----↓-----

Build (CodeBuild)

-----↓-----

Deploy Alpha (CodeBuild)

-----↓-----

Integration Test Alpha (CodeBuild)

-----↓-----

Deploy Beta (CodeBuild)

Setting up the pipeline

  1. Install awscli and setup aws account
  2. Create a GitHub repository
  3. Get an access key for GitHub repository with privilleges: [admin:repo_hook, repo]
  4. In commandline:
aws cloudformation deploy --template-file cloudformation-pipeline.yaml --stack-name <stack-name> --capabilities CAPABILITY_NAMED_IAM --parameter-overrides \
 GitHubUser=<username> \
 Repo=<repo> \
 Branch=<branch> \
 GitHubToken=<github access token>

Configuring build, deployments, and tests

By default, there are three buildspec files used by this pipeline:

  1. buildspec-build.yml: This is used by the Build phase of the pipeline
  2. buildspec-deploy.yml: This is used by the Deployment phases of the pipeline
  3. buildspec-integration-tests.yml: This is used by the Integration Test phase

About

Creates a fully managed AWS CodePipeline that automatically builds and deploys everytime code is committed to GitHub

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published