CI !== CI Pipeline

Yesterday I replied to a post on X:

I have worked on many teams that use CI tooling and call their process CI, but I have never seen CI actually done as defined on Wikipedia:

"CI is the practice of merging all developers' working copies to a shared mainline several times a day"

I've written about this before and I think the term CI or CI/CD is one of the most misused or misleading in software development.

CI, or continuous integration, is, as the post days, the process of everyone merging their changes at least once, or usually several, times a day.

It isn't something that is configured or created - it's a process.

Here's the thing

You can do CI without a CI pipeline and vice versa.

You can have a CI pipeline but not do continuous delivery or deployment.

What most people think of as CI or CI/CD is a set of automated checks that run when code is updated - usually on a feature or topic branch.

Whilst important, it's not "CI".

- Oliver

Was this interesting?

Sign up here and get more like this delivered straight to your inbox every day.

About me

Picture of Oliver

I'm an Acquia-certified Drupal Triple Expert with 17 years of experience, an open-source software maintainer and Drupal core contributor, public speaker, live streamer, and host of the Beyond Blocks podcast.