CI/CD pipelines are effectively essential in any modern development setup. They are an effective means of automating away all of the toil that is typically involved in vetting, testing and deploying our ever-more complex applications.
This course is designed to help bootstrap your skills around building out your own CI/CD pipelines for your own projects.
Choice of CI Systems
Now, as this is my site, and because I am currently biased towards CircleCI because of the fact they provide me employment, the underlying choice of CI system will be… you guessed it… CircleCI 🎉
However, it should be noted that the concepts we’ll be covering in this course can be applied to any CI system.
Goals
Now, the overarching goals of this course are to provide you with the fundamental knowledge needed to build your own CI/CD pipelines that can:
- Effectively test every aspect of your application - Unit, Integration, End-to-End
- Lint and Compile your application
- Benchmark and Race Test
- Build Docker Images and Push them to A Docker Registry
- Deploy your application. In this case to Fly.io’s PaaS offering.
Pre-requisites
Now, before we embark on this journey of learning and discovery together, it should be noted that you’ll need the following pre-requisites:
- A basic understanding of Go and the
go
CLI.
Let’s Dive In!
With all that said, let’s dive in!