Jira Automation で 指定したユーザーにメンションを入れる方法
Jira の通知で Slack を使っているというお客様は多いと思います。お問い合わせで「Jira から Slack の指定したユーザーをメンションしたい」という要望を頂く事があります。ここでは実現方法として、Slack ワークフローを利用した方法について紹介します。
今回のサンプルでは、担当者が割り当てられた時に ユーザーをメンションする方法をご紹介します。色々なケースで応用できると思います。
目次
前提条件
このドキュメントに記載されている手順を実施するためには、以下の条件を満たしている必要が有ります。
Slack ワークフローを利用するため、Slack は有償プランであること。
Slackワークスペース にワークフローを設定する権限があること。
メンションをされるユーザーが、 Jira と Slack に同じメールアドレスでアカウントを持っていること。
実現方法
Jira は Automation から Slack ワークフローの Webhook に対してデータを送信します。この時、データの中に担当者の メールアドレスを指定します。Slack ワークフローは Webhook で受信したデータのメールアドレスから、Slack のユーザーを判別する事ができます。この機能を利用して、Jira が指定したユーザーをメンションする事ができます。
作業は、Slack と Jira の両方で必要です。
Slack の作業
利用するワークフローを作成します。
Slack のアプリの画面左のメニューから 「その他」を選択して、「自動化」を選択します。
表示されたメニューから「ワークフロー」を選択すると下記の画面が表示されるので、右上の「新しいワークフロー」ボタンを押して、表示される「ワークフローを構築する」ボタンを押します。
下記の画面が表示されるので「イベントを選択する」を選択すると右側に「ワークフローを開始」メニューが表示されますので「Webhook から」を選択します。
確認画面が表示されるので「続行する」ボタンを押します。
下記の画面が表示されます。「無題のワークフロー」になっていますので、ワークフローの名前と説明とアイコンを解りやすいものにしましょう。
名前と説明を変更して、下記の画面が表示されたら鉛筆のアイコンをクリックします。
下記の画面が表示されますので「ウェブリクエストのURL」を記録しておきます。後程、Jira の設定で利用します。記録ができたら、この画面では「変数を設定する」ボタンを押します。
「変数を設定する」ボタンを押すと下記の画面が表示されますので、「キー」に「newAssigneeEmail」、データタイプに「Slack のユーザーのメールアドレス」を選択して、終了ボタンを押します。
同じ操作を繰り返して、以下の「キー」と「データタイプ」を登録します。ここでは、担当者のメンションンの他、課題キー、課題の要約、課題のURLを表示します。追加したいフィールドが有る場合は、ここで追加して下さい。
キー | データタイプ | 意味 |
---|---|---|
issueKey | テキスト | Jira の課題キー |
issueSumarry | テキスト | 課題の要約 |
jiraUrl | テキスト | Jira 課題の URL |
issueDescription | テキスト | アサインした時のコメント |
newAssigneeEmail | Slack ユーザーのメールアドレス | 新しい担当者のメールアドレス |
下記の様になったら完成です。
これで Jira からデータを受信する準備ができましたので、受信したデータをチャンネルに表示する処理を追加します。下記の画面で「ステップを追加する」をクリックして「メッセージ」→「チャンネルにメッセージを送信する」を選択します。
下記の画面が表示されますので、「チャンネルを選択する」ではメッセージを表示したいチャンネルを指定します。メッセージには表示したいメッセージを登録します。「{}変数を挿入する」をクリックする事で、上記で登録した Jira のフィールドを挿入できます。これを活用して「メッセージを追加する」に登録します。
下記は一例です。{ } newAssineeEmail が担当者へのメンションになりますので、先頭にすると良いと思います。メッセージが登録できたら「保存する」ボタンを押して登録します。
下記の様な表示になれば、Slack の作業は完了です。
Jira の作業
担当者が変更されたタイミングで Slack に Webhook で情報を送信する automation ルールを作成します。
Web リクエストのパラメータは下記の通りです。
項目 | 設定値 |
---|---|
Webhook URL | Slack のワークフローからコピーした値 |
HTTP メソッド | POST |
Webhook 本文 | カスタムデータとして下記を登録します。内容は下記の Webhook 本文になります。 |
Webhook本文
{
"issueKey": "{{issue.key}}",
"issueSumarry": "{{issue.summary}}",
"issueDescription": "{{issue.description}}",
"jiraUrl": "{{issue.url}}",
"newAssigneeEmail": "{{issue.assignee.emailAddress}}"
}
カスタムデータの、issueKey, issueSummary などの項目名は、Slack のワークフローの開始方法で指定した「キー」と等しくなるように留意して下さい。Jira のフィールドを追加したい場合は、上記のカスタムデータを追加して、併せて Slack ワークフローの「キー」にも追加して、「メッセージ」にも追加して下さい。
テスト
ここまでで作業終わったので、テストしてみましょう。ルールの対象になっているプロジェクトの課題に担当者を割り当ててみましょう。
課題の担当者を変更すると Slack では下記の様なメッセージが表示され、メンションも実施されます。このようなメッセージが表示されない場合は、自動化ルールの監査ログを確認して下さい。
ご不明点は ヘルプデスク (要サポートサービス契約)までお問い合わせください。
サポートサービスの新規ご契約は お問い合わせフォーム にご連絡ください。
Related content
リックソフト株式会社 は、日本でトップレベルのAtlassian Platinum Solution Partnerです。
大規模ユーザーへの対応実績が認められたEnterpriseの認定をうけ、高度なトレーニング要件をクリアし、小規模から大規模のお客様まで対応可能な実績を示したパートナー企業です。
Copyright © Ricksoft Co., Ltd. プライバシーポリシー お問い合わせ