Production Deployment

System ↔ System
7 nodes · 6 edgesdevops
cicdhumancli
Visual
Lint & Type Checkcicd
sequentialRun Test Suite
Run Test Suitecicd
conditionalBuild Artifacts
Build Artifactscli
sequentialDeploy to Staging
Deploy to Staginginfra
sequentialSmoke Tests
Smoke Testscicd
sequentialRelease Manager Approval
Release Manager Approvalhuman
sequentialDeploy to Production
Deploy to Productioninfra
uc-cicd-pipeline.osop.yaml
osop_version: "1.0"
id: "deploy-pipeline"
name: "Production Deployment"

nodes:
  - id: "lint"
    type: "cicd"
    name: "Lint & Type Check"
  - id: "test"
    type: "cicd"
    subtype: "test"
    name: "Run Test Suite"
    retry_policy: { max_attempts: 2, backoff: "exponential" }
  - id: "build"
    type: "cli"
    name: "Build Artifacts"
  - id: "deploy_staging"
    type: "infra"
    name: "Deploy to Staging"
  - id: "smoke_test"
    type: "cicd"
    subtype: "test"
    name: "Smoke Tests"
    timeout_sec: 120
  - id: "approve"
    type: "human"
    subtype: "review"
    name: "Release Manager Approval"
    security:
      risk_level: "high"
      approval_gate: true
  - id: "deploy_prod"
    type: "infra"
    name: "Deploy to Production"
    security:
      risk_level: "critical"

edges:
  - from: "lint"
    to: "test"
    mode: "sequential"
  - from: "test"
    to: "build"
    mode: "conditional"
    when: "test.exit_code == 0"
  - from: "build"
    to: "deploy_staging"
    mode: "sequential"
  - from: "deploy_staging"
    to: "smoke_test"
    mode: "sequential"
  - from: "smoke_test"
    to: "approve"
    mode: "sequential"
  - from: "approve"
    to: "deploy_prod"
    mode: "sequential"