Optivem Journal

Optivem Journal

Share this post

Optivem Journal
Optivem Journal
Modern Pipeline - Commit Stage
Continuous Delivery

Modern Pipeline - Commit Stage

What does it mean that build works? Many developers think it means compiling code and publishing artifacts. But how do we know that those artifacts actually work correctly?

Valentina Jemuović's avatar
Valentina Jemuović
Jul 25, 2025
∙ Paid
6

Share this post

Optivem Journal
Optivem Journal
Modern Pipeline - Commit Stage
2
3
Share

📅 Join me for the live workshop ATDD in Legacy Code Roadmap on Wed 6th Aug (17:00 - 19:00 CEST) (100% discount for Optivem Journal members)


🔒 Welcome to the premium Optivem Journal. I’ll help you apply TDD to escape the nightmare of Legacy Code. Join our paid community of 160+ senior engineers & leaders for support on your TDD journey, plus instant access to group chat and live Q&As:


The goal of the Pipeline is ultimately to release software quickly and safely into a given environment. To achieve this, a necessary (but not sufficient) step is to deploy the System to an Environment automatically.

Components

The automatic deployment of a System necessitates the automated deployment of Its Component(s).

A System is comprised of one or more Components. Components might be the following:

  • MVC App

  • Frontend, Backend

  • Frontend, Microservice #1, Microservice #2, Microservice #3, etc.

Note: Instead of Frontend, or additionally, there might be Mobile, Desktop, Console, etc.

Artifacts

Automated deployment of a Component necessitates that we automate the publishing of the Component Artifact, so that we can deploy it.

Artifacts might be Docker Images, or JAR/WAR files (Java apps), DLL/EXE (.NET apps), Node.js bundles, NuGet packages. Artifact Repositories might be Docker Hub, JFrog Artifactory, AWS CodeArtifact, Azure Artifacts, Google Artifact Repository, etc…

(System) Commit Stage

The first step of automating Component deployment is to build and publish its Artifact automatically. This’s the purpose of the Commit Stage - to publish the Component Artifacts, so that we can deploy those Component Artifacts in subsequent stages (Acceptance Stage & Release Stage).

From a System perspective, here’s the (System) Commit Stage. It’s comprised of Component Commit Stages that run in parallel. Each Component Commit Stage publishes that Component’s Artifact to the Artifact Repository.

This post is for paid subscribers

Already a paid subscriber? Sign in
© 2025 Valentina Jemuović, Optivem
Privacy ∙ Terms ∙ Collection notice
Start writingGet the app
Substack is the home for great culture

Share