22
23

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

JiraとGitLabの連携してもっと便利に使おう!

Last updated at Posted at 2018-10-24

#はじめに

JiraのTransitionIDの確認方法を更新しました(2019/4/10)追記

詳細は下記リンクに書いています。
https://docs.gitlab.com/ee/user/project/integrations/jira.html

#前提

  • Jiraにアカウントがあること
  • GitLabにアカウントがあること

連携方法

GitLabのプロジェクトから Settings > Integrations を選択し、Project services の一覧の Jira をクリックします。すると下記のような画面になるので Active にチェックをつけて入力項目を埋めて、Test Settings and save changes を押して保存すると連携が開始されます。

gitlab_setting.jpg

設定項目について

JIRA API URL

Jira の URL そのままで問題なし。

username / password

Atlassian のアカウントで問題なし。

Transition ID(s)

Transition ID(s) は Jiraのプロジェクトによって異なるため、対象の課題から調査して設定する必要があります。

具体的にはAPIを叩きます。例えば、マージされたら完了するよう連携させたい場合、マージ状態のISSUEを指定しAPIを叩きます。

https://yourcompany.atlassian.net/rest/api/2/issue/ISSUE-123/transitions

すると下記のJSONファイルを取得できます。

{
  "expand": "transitions",
  "transitions": [
    {
      "id": "101", // <- 該当の Transition ID
      "name": "マージ",
      "to": {
        "self": "https://showcase-tv.atlassian.net/rest/api/2/status/6",
        "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.",
        "iconUrl": "https://showcase-tv.atlassian.net/images/icons/statuses/closed.png",
        "name": "完了",
        "id": "6",
        "statusCategory": {
          "self": "https://showcase-tv.atlassian.net/rest/api/2/statuscategory/3",
          "id": 3,
          "key": "done",
          "colorName": "green",
          "name": "Done"
        }
      },
      "hasScreen": false,
      "isGlobal": false,
      "isInitial": false,
      "isConditional": false
    },
    {
      "id": "131",
      "name": "レビュー取り消し",
      "to": 
      (以下略)
    }
}

Transition情報は複数返ってきますが、今回はISSUEを完了させたいのでそれに該当する Transitions ID を見つけます。

使い方

GitLab で merge request を投げ、タイトルにトリガーとなる単語を含めます。すると Jira へのリンクが自動で貼られます。

git_merge_request.jpg

トリガーとなる単語は3つで、下記のように記述します。

  • Resolves {IssueID}
  • Closes {IssueID}
  • Fixes {IssueID}

Jira側にもリンクが貼られます。対象の課題を開くと、 Issue links にリンクが貼られます。

スクリーンショット 2018-10-23 15.33.58.png

この他、コメントにも追加されます。

jira_comment.jpg

この merge request が閉じられるとワークフローの状態が自動で変更されます。(ワークフローの状態名はプロジェクトにより違いがあります)

スクリーンショット 2018-10-23 17.02.40.png

スクリーンショット 2018-10-23 17.02.52.png

便利!

まとめ

自分が設定した際に、少しわかりにくい箇所があったので記事にしました。最適化はQOLをあげるのでどんどんやっていきたいですね!

22
23
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
23

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?