Semaphore UIでは複数の操作を1つのワークフローにできます。OpenTofuテンプレートでステージングを構築し、承認ステップで次の変更前に一時停止し、Ansibleテンプレートでホストを構成する、といった流れです。失敗時の分岐からBashによる通知や復旧手順を起動することもできます。各タスクはツール固有の設定を保持し、単独でも実行できます。すべてを1つのPipelineスクリプトにまとめることなく、準備済み操作間の関係をグラフで確認できます。
Semaphore UIではワークフローエディターで保存済みテンプレート間の接続を作成します。JenkinsにもBlue Ocean Pipeline Editorによるビジュアル編集機能があり、SCMベースのDeclarative Pipelineを作成してJenkinsfileを保存します。ただし、Declarative Pipelineの全機能には対応していません。Blue Oceanは2026年7月に非推奨となり、セキュリティや機能の更新を受けなくなったため、JenkinsはPipelineの作成に保守が継続されている構文生成ツールを推奨しています。
ワークフローの値を使うと、プロビジョニングしたホストのアドレスを構成タスクに渡すなど、ステップ間を連携できます。Semaphore UI 2.20は、サーバーまたはランナーのローカルエグゼキューターで、Ansibleのset_stats、Terraform/OpenTofu/Terragruntのoutputs、Bash、PowerShell、PythonのJSONを収集します。DockerとKubernetesのタスクエグゼキューターは、これらのワークフロー出力を生成しません。受け取り側のテンプレートで入力を定義し、プレイブックやインベントリ設定からその値を使って新しいホストを対象にします。
Semaphore UI. ビジュアルワークフローで、準備済みタスクテンプレートを繰り返し実行できる手順につなぎます。
Jenkins. Pipeline Graph Viewプラグインは、ステージ、並列分岐、選択したステージの詳細を表示します。 公式の例
JenkinsのShared Librariesでは、保守する複数ステップの手順をパッケージ化し、多くのPipelineで利用できます。Semaphore UIは個別のタスクテンプレートを再利用し、各ワークフローがそれらの接続を定義します。別のワークフローを1つのノードとして組み込むことはできません。デリバリーの手順自体を一元的にバージョン管理する必要がある場合にはShared Librariesが有効です。デプロイ、診断、復旧で操作を異なる形に組み合わせる場合は、独立した操作の再利用で十分なこともあります。
Jenkinsのstash、unstash、アーカイブされた成果物は、ファイルの移動や保持を担います。Semaphore UIのワークフローの値が運ぶのはデータであり、パッケージや保存済みのTerraformプランには、ストレージの設定や明示的な転送が必要です。ビルドバージョンは取得対象を識別するもので、ファイルリポジトリではありません。後続のステップで、テスト済みのパッケージや承認済みのプランをそのまま使う必要がある場合に、この違いが重要になります。