Deployment Pipeline

Rumman Ansari   Software Engineer   2025-02-11 08:08:14   374  Share
Subject Syllabus DetailsSubject Details
☰ TContent
☰Fullscreen

Table of Content:

Deployment Pipeline

Automated implementation of an application’s build, test, deploy and release process is known as deployment pipeline.

Shown are the typical stages a change passes through in the pipeline.

  • Any change in application’s configuration, source code, data or environment triggers a new instance of the pipeline.

  • In the pipeline, binaries and installers are created first.

  • Tests are run on the binaries.

  • combination of code, configuration, data, and the environment is considered releasable only after passing the pipeline successfully.


Deployment Pipeline Advantages
  • Enables collaboration (each step is visible to the team).

  • Ensures issues are identified and resolved at an early stage.

  • Helps team to automatically deploy and release a software version anytime.

  • Aids team to identify inefficiencies in the release process.

  • Enables metrics collection (such as cycle time).


Pipeline Flow

Commit Stage

The commit stage includes:

  • Code compilation

  • Execution of commit tests

  • Binaries creation (for use at later stages)

  • Static code analysis

  • Artifacts creation (like test databases)

  • The release candidate is created after passing this stage.

  • Eliminates the code changes that are unfit for production.

  • Reports at the earliest to the developer if the application is broken.

  • The owner is the developer.

Commit Stage Practices
  • Create efficient, fast, non-environment dependent scripts.

  • Fail commit, if the build fails due to the compilation, test or environmental issues.

  • Design a fast user feedback mechanism.