- A simple way to understand the CI/CD is to take it as a process.
- Tools help simplify, not make any change in our workflow.
- We did write about this topic. Check it out here.
Before digging into CI/CD, we should find the answer to these questions: Why was CI born? Or, what happened before CI applied?
You have 2 minutes …
In the concept of engineering, each work we do and teamwork every day is a part of the big picture. Think about software engineering before Git was born. We did works separately then merging manually. The thing of integrating every scope of work into a final release is called “Integration.”
Even when we don’t have any definition of Pull Request, Continuous, etc., integration still exists. That’s the point! Years later, this manual process turned into automation by a 3rd software party, prevent human errors in testing. We call it Continuous Integration. Tools will help optimize this process.
Now, let retake a look at some definition:
- CI (Continuous Integration): Continuous integration puts a great emphasis on testing automation to check that the application is not broken whenever new commits are integrated into the main branch.
- CD (Continuous Deployment/ Delivery): In Agile, it’s different from CI in the latest stage, which accelerates the feedback loop with customers and takes the pressure off the team as there isn’t a Release Day anymore.
CI/CD helps to build support for the application, branch commit status. Continuous Deployment is like Continuous Delivery, except that releases happen automatically.
Their output is still the same. The decision whether we deploy to production lies on Business Department. They may want to hold the features to release weekly, monthly, special milestones, etc.
For Frontend, Netlify or Vercel are the most popular CI/CD services.
We did write about this topic. Check it out here
Subscribe for “The Next Bytes” where Han & the crew draft up our observation in the industry.