GitHub Actions 101: Develop a CI/CD Workflow
Beginner Series to Automating your Workflow with GitHub Actions! Part 4: Develop a CI/CD Workflow
--
Hello and welcome to Part 4 of the GitHub Actions series. A series where we will walk through everything you need to know about GitHub Actions, from the basics to creating your own customized workflow.
In this previous part, we learned about secrets, how to use actions from different sources and pass arguments using with
. We also created a simple automate pull request review workflow after putting together all that we have learned.
If you have missed it, please read Part 3 here.
This part of the series will be an exciting one. We will develop a CI/CD workflow to automate linting, testing and deploying an app using GitHub Actions. Without further ado, let’s begin!
Before we start building the workflow, we need to plan what to include in our CI/CD workflow.
Wait, what’s CI/CD?
For those who are unsure of what I mean by CI/CD, let me give a quick overview on these 2 fundamental concepts in DevOps.
If you’d like to understand DevOps in more details, feel free to check out my beginner-friendly DevOps Series on this blog or Udemy for free.
The CI in ‘CI/CD’ refers to Continuous Integration. It primarily involves automated linting, testing as well as merging branches frequently into the master branch to ensure it remains stable and error-free.
The CD refers to Continuous Deployment. It is the fully automated process of building, testing and deploying an application.
In the context of our CI/CD workflow, we will use GitHub actions to automate the following steps:
- Build Project
- Run Tests
- Deploy Project
In order to illustrate how to build this workflow, we need an app.