DEV Community

Cover image for Introduction to CI/CD
Luke
Luke

Posted on

Introduction to CI/CD

As a developer, at least one time you said or heard...

img1

Including me also 🤣 So why it happened? Hmmm...Many factors "contribute" to this, example:

  • Code conflict
  • Integration error
  • Process Manual
  • etc.

And CI/CD has born to helps us fix those issues

img2

What is CI/CD

CI/CD are the short term for Continuous Integration & Continuous Delivery/Deployment. It helps the process become automated and deliver product to client in a reliable and fastest way.

cicd-overview

CI/CD overview

Continuous Integration - CI

ci-overview

CI overview

In CI, whenever a developer commit changes to the repository, it'll build & run test automatically. This helps ensure code is reliable and runnable, ready to integrate with the rest of the team's work. So with CI implementation, we can get the feedback right away after we commit, no need to wait the others for build and test

Continuous Delivery/Deployment - CD

When your changes reach CD, the next phase after CI, it means they’re packaged, tested, and ready to be deployed to staging or production environments.

congrats

In CD, there are two definitions.

  • Continuous Deliver: Code is ready to deploy, but it need someone - maybe you, to click approve for deployment => best suitable for production environments

  • Continuous Deployment: The code is automatically deployed to the target environment as soon as it passes all the checks, it's hands-free deployment => ideal for staging environments

CD overview

CD overview

Conclusion

We've covered the basics of CI/CD. If your team/project hasn't implemented it yet, consider doing so, you'll likely find it beneficial. In the next post, I will cover some tips/tools can use in CI/CD.

Happy Coding!

Top comments (0)