DEV Community

Supraja Tangella
Supraja Tangella

Posted on

๐— ๐—ผ๐˜€๐˜ ๐—–๐—ผ๐—บ๐—บ๐—ผ๐—ป๐—น๐˜† ๐—จ๐˜€๐—ฒ๐—ฑ ๐—ฃ๐—ถ๐—ฝ๐—ฒ๐—น๐—ถ๐—ป๐—ฒ ๐—ฃ๐—ฎ๐˜๐˜๐—ฒ๐—ฟ๐—ป ๐—ถ๐—ป ๐—ฅ๐—ฒ๐—ฎ๐—น-๐—ช๐—ผ๐—ฟ๐—น๐—ฑ ๐——๐—ฒ๐˜ƒ๐—ข๐—ฝ๐˜€ ๐—ฃ๐—ฟ๐—ผ๐—ท๐—ฒ๐—ฐ๐˜๐˜€

In todayโ€™s fast-paced development environments, choosing the right pipeline pattern is critical for achieving reliable and efficient software delivery.

After working on multiple Azure DevOps projects and observing industry practices, one pattern stands out as the most widely adopted:

๐—•๐˜‚๐—ถ๐—น๐—ฑ ๐—ข๐—ป๐—ฐ๐—ฒ, ๐——๐—ฒ๐—ฝ๐—น๐—ผ๐˜† ๐— ๐—ฎ๐—ป๐˜† โ€” typically implemented using ๐— ๐˜‚๐—น๐˜๐—ถ-๐—ฆ๐˜๐—ฎ๐—ด๐—ฒ ๐—ฌ๐—”๐— ๐—Ÿ ๐—ฃ๐—ถ๐—ฝ๐—ฒ๐—น๐—ถ๐—ป๐—ฒ๐˜€.

Why is this pattern so effective?

  • ๐—–๐—ผ๐—ป๐˜€๐—ถ๐˜€๐˜๐—ฒ๐—ป๐—ฐ๐˜†: The application is built only once and that same artifact is deployed across environments like Dev, QA, Staging, and Production. This prevents environment-specific issues.
  • ๐—˜๐—ณ๐—ณ๐—ถ๐—ฐ๐—ถ๐—ฒ๐—ป๐—ฐ๐˜†: Saves time by avoiding repeated builds for each stage.
  • ๐—ฆ๐—ฒ๐—ฐ๐˜‚๐—ฟ๐—ถ๐˜๐˜† ๐—ฎ๐—ป๐—ฑ ๐—–๐—ผ๐—บ๐—ฝ๐—น๐—ถ๐—ฎ๐—ป๐—ฐ๐—ฒ: Easier to audit and control what gets promoted to production.
  • ๐—ฆ๐—ฐ๐—ฎ๐—น๐—ฎ๐—ฏ๐—ถ๐—น๐—ถ๐˜๐˜†: Works well with approvals, gates, and automated testing.

๐—˜๐˜…๐—ฎ๐—บ๐—ฝ๐—น๐—ฒ ๐—ช๐—ผ๐—ฟ๐—ธ๐—ณ๐—น๐—ผ๐˜„:

  1. ๐—–๐—ผ๐—ฑ๐—ฒ ๐—ฝ๐˜‚๐˜€๐—ต๐—ฒ๐—ฑ ๐˜๐—ผ ๐—ฟ๐—ฒ๐—ฝ๐—ผ
  2. CI Pipeline builds and publishes artifact
  3. CD Pipeline deploys to Dev (auto)
  4. QA and Prod deployments triggered with approvals
  5. Same artifact flows through each stage

stages:

  • stage: Build jobs: ...
  • stage: Deploy_Dev jobs: ...
  • stage: Deploy_QA jobs: ...
  • stage: Deploy_Prod jobs: ...

๐—ช๐—ต๐—ฎ๐˜ ๐—ฝ๐—ถ๐—ฝ๐—ฒ๐—น๐—ถ๐—ป๐—ฒ ๐—ฝ๐—ฎ๐˜๐˜๐—ฒ๐—ฟ๐—ป ๐—ถ๐˜€ ๐˜†๐—ผ๐˜‚๐—ฟ ๐˜๐—ฒ๐—ฎ๐—บ ๐—ฐ๐˜‚๐—ฟ๐—ฟ๐—ฒ๐—ป๐˜๐—น๐˜† ๐˜‚๐˜€๐—ถ๐—ป๐—ด, ๐—ฎ๐—ป๐—ฑ ๐—ต๐—ผ๐˜„ ๐—ต๐—ฎ๐˜€ ๐—ถ๐˜ ๐—ต๐—ฒ๐—น๐—ฝ๐—ฒ๐—ฑ ๐˜†๐—ผ๐˜‚๐—ฟ ๐—ฑ๐—ฒ๐—น๐—ถ๐˜ƒ๐—ฒ๐—ฟ๐˜† ๐—ฝ๐—ฟ๐—ผ๐—ฐ๐—ฒ๐˜€๐˜€?

Top comments (0)