Introduction
Continuous integration and continuous delivery (CI/CD) are important concepts in DevOps that focus on building, testing, and automating the delivery of software artifacts.
Imagine that you work for a software development company in the retail industry that is preparing to release a new version of their online store application. The company wants to ensure that the release process is efficient, reliable, and minimizes the risk of errors. Therefore, you decide to follow a DevOps approach and use GitHub for software lifecycle management. By implementing CI/CD, the company can automate the build, test, and deployment processes, reducing manual effort and improving the overall quality of the software. It allows the company to deliver new features and bug fixes to their users quickly and consistently.
In this module, learn about continuous delivery (CD) and its benefits such as accelerated release cycles, increased resiliency, improved collaboration, and reusability, continuous integration (CI), and its relationship with CD, infrastructure as Code (IaC) and its principles, applying CI/CD practices to IaC deployment, and progressive exposure techniques in continuous delivery. Additionally, you’ll be introduced to GitHub Actions and its components, including how to create a GitHub Actions workflow, to support the implementation of CI/CD.
By the end of this module, you'll be able to apply CI/CD practices to your software development workflows and improve the efficiency and reliability of your software releases.