Automation: 一般的な使用例

自動化によって、ルールを作成して無数の使用事例に対処することができます。では、どこから始めたらよいでしょうか? 以下に、自動化を始めるのに役立つ一般的な使用事例を多数ご用意いたしましたので、ご参照ください。

親課題とサブタスクの同期

サブタスクとその親課題に対処する場合、関連する課題を確実に同期することが重要です。自動化ではブランチルールを活用してこれを簡単に実行できます。たとえば、あるサブタスクを解決したときに未解決のサブタスクがない場合、親課題を自動的にトランジションするルールを設定できます。

ルールビルダーの一例: サブタスクを解決した際に、その他の未解決のサブタスクがない場合、親課題をトランジションするルールを表示する。

このルールの構築方法

  1. [Issue transitioned (課題がトランジションされた)] トリガーを使用します。このトリガーにより、課題をあるステータスから別のステータスにトランジションする際にルールを実行できるようになります。課題が完了にトランジションされるときにトリガーが応答するよう設定します。
  2. ルールに課題フィールド条件を追加して、課題タイプがサブタスクであるかどうかを確認します。ルールをトリガーした課題がサブタスクではない場合、ルールの実行は中止されます。
  3. ルールにブランチを作成し、関連する課題タイプにを選択します。これにより、後続の条件とアクションは、ルールをトリガーした課題の親課題で実行されるようになります。
  4. 関連する課題の条件をルールに追加して、サブタスクが status = done と一致するかどうか確認します。これを行うことにより、親課題のすべてのサブタスクを確実に完了できます。
  5. 最後に、課題のトランジションアクションを設定して、親課題のステータスを完了に変更します。
  6. ルールに名前を付け、有効化します。

別の一般的な使用事例には、修正バージョンなど、親から値を継承するサブタスクに関するものがあります。これらの値を同期して、親とサブタスクの両方に最新の情報が反映されるようにします。

ルールビルダーの例: 親の値とサブタスクの値を自動的に同期するルールを表示する。

このルールの構築方法

  1. フィールド値の変更トリガーを使用します。このトリガーにより、選択したフィールド値が変更されるとルールが実行されます。[Fix versions (バージョンを修正)] フィールドを監視するためにトリガーを設定します。
  2. ルールにブランチを作成し、関連する課題タイプにサブタスクを選択します。こうすることで、後続の条件とアクションは、ルールをトリガーした課題のサブタスクで実行されます。
  3. [Edit issue (課題を編集)] アクションを設定し、親課題から値をコピーして修正バージョンのフィールドを設定します。
  4. ルールに名前を付け、有効化します。

課題をチームへ自動割り当て

ご自身のチームは、割り当てられていない課題をどのように対処していますか? 多くのチームではエンジニアの判断に任せてしまい、割り当てられていない課題の中には見落とされてしまうものもあります。

たとえば、この対策のために自動化を活用して、課題をチームのメンバーにバランスよく自動的に割り当てることも可能です。


このルールの構築方法

  1. ルールや設定する条件のトリガーを選択し、自動割り当てをする課題を定義します。
  2. [Assign issue (課題を割り当て)] アクションを使用します。このアクションにより、課題をさまざまなシナリオに容易に割り当てることができます。
  3. アクションを設定して、定義されたリストのユーザーに課題を割り当てます。これにより、指定した一連のユーザーから、アクションによって担当者が選択されるように設定できます。
  4. 仕事量のバランスに基づいて担当者が選択されるように設定します。オープンな課題の割当数が最も少ないユーザーに課題が割り当てられます。
  5. ユーザー一覧で、チームのメンバーを検索して選択します。
  6. [保存] を選択してアクションを適用し、ルールに名前を付け、[Turn it on (有効化)] を選択します。

定義した一覧のユーザーに課題を割り当てるために、課題の割り当てアクションを設定する。
バランスの取れた仕事量に基づいて担当者を選択するために、課題の割り当てアクションを設定する。
課題の割り当てアクションを設定する際に、チームのメンバーを選択する。

タスクのスケジュール

タスクを自動的にスケジュールすることによって、チームの手動の作業を削減できるだけでなく、ワークフローの一貫性と信頼性を確保できます。

たとえば、課題に関するサポートエンジニアからの質問に顧客が未回答の場合、顧客にリマインダーを自動的に送信し、古くなった問題を一時的に閉じるルールを設定できます。


このルールの構築方法

  1. スケジュール設定のトリガーを使用します。status = "Waiting for customer" and updated < -5d のチェックを毎日実行するようにルールのスケジュール設定をします。これにより、課題のステータスが顧客からの連絡待ちから 5 日以上更新されていない場合に、ルールが開始されるようになります。
  2. [Comment on issue (課題に関するコメント)] アクションを追加し、課題が非アクティブのため自動的に閉じられたことをカスタマーに通知します。
  3. 課題のトランジションアクションを設定すると、課題のステータスが解決済みに変更されます。
  4. ルールに名前を付け、有効化します。

ルールビルダーの例: 古くなった課題のリマインダーを顧客に自動的に送信するルールを表示する。

開発ツールとの連携 (Bitbucket、Github、Gitlab)

自動化とソースコード管理ツールを連携すると、開発プロセスを自動化できます。

たとえば、プルリクエストがマージされたとき、機能フラグがリンクされていると関連する課題を Rolling out (展開) に移行させることができます。機能フラグがリンクされていない場合、課題は完了に移行されます。


このルールの構築方法

  1. [Pull request merged (プルリクエストがマージされた)] トリガーを使用します。このトリガーにより、プルリクエストがリポジトリにマージされたときにルールが実行されます。
  2. If/Else のブロック条件を追加します。この条件により、条件が一致するかどうかにより別のアクションを実行できるようになります。
  3. If ブロックには関連する課題の条件を追加して設定し、リンクタイプが feature flagged by (機能フラグ) であるリンク課題が存在するかどうかをチェックします。
  4. [Transition issue (課題をトランジション)] アクションを設定すると、課題のステータスが [Rolling out (展開)]に変更されます。
  5. Else ブロックでは、課題のステータスが「完了」に変更されるように [Transition issue (課題をトランジション)] アクションを設定します。
  6. ルールに名前を付け、有効化します。

特定のエンジニアがコミットを作成すると、Slack からメッセージを送信してチームに通知するルールを設定できます。


このルールの構築方法

  1. [Commit created (コミットが作成された)] トリガーを使用します。このトリガーにより、ソースコード管理ツール上でコミットが作成されたときにルールが実行されます。
  2. [User condition (ユーザー条件)] を追加して、担当者が John または Nicole であることを確認するように設定します。
  3. [Send Slack message (Slack でメッセージを送信)] アクションを設定します。これにより、チームのチャンネルにコミットを通知するメッセージが送信されます。
  4. ルールに名前を付け、有効化します。

作成されたコミット

独自のルールを作成する準備はできましたか? いますぐ編集して適用できる便利なルールのテンプレートを他にも見つけましょう。

独自のルールを作成する準備はできましたか? いますぐ編集して適用できる便利なルールのテンプレートを他にも見つけましょう。