【わーくふろー】

ワークフロー とは?

最終更新:
💡 やるべきことを順番に並べて、自動で流す仕組み
📌 このページのポイント
ワークフロー(業務フロー) 申請 フォーム入力 承認 上長が確認 処理 タスク実行 完了 通知送信 差し戻し 自動化ツールで定型業務を効率化 (承認ルート・通知・期限管理など)
ワークフローのイメージ
ひよこ ひよこ
ワークフローって、ただの手順書とは違うの?
ペンギン先生 ペンギン先生
手順書をそのまま自動実行できるようにしたものだと思えばいいよ。たとえばGitHub Actionsなら、『コードをプッシュしたら、テストを実行して、成功したらデプロイする』っていう流れをYAMLで書くんだ。
ひよこ ひよこ
へー、それが全部自動で動くんだ!
ペンギン先生 ペンギン先生
そう。しかも『テストが失敗したらデプロイしない』みたいな条件分岐も書ける。複数のジョブを並列実行することもできるから、効率的に処理できるんだよ。
ひよこ ひよこ
開発以外でも使えるの?
ペンギン先生 ペンギン先生
もちろん。たとえば経費申請で『申請者が提出→上司が承認→経理が処理』っていうのもワークフローだよね。Zapierみたいなツールを使えば、メールが届いたらSlack通知するとか、ノーコードでワークフローが作れるんだ。
ひよこ ひよこ
GitHub Actionsのワークフローってどう書くの?
ペンギン先生 ペンギン先生
YAMLファイルで「いつ(on:)」「何を(jobs:)」「どうやって(steps:)」を定義するよ。たとえば「mainブランチにpushされたら、テストを実行して、成功したらデプロイする」なら、onにpush、jobsにtest→deployを書く。マーケットプレイスに再利用可能なアクションが何千もあるから、ゼロから書く必要はほとんどないよ。
ひよこ ひよこ
ワークフローが複雑になりすぎて管理できなくなったらどうするの?
ペンギン先生 ペンギン先生
「再利用可能ワークフロー(Reusable Workflows)」と「Composite Actions」で共通部分をモジュール化するのがベストプラクティスだよ。テスト→ビルド→デプロイのような定型フローは共通ワークフローにして、プロジェクトごとの差分だけを記述する。ワークフローのコードもレビュー対象にして、CI/CD設定自体の品質を保つことが大規模組織では重要なんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ワークフロー」って出てきたら「タスクの実行順序を定義した処理の流れのこと」と思えればだいたいOK!
📖 おまけ:英語の意味
「Workflow」 = 仕事の流れ
💬 work(仕事)とflow(流れ)を組み合わせた言葉で、業務の流れを可視化・自動化する考え方
← 用語集にもどる