GitHub を Jira と統合する

GitHub for Jira ベータ トライアルに参加している GitHub Enterprise Server のお客様は、このリンクをたどって、GitHub for Jira アプリを介して GitHub Enterprise Server アカウントを Jira に接続する方法について詳しく学んでください。

GitHub または GitHub Enterprise アカウントが Jira Software にリンクされると、チームはそれぞれが取り組んでいる Jira Software 課題に関連するブランチ、コミット メッセージ、プル リクエスト、ビルド、デプロイを表示できるようになります。開発ツールとの統合に関する詳細についてご確認ください。

GitHub Cloud または GitHub Enterprise Cloud アカウントを Jira Software に接続する

Marketplace アプリによって、Jira Cloud を GitHub Cloud または GitHub Enterprise Cloud と統合できます。これらのアカウント間をリンクすることによって、計画中とスタンドアップ中に Jira Software チケットを表示しながら、ブランチ、コミット、プル リクエスト、ビルド、デプロイに素早く直接アクセスできます。

統合の詳細や質問については、GitHub のオープン ソース リポジトリをご参照ください。または、アトラシアン チームにお問い合わせください

GitHub Cloud 組織を Jira Software に接続するには、次の手順に従います。

  1. Atlassian Marketplace から Jira 向け GitHub アプリ (無料) をインストールして、指示に従ってインストールを完了します。

  2. [始める] を選択して GitHub 設定ページに移動します (または [アプリ] > [アプリを管理] の順に移動して、GitHub メニューで [統合を設定] を選択します)。

  3. [GitHub 組織を接続] を選択します。

  4. 統合する GitHub 組織を見つけて [接続] を選択するか、[Install GitHub for Jira on a new organization (新しい組織に Jira 向け GitHub をインストール)] を選択して別の GitHub 組織に Jira アプリ向け GitHub をインストールします。

  5. GitHub 設定ページに戻って [GitHub 組織を接続] をもう一度選択し、Jira サイトに接続する組織の横にある [接続] をクリックします。

組織が正常に接続されると、Jira の GitHub 設定ページにその組織が表示されます。

接続されている組織を示す Jira の GitHub 設定ページ

サイトの Jira 課題を参照するブランチ、コミット、プル リクエスト、ビルド、デプロイに関する開発情報を表示できるようになりました。開発作業の課題参照に関する詳細についてご確認ください

GitHub 組織で IP 許可リストを使用している場合は、Jira 向け GitHub を使用すると問題が発生する可能性があります。GitHubは、正しい IP アドレスが IP 許可リストにリストされていても API へのいくつかのリクエストをブロックします。この問題を回避するには、IP アドレス 13.52.5.9613.52.5.111 を IP 許可リストに追加する必要があります (各 IP アドレスは、CIDR 範囲としてではなく個別に追加する必要があります)。サーバーの IP アドレス範囲が変更された場合、Jira 向け GitHub を引き続き使用するには新しい IP アドレスを追加する必要があります。GitHub IP 許可リストの設定に関する詳細についてご確認ください

IP 許可リストで問題が発生した場合は、サポートを受けられるように課題を登録してください。

GitHub Enterprise Server アカウントを Jira Software に接続する

これらの手順は GitHub Enterprise Server 向けです。つまり、独自のインフラストラクチャでインストールを管理する GitHub のオンプレミス バージョンが対象です。GitHub Cloud または GitHub Enterprise Cloud の場合は、DVCS コネクターを使用するのではなく上記の手順に従ってください。

GitHub Enterprise Server アカウントを Jira Software に接続するには、Jira の DVCS コネクターを使用する必要があります。Jira Software とリンク先の GitHub Enterprise アカウントの両方で、管理者権限を持っている必要があります。 

正しく統合するには、DVCS コネクターから GitHub Enterprise Server を呼び出せるようにする必要があります。ネットワーク管理者に問い合わせて、GitHub Enterprise Server をアトラシアンの IP アドレスから呼び出せることをご確認ください。これを行ううえでファイアウォールに脆弱性がもたらされるため、受け入れないセキュリティ チームもあります。現在、リバース プロキシは DVCS ではサポート対象外です。現在、アトラシアンはファイアウォールの内側で実行されている GitHub Enterprise Server アカウントを、Jira Software に接続する代替ソリューションに取り組んでいます。Atlassian クラウド製品の IP アドレスに関する詳細についてご確認ください。

GitHub Enterprise Server では、SSO を介したパーソナル アクセス コードの認証はサポート対象外です。つまり、ネットワーク管理者が Atlassian IP アドレスからのトラフィックを許可しても、DVCS の GitHub Enterprise Server インストールに接続できません。この制限は、GitHub Enterprise Server チームが GitHub Enterprise Cloud に提供しているものと同じメカニズムを導入するまで解消されません。

ステップ 1. GitHub Enterprise アカウント用に OAuth アクセス トークンを作成する

DVCS コネクタには OAuth アクセス トークンが必要です。アクセス トークンはGitHub Enterprise アカウントで作成します。アクセス トークンは、リンクするリポジトリを所有している GitHub Enterprise アカウントで作成する必要があります。チームのリポジトリをリンクする場合、チーム アカウントを使用してこのトークンを作成する必要があります。 

次のように OAuth トークンを作成します。

  1. GitHub Enterprise に、アカウントの管理者権限を持つユーザーとしてログインします。

  2. [設定] > [開発者設定] > [OAuth アプリ] の順に移動します。

  3. [新しい OAuth アプリ] を選択します。 

  4. アプリケーション名に名前を入力します。 

  5. URLコールバック URL の両方のフィールドに Jira Software の URL を入力します。小文字を使用します。[アプリケーションの登録] を押します。

    Jira Software のベース URL (例: https://myjiracloud.atlassian.net/) を、ホームページ URL認証コールバック URL フィールドの両方に入力するようにします。https://myjiracloud.atlassian.net/secure/Dashboard.jspa などのダッシュボード URL は使用しないでください。 

  6. ステップ 2 の実行中は、GitHub Enterprise アカウントでブラウザを開いたままにしてください。

ステップ 2. Jira Software に OAuth トークンを追加する

GitHub Enterprise でキーとシークレットを作成してから、Jira Software に戻り、次のようにアカウント、OAuth キー、シークレットを入力します。

  1. 管理者権限を持つユーザーとして Jira Software にログインします。

  2. > [製品] の順に選択します。

  3. 左側の統合セクションで、DVCS アカウントを選択します。

  4. [GitHub Enterprise アカウントをリンク] をクリックします。

  5. GitHub ユーザー アカウント名を入力します。

  6. [Host URL] として GitHub Enterprise サイトの URL を入力します。

  7. [クライアント ID] と [クライアント シークレット] 値を GitHub Enterprise サイトからダイアログにコピーします。

  8. 既定の自動リンクとスマートコミットをそのままにする (推奨) か、変更します。

必須フィールドが表示された新しい GitHub Enterprise アカウントを追加する画面

9. [追加] をクリックします。この時点でブランク ページにリダイレクトされた場合は「GitHub への DVCS 接続でブランク ページが生成される」をご参照ください。
10. プロンプトが出たらアクセスを許可します。
11. Jira が正常に接続されると「DVCS アカウント」ページにご利用のアカウントが表示されます。

接続したアカウントとそのすべてのリポジトリが、「管理対象 DVCS アカウント」ページに表示されます。最初の同期が自動で開始します。それ以降、システムは定期的にリポジトリの同期を継続して行います。

GitHub Enterprise アカウント用の OAuth アクセス トークンをリセットする

OAuth トークンを再生成するには、次の手順に従います。

  1. GitHub Enterprise に、アカウントの管理者権限を持つユーザーとしてログインします。

  2. [設定] > [開発者設定] > [OAuth アプリ] の順に移動します。

  3. OAuth アプリを選択します。

  4. アプリのページで [Revoke all user tokens (すべてのユーザー トークンを取り消す)] をクリックして、このアプリケーションのすべての古いユーザー トークンを削除します。

  5. [Generate a new client secret (新しいクライアント シークレットの生成)] をクリックします。

  6. 新しいクライアント シークレットをコピーして、古いクライアント シークレットを削除します。

  7. Jira の DVCS アカウント ページに移動します。

  8. 既存の GitHub Enterprise アカウントまたはワークスペースの横にある [その他のオプション] (•••) メニューをクリックします。

  9. [OAuth 設定をリセット] を選択します。

  10. 既存のクライアント ID をキーとして、新しいクライアント シークレットをシークレットとして貼り付けて、アクセス トークンを再生成します。

接続に関する注意事項

コネクターは、キーとシークレットを自動的には信頼しません。アカウントとパスワードの組み合わせを使用して DVCS への接続を認証することを求められます。認証するアカウントは、キーとシークレットの作成に使用したアカウントではなくてもかまいませんが、リンクするすべてのリポジトリに対して管理アクセス権限を持つアカウントである必要があります。 

Jira DVCS コネクタを使用してアカウントをリンクすると、コネクタは GitHub Enterprise のアカウントで所有しているすべてのリポジトリにコミット後の webhook を追加します。コミットが発生すると、DVCS コネクタはコミット メッセージを収集して処理します。

Jira Software 側では、GitHub Enterprise アカウントで所有しているリポジトリが [DVCS アカウント] ページに表示されます。チーム メンバーは個々の GitHub Enterprise アカウントにリポジトリを作成できますが、所有者にはチームを割り当てる必要があります。このようなリポジトリも一覧に表示されます。

アカウントをリンクさせた後、Jira Software は課題キーを参照するコミットの検索を自動で開始します。要約には、同期結果とエラー (ある場合) が表示されます。GitHub Enterprise リポジトリから Jira Software へのコミット データの同期には時間がかかる場合があります。同期が進むと関連課題にコミットが表示されます。必要に応じて、Jira Software でリポジトリのリンクをいつでも有効化/無効化できます。 

Jira Software プロジェクトでのコミット情報の表示例

開発者がコミットを作成する場合、以下のように、Jira Software の課題キーをコミット メッセージに追加する必要があります。

1 2 git commit -m "PROJ-123 add a README file to the project." git push origin <branchname>

Jira Software は課題キーを使用してコミットを課題に関連付けます。これにより、コミットの概要を Jira Software 課題の開発パネルに表示できるようになります。

開発ツールとの統合の詳細について紹介しています。

プロジェクトのユーザーは、JIRA Software 課題の開発パネルでコミット情報を見るために「開発ツールを表示」権限を持っている必要があります。JIRA Software 管理者は、プロジェクトの権限スキームを編集してこの権限を付与できます。プロジェクト権限の管理に関する詳細についてご確認ください。

リポジトリ アクティビティを使用して、企業管理対象プロジェクトの課題を自動でアップデートする

企業管理対象のソフトウェア プロジェクトでは、GitHub リポジトリでアクティビティが発生したときに、課題のワークフローを自動化して課題をトランジションできます。

これを行う際は Automation for Jira のご利用をお勧めします。ワークフローを自動化するには、次の手順に従います。

  1. 企業管理対象プロジェクトに移動します。

  2. [プロジェクト設定] > [Automation] の順に選択します。

  3. [ライブラリ] タブを選択します。

  4. [DevOps] で、事前設定されたルールのいずれかを選択します。

  5. ルールの設定をプレビューするときに、[オンにする] を選択して有効にします。

プロジェクトの Automation ライブラリには、接続されたソース コード ツールで開発が行われたときに、ワークフローに沿って課題をトランジションする 3 つの事前設定ルールが用意されています。

  • ブランチが作成されたら → 課題を「進行中」に移動

  • コミットしたら → 課題を「進行中」に移動

  • プル リクエストがマージされたら → 課題を「完了」に移動

ソース コード トリガーを使用して、Jira プロジェクトの他の部分を自動化できます。Automation for Jira の詳細をご確認ください

その他のヘルプ