PlantUML アクティビティ図: CI/CDパイプライン可視化

PlantUMLアクティビティ図でCI/CDパイプラインステージを可視化。並列ジョブ、ゲート、ロールバックパスを含むビルド、テスト、デプロイステージをモデル化。

Activity Diagrams

詳細な説明

アクティビティ図によるCI/CDパイプライン可視化

アクティビティ図はCI/CDパイプラインのドキュメントに最適です。シーケンシャルなステージ、並列ジョブ、条件付きゲートを自然にサポートします。

基本的なパイプライン

@startuml
title CI/CDパイプライン

start

:ソースコードをチェックアウト;

partition "ビルドステージ" {
  fork
    :フロントエンドビルド;
  fork again
    :バックエンドビルド;
  fork again
    :Dockerイメージビルド;
  end fork
}

partition "テストステージ" {
  fork
    :ユニットテスト;
  fork again
    :インテグレーションテスト;
  fork again
    :E2Eテスト;
  end fork
}

if (全テスト合格?) then (はい)
  partition "ステージングデプロイ" {
    :ステージングにデプロイ;
    :スモークテスト実行;
  }
else (いいえ)
  :Slackでチームに通知;
  stop
endif

if (手動承認?) then (承認)
  partition "本番デプロイ" {
    :ブルーグリーンデプロイ;
    :ヘルスチェック;
    if (ヘルスチェックOK?) then (はい)
      :トラフィック切り替え;
    else (いいえ)
      :ロールバック;
      :オンコール担当にアラート;
    endif
  }
else (却下)
  :却下をログ;
  stop
endif

:デプロイメントダッシュボードを更新;
stop

@enduml

主要なパターン

並列ジョブ: 同じパイプラインステージで同時実行するジョブにはfork/fork again/end forkを使用。

パーティション: partition "ステージ名" { ... }で関連アクティビティをグループ化してパイプラインステージを視覚的に分離。

ゲート: ifブロックで手動承認ゲートをモデル化。承認と却下の両方のパスを含めます。

ロールバック: ロールバックパスは常にドキュメント化します。これはインシデント対応で最も価値のある部分です。

ユースケース

新しいチームメンバー向けのCI/CDパイプラインのドキュメント、デプロイメント手順のランブック作成、エンジニアリングリーダーシップへのパイプラインアーキテクチャの提示、本番デプロイメントのロールバック戦略の設計。

試してみる — PlantUML Editor

フルツールを開く