Jiraタスク追加自動化の試し

この記事を書いたチーム:frontier

初めに

【エンジニア募集中】フルリモート可◎、売上/従業員数9年連続UP、平均残業8時間、有給取得率90%、年休124日以上 etc.  詳細はこちらから>

プロジェクト管理ツールとして広く使用されているJiraですが、日々のタスク管理や追加作業に多くの時間を費やしていませんか?今回は、Jira REST APIを活用してタスクの追加を自動化する取り組みについて、私たちのチームでは、定期的に発生するレビュータスクの追加に多くの時間を費やしていました。特に、既存のタスクをコピーし、修正を加えて新しいタスクを作成する作業が頻繁に発生していました。この反復的な作業を自動化できれば、チームの生産性向上につながると考え、Jira REST APIを使用したスクリプト開発に着手しました。

下準備

まず、Jira REST APIのドキュメントを確認します。
https://developer.atlassian.com/server/jira/platform/rest-apis/
このドキュメントで、タスクの作成や更新に必要なエンドポイントや、リクエストの形式について学びます。

 Jira APIにアクセスするためには、API用トークンが必要です。
以下の手順で発行しました:

  • セキュリティ → API トークンの作成を選択
  • トークンの目的を入力し、「作成」をクリック
  • 生成されたトークンを安全な場所に保存(このトークンは再表示されないので注意)

タスク情報取得APIを叩いてみる

次に、Postmanを使って、以下画像のように設定します。

今回はタスク情報取得のAPIを試してみます。
以下の手順で実施します。

  • メソッド:GET
  • 認証:認証方法⇒Basic認証、ユーザー名⇒{Jiraのアカウント}、パスワード⇒{先ほど発行されたトークン}
  • URL:https://{domain}.atlassian.net/rest/api/3/issue/{issue_id} (波括弧中のパラメータを入れ替えてください)
    ※以下の場合はissue_idは”B1-1076”になります
  • 送信したら、Responseが返ってきます。

実際運用のサンプル

今回はPGPTのタスク既に作成された元に、それぞれのレビュー専用タスクを一気に作成するスクリプトを試作してみました。

環境:Python 3.8
INPUT:
    JIRAベースリンク       JIRA_URL
    APIトークン          API_TOKEN
    取得元のタスクID       original_task_id
    レビュアーのID        USER_ID
    POINT数           customfield_10016(デフォルト値:1)
OUTPUT:
    Create Copy1 担当者が取得元と同じ
    Create Copy2 担当者が特定ユーザー指定(レビュアー)

サンプルは以下となります。

 

【エンジニア募集中】フルリモートも◎(リモート率85.7%)、平均残業8時間、年休124日以上、有給取得率90% etc. 詳細はこちらから>

Smallitのサービス