Intro to CI/CD ๐ป โ๏ธ
Last updated Jun 27, 2026
106
Stars
354
Forks
7
Issues
0
Stars/day
Attention Score
53
Language breakdown
Shell 37.3%
JavaScript 32.7%
HCL 26.6%
Pug 2.4%
CSS 0.9%
Procfile 0.2%
โธ Files
click to expand
README
Intro to CI/CD ๐ป โ๏ธ
TLDR; This repository is a sample project demonstrating a basic continuous integration (CI) / continuous deployment (CD) setup. This project is in READ ONLY mode.
:warning: Fork this repository in order to use it! If you're following along the videos and trying to run the workflows here, they will not work.
Course attachement
This repository is best consumed while or after following the course attachment ๐
Project structure
# You can generate this tree with:
$ tree -a -I '.git|assets|.github|venv|nodemodules|images|.DSStore|*.tfvars|.terraform'
.
โโโ .gitignore
โโโ CODEOWNERS
โโโ LICENSE
โโโ README.md
โโโ infra
โย ย โโโ README.md
โย ย โโโ instances
โย ย โโโ production
โย ย โย ย โโโ .terraform.lock.hcl
โย ย โย ย โโโ main.tf
โย ย โย ย โโโ terraform.auto.tfvars.example
โย ย โโโ staging
โย ย โโโ .terraform.lock.hcl
โย ย โโโ createstagingresource.sh
โย ย โโโ extra_staging.tf.example
โย ย โโโ main.tf
โย ย โโโ terraform.tfvars.auto.example
โโโ web
โโโ README.md
โโโ app.js
โโโ bin
โย ย โโโ www
โโโ package-lock.json
โโโ package.json
โโโ public
โย ย โโโ javascripts
โย ย โโโ stylesheets
โย ย โโโ style.css
โโโ routes
โย ย โโโ index.js
โย ย โโโ users.js
โโโ tests
โย ย โโโ app.test.js
โย ย โโโ routes.test.js
โโโ views
โโโ error.jade
โโโ index.jade
โโโ layout.jade
12 directories, 26 files
infra/images: contains Packer template to build our AWS EC2 AMIinfra/instances: contains our Terraform templates to setup ourstagingandproductionEC2 instancesweb: contains our simple Express web application
Setup
Configure your GitHub repository to run the workflows
Click to expand
- Navigate to the
Settingsin your repository then toEnvironments
- Add a new environment and call it
staging(or anything else you like)
- Enable required reviewers and add your secrets
- Enable branch protection on the
mainbranch
Test your setup
- Create a new branch from the
mainbranch and make some changes to the app - Push the new branch to GitHub
- Watch the CI workflow being triggered
- Troubleshoot issues as they rise
LICENSE
๐ More in this category
