ジョブをつなぎ、繰り返し使えるワークフローに
共有データ、承認、成功時と失敗時の経路を使って、Ansible、Terraform、スクリプトを連携させます。
ジョブは自動化済み。操作全体はまだです
Playbook が終わっても、誰かが出力をコピーし、結果を確認して、次のジョブを開始する必要があります。引き渡すたびに待ち時間が増え、手順を見落とす機会も増えます。
ジョブをワークフローに接続します。 一連の処理を一度定義すれば、手動での開始や値のコピーなしに進められます。
複数ツールにまたがる複雑な操作を連携
既存のタスクテンプレートをキャンバスに追加し、ステップを接続してワークフローを保存します。
ワークフローを開始し、確認処理が成功したら次のステップを承認します。
ワークフロー内の任意のタスクを開き、出力と結果を確認できます。
ワークフローのステップ間でデータを渡す
ジョブの出力を後続ジョブの入力として使えます。ワークフローのアーティファクトが、異なる自動化ツール間でも手作業でコピーせずに値を引き継ぎます。各ステップが受け取る値を選択できます。
ワークフローの出力と入力API でワークフローを起動・監視
Pro では、ワークフロー API を使って、社内ポータルや別のサービスから実行を開始し、ステータスを追跡し、承認を処理できます。
自分たちのプロセスに合わせて操作を組み立てる
既存の自動化をそのまま利用
Ansible、Terraform、OpenTofu、Terragrunt、Bash、Python、PowerShell のタスクテンプレートを接続します。各ジョブはリポジトリ、認証情報、実行設定を保持します。各ステップの入力はノードパラメーターで指定します。
結果に応じて分岐
成功、失敗、常時の条件で次のタスクを選択します。独立した確認処理を並列実行し、All または Any の合流条件でまとめられます。診断や復旧の分岐は、チームが用意した自動化を実行します。
必要な箇所に判断を配置
明確なメッセージと任意のタイムアウトを設定した承認ノードで一時停止できます。承認または却下する前に、直前のタスクを確認してください。Enterprise のカスタムロールでは、選択したワークフローの承認権限を実行権限とは別に付与できます。権限は合算されるため、その人に割り当てられたロールをすべて確認してください。
待機中であることを明確に
サービスの再起動とヘルスチェックなど、操作の間に待機ノードを使います。実行画面には残り時間が表示されます。実際の検証は、独自の結果を持つ別のタスクにしてください。
どの定義が実行されたかを把握
各実行にはワークフローのリビジョンとバージョンが記録されます。編集可能な定義が変わった後も、その実行のグラフを確認し、個々のタスクを開いてステータス、入力、ログを確認できます。
ワークフローをお使いのシステムに接続
REST API で実行を開始し、ステータスを確認します。重要な結果をチームへ届けるタスク通知を設定できます。手動実行にも、連携した操作にも同じ保存済みテンプレートを使えます。
ドキュメントと関連機能
FAQ
Ansible、Terraform、Python を 1 つのワークフローで組み合わせられますか?
はい。タスクノードは既存のタスクテンプレートを起動するため、1 つのワークフローで Ansible Playbook、Terraform または OpenTofu の構成、Terragrunt、Bash、Python、PowerShell を連携できます。各タスクは独自のツールと実行設定を使います。タスクテンプレートを見る。
タスクから次のステップへ、Terraform の出力や Ansible の結果を渡せますか?
はい。現在のワークフローは JSON の出力と入力に対応しています。Terraform、OpenTofu、Terragrunt の出力は output -json で収集します。Ansible は set_stats で値を公開でき、スクリプトは SEMAPHORE_OUTPUTS_FILE に JSON を書き込めます。名前または明示的な接続マッピングで、これらの値を後続のアンケート変数へ割り当てます。出力と入力のガイドを読む。
複数の確認が終わるまで次のタスクを待機させられますか?
はい。ワークフローを並列の確認処理に分岐し、次のノードがすべての流入経路を待つ必要がある場合は All の合流条件を使います。Any の合流条件では、条件を満たす完了済み経路から先へ進めます。接続は、成功時、失敗時、どちらの場合でも実行するよう設定できます。
ワークフローを承認待ちで一時停止できますか?
はい。判断の内容を説明するメッセージと、任意のタイムアウトを設定した承認ノードを追加します。判断が確定するまで実行は一時停止します。必要な権限を持つユーザーが承認または却下できます。Enterprise のカスタムロールでは、選択したワークフローの承認を実行とは別に許可できます。責務を分ける場合は、割り当て済みのすべてのロールを確認してください。
失敗後に診断やクリーンアップを実行できますか?
はい。失敗時の接続でタスクテンプレートをつなぎます。たとえば、ヘルスチェックの失敗後にサービスログを収集できます。成功と失敗のどちらの後にも行う処理には Always を使います。クリーンアップやロールバックは自分たちのスクリプトや Playbook が行うため、一部だけ完了した操作への影響をテストしてください。
sleep スクリプトを書かずに一時停止を追加できますか?
はい。待機ノードは設定した秒数だけ待ち、実行画面に残り時間を表示します。サービスを落ち着かせてから、別の検証タスクへ進む際に使えます。待機が制御するのは時刻であり、ヘルスチェックは次のタスクが行います。
ワークフロー出力はプロジェクトランナーで使えますか?
現在のワークフロー出力は、ローカルランナーとリモートランナーに対応しています。Docker と Kubernetes のエグゼキューターは現在、ワークフロー出力を生成しません。後続処理で値を使う前に、出力元タスクのエグゼキューターを確認してください。出力は JSON データであり、アップロードされたファイルではありません。
ワークフローの出力でパスワードやファイルを渡せますか?
ワークフロー出力は、変更参照、対象グループ、リソース識別子など、通常の JSON 値に使ってください。値は平文で保存され、アンケートのシークレット項目には渡せません。パスワードはシークレットと認証情報に保管し、ファイルには適切なストレージを使ってください。シークレットと認証情報を見る。
失敗したワークフローのタスクはどこで調査できますか?
ワークフロー実行を開いて各ノードの状態を確認し、元のタスクを開いてログと実行の詳細を確認します。各実行は使用したワークフローのリビジョンを保持します。タスク通知で、設定済みチャネルを通じてチームに知らせることもできます。実行履歴を見る。
API 呼び出しでワークフローを開始できますか?
はい。REST API は、ワークフローの定義、実行、状態確認、承認操作を提供します。呼び出し元に手順を再実装せず、社内ポータルや別のシステムから保存済みワークフローを再利用します。API と Webhook を見る。
