DEV Community

Discussion on: Let's stop fooling ourselves. What we call CI/CD is actually only CI.

Collapse
 
joachim8675309 profile image
Joaquin Menchaca

CI is a big factor toward CD pipelines, hence importance of DevOps. Trunk based CI where you can package up versionable artifacts that feed into CD pipelines, vs feature branches with human negoiated releases. The later would require multiple CD pipelines for multiple artifacts from multiple branches. When you add monorepo, it gets more complex, as you'll need to extract multiple artifacts all on different CD pipelines for each CI pipeline for each branch for each artifact produced from the monorepo, and so this requires build tool/env that has a DAG to converge proper changes into discreet artifacts.

Many implementations are not up to the state to even perceive this, especially from Jenkins community (or other CIs that use the same model), where often have CI is intermixed with deployments, that often yields a chaotic unsustainable mess, with CI pipelines that do deployments without atomic CD pipelines.