HCL Accelerate: GitHub と Jira と組み合わせた HCL Accelerate Value Stream Management

2020/8/22 - 読み終える時間: 9 分

今回は Jira と GitHub の活動を統合して見える化する内容 HCL Accelerate VSM with GitHub and Jira の翻訳版です。


GitHub と Jira と組み合わせた HCL Accelerate Value Stream Management

2020年8月20日

著者: Daniel Trowbridge / Technical Lead

画像の説明

このチュートリアルでは、HCL Accelerate で GitHub 統合を作成する方法を説明します。これは、Jira、GitHub 、Jenkins を使用して HCL Accelerateのバリューストリームを設定し、使用するチュートリアルシリーズの第2部です。一部のバリューストリームのステップは、Jiraチュートリアルの完了を前提としています。Jiraチュートリアルを完了していない場合は、ここで完了できます。

1. GitHub リポジトリを設定する

GitHub の要件は以下のとおりです。

  • GitHub リポジトリへのアクセス (このワークブックでは公開リポジトリを想定しています)
  • GitHub API トークン
  • プルリクエスト (PR) を作成する機能。

このワークブックは、公開 GitHub アカウントと公開リポジトリを前提としています。公開 GitHub アカウントを持っていない場合は、公開リポジトリと同様に作成する必要があります。リポジトリの内容は重要ではありませんが、PRが必要で、PR名には、フォローするJira課題の課題IDが含まれていなければなりません(ここでの例は"JKET-1")。

2. GitHub インテグレーションを作成する

注: GitHub プラグインの設定はバージョン 1.0.31 から変更されました。バージョン1.0.31 以降では、URL フィールドは必要ありませんが、下記のステップ 9 のようにユーザーアクセスキーが必要になります。

  • HCL Accelerateのプラグインページ(設定>統合>プラグイン)から統合を追加できます。

画像の説明

  • このワークブックの統合名は「JKE GitHub App1」としてください。

画像の説明

  • GitHub のURLはリポジトリへのURLにしてください (プラグインのバージョン1.0.31以降では必要ありません)

画像の説明

  • GitHub リポジトリ URL から「名前」(リポジトリ名)および「所有者」(リポジトリアカウント)フィールドを取得できます。

画像の説明

  • API URLは GitHub のインスタンスに依存します。このワークブックでは、"https://api.github.com" を使用する GitHub のパブリックインスタンスを想定しています。

画像の説明

  • リポジトリにアクセスできるアカウント用の GitHub パーソナルアクセストークンを作成し、そのトークンをコピーして統合フォームに貼り付けます。GitHub の公開トークンは https://github.com/settings/tokens で作成できます。トークンを作成する際に、「スコープ/権限」のチェックボックスを選択する必要はありません。

画像の説明

  • 追加」ボタンをクリックして統合を作成します。統合」ビューに移動して、統合が作成され、「オンライン」になっていることを確認します。ドロップダウンを展開して、統合の詳細を確認できます。(以下に示す Jira 統合は、別の演習の一部として作成されたことに注意してください)

画像の説明

  • 統合名の横にある青い点は、アップグレードが可能であることを示しています。この時点でプラグインをアップグレードしておくと良いでしょう。三角点(カボブ)メニューの下にある「アップグレード」をクリックします。プラグインイメージが最新バージョン(1.0.36以降)に更新されるはずです。

画像の説明

  • ユーザーアクセスキー( GitHub プラグインのバージョン1.0.31以降。
  1. GitHub プラグインのバージョン1.0.31以降では、HCL Accelerateユーザーアクセスキーが必要です。URLフィールドも削除されました。1.0.31以前のバージョンからのアップデートでは、ユーザー・アクセス・キーとの統合を編集する必要があります。

  2. アクセスキーを作成するには、「設定」→「マイプロフィール」で「作成」をクリックします。アクセスキーを作成するには、「設定」→「マイプロファイル」→「作成」をクリックします。アクセスキーの名前は、それを使用する統合に合わせて、「JKE GitHub App1」のような名前にするのが良いでしょう。この時点でキーをコピーしておくと後でコピーできなくなるので、必ずコピーしておきましょう。

画像の説明

  1. キーを作成したら、統合ページに戻ります。GitHub 統合の kabob メニューから「編集」をクリックします。フォームにユーザーアクセスキーを入力します。

画像の説明

画像の説明

3. GitHub インテグレーションをバリューストリームに追加する

vsm.json ファイルを使って、GitHub 統合と linkRule を値のストリームに追加します。ファイルをダウンロードして、以下のセクションを追加して修正し、再度ファイルをアップロードして変更を適用します。PR が開いているので、作業項目 (ドット) は"In Progress" ステージに移動するはずです。PR またはコミットが作業項目に正しくリンクされていない場合、四角(PR)または三角(コミット)として表示されますが、ドットはリンクされたすべての PR とコミットを含む実際の作業項目を表します。1つの作業項目に複数のPRをリンクできます。PR ブランチへのコミットは、ワークアイテムを更新します。

注: この時点から、いくつかのステップでは、Jira チュートリアルを使用して VSM を事前に完了していることを前提としています。チュートリアルをまだ終えていない場合は、今すぐ完了させるか、Jira との統合を行わずに先に進んでください。GitHub は統合されて PR やコミットを表示できます。しかし、イシュートラッカーの統合とそれに対応するリンクルールがなければ、作業項目のリンクはできません。以下のように vsm.json ファイルを編集して GitHub との連携を含めることに加えて、ステージクエリを編集する必要があります。

"query":"pr.status=open".

  1. 作業用の vsm.json ファイルを値ストリームからダウンロードします。

画像の説明

  1. GitHub 統合を .json コンテンツに追加します。

別のチュートリアルでJiraの統合を追加するために使用したjsonと同様に、もう一つのjsonオブジェクトを統合配列に追加する必要があります。ここでの名前は、先ほど作成した GitHub 統合の名前と一致させなければなりません。今のところ必要なのは、GitHub オブジェクトをシングルネームプロパティで追加するだけです。vsm.json に Jira のような他の統合が含まれている場合は、無視しても構いません。

"integrations". [
 {
* 名前":"JKE GitHub App1"
 }
 //その他の統合...
],
  1. vsm.json の設定に GitHub -Jira の linkRule を追加します。

空のリンクルールの配列を置き換える...

"linkRules". [],

に新しいリンクルールオブジェクトを含む配列を指定します。この linkRule は、pr.name の中の jira.id を認識する正規表現パターンに基づいて GitHub の PR と Jira の課題をリンクします。

"linkRules". [
 {
* fromIntegrationName"。"JKE GitHub App1".
* toIntegrationName"。"JKE Jira 1".
*"fromField"."pr.name":"pr.name
*"toField"."issue.id":"issue.id
*"パターン"です。"([A-Z]+-[0-9]+)"
 }
],
  1. vsm.jsonファイルを保存してアップロードします。

画像の説明


四角が見えますか?

GitHub の活動にもよりますが、"Merged" のようなステージにいくつかの四角が表示されていることに気づくかもしれません。これは、Jira カードにリンクされていない以前のコミットを表しています。私たちは新しい PR を作成して Jira カードにリンクさせることに焦点を当てているので、このような四角が表示されても無視して構いません。

画像の説明

4. Jiraと GitHub を使ったステージ変更

さて、GitHub をインテグレーションとして設定したところで、次はバリューストリームの中で GitHub を実際に使ってみましょう。GitHub はスタンドアロンの統合として使うこともできますし、さまざまな統合と一緒に使うこともできます。ここでは、Jira チュートリアルの VSM を使用していることに注意してください。

4.1 ドットを「進行中 (In Progress)」に移動する(PRを作成する)

ドットを「進行中」の段階に移動させるには、GitHub でプルリクエスト(PR)を作成する必要があります。

  • リポジトリ内の任意のファイルを編集します。この例では、ファイルの右上にある鉛筆のアイコンをクリックして編集できる、README ファイルを編集しています。

  • ファイルに変更を加えます。これらの変更は、以前に作成した Jira カードに対応するものと考えてください。これは、そのカードのコード変更を表しています。

画像の説明

  • 変更を別のブランチにコミットします。コミットメッセージとブランチ名は好きなように設定できます。

  • プルリクエストを作成するように促されたら、プルリクエスト名に Jira カードの ID/コード (例:"JKET-1") を入力し、"Create pull request" をクリックします。

画像の説明

  • プルリクエストがオープンで、JiraカードのIDが含まれていることを確認します。

画像の説明

  • HCL Accelerateが検出して更新されるのを待った後、「進行中」の段階でドットが表示されるはずです。

4.2 ドットを「レビュー中 "In Review"」に移動する

  • Jiraカードを"In Review"に更新してください。
  • HCL Accelerateが更新されるのを待ちます。ドットが "In Progress" から "In Review" に移動するはずです。

画像の説明

4.3 ドットを「マージ済み (Merged)」に移動する

  • 先に進み、GitHub で PR をマージします。

画像の説明

  • HCL Accelerateがアップデートされるのを待ちます。ドットが"In Review"から"Merged"に移動するはずです。

画像の説明


次のステップへ。開発からサーバー構築、そしてその先へ

Wow! Jiraと GitHub の両方の活動が、HCL Accelerateで一つの真実のソースになるのを目の当たりにしています。次のステップは、ビルドとデプロイメントを統合して、本番まで作業項目を追跡することです。そのためには、Jenkins との統合を作成する必要があります。

このブログについて

HCL Japan の Software 部門の複数担当者で HCL Software 全般について記しています。

Tags

Academy Accelerate Accelerator Actian Ambassador AoC AppDev Pack AppScan ASoC BigFix BigFix Workspace CAA Clara Client Applicatin Access Cloud Native Commerce Common Local License Server Compass Connections Connnections CVE-2021-44228 DevOpes Velocity DevOps DevOps Code ClearCase DevOps Code RealTime DevOps Deploy DevOps.Launch.AppScan DevOps Model RealTim DevOps Model RealTime DevOps Plan DevOps Test DevOps Velocity Digital Experience Discover Domino Domino Leap Domino Volt Domino管理者アップデート認定試験対策 DQL DRYiCE DX Enterprise Integrator event General HCAA HCL Ambassador HCL Ambassadors HCL Domino REST API HCL OneTest Embedded HCL Z and I Emulator HCL Z and I Emulator for Transformation HCLSoftware U Hero history HTMO iControl iNotes IZSAM KEEP Launch Launch.DevOps Leap Link MarvelClient nds2019 ndv12beta Noets/Domino Nomad Nomad Mobile Nomad Web notes Notes/Domino notes-domino-9-10-limited-supportability-as-of-202204 Notes/Domino V12 Notes/Domion notescons Now OneDB OneTest OnTime REST RTist SafeLinx Sametime SoFy Total Experience Traveler Traveler for Microsoft Outlook Unica Unica Discover Unica Interact UrbanCode Deploy UrbanCode Velocity Velocity Verse VersionVault Volt Volt MX Volt MX Go Volt MX サンプルアプリ Wordload Automation Workload Automation youtube Z Z Abend Investigator Z and I Emulator Z and I Emulator for Transformation Z and I Emulator for Web Z and I Emulator for Web Client Z Asset Optimizer Z Data Tools Z Software Asset Manager ZAI ZAO ZIE ZIE for Transformation ZIE for Web ZIE for Windows ZIET ZIETrans ZIEWeb イベント ガイド クラウド サポート サポート技術情報 サポート終了 セキュリティ セキュリティー セキュリティー脆弱性 テクてく Lotus 技術者夜会 ニュース ノーツコンソーシアム パートナー ライセンス 九州地区 Notes パートナー会 出荷日 研修