I would like to view this page in
TeamCity では Jira Cloud とのシームレスな統合が可能です。この TeamCity チュートリアルでは、2 つのプラットフォームの統合方法を詳しく説明します。
まず、プロジェクトを開いて Edit project(プロジェクトの編集)を選択します。左側に「Issue Trackers(課題トラッカー)」というリンクがあります。新しい接続を作成して Jira を選択すると、TeamCity からいくつかのフィールドへの入力を求められます。
まずは Display Name(表示名)に「My Personal Jira」と入力し、Jira Cloud の URL を構成します。ログイン情報とパスワードか API トークンの入力も必要です。接続を確立するには、API トークンを Jira Cloud で作成し、それを TeamCity に貼り付ける必要があります。
TeamCity と接続する Jira プロジェクトを選択することもできます。この例では、プロジェクト名に「QL」と入力します。すべての Jira プロジェクトを自動的に使用するように選択することも可能です。TeamCity でコミットメッセージ内にプロジェクトキー(この例では「QL」)を入力すると、コミットと Jira Cloud の概要ページ間に直接リンクが生成されます。
Jira Cloud チケットにもビルド情報(ビルドの成功可否)を直接送信する場合は、Jira Cloud 側で OAuth アプリを作成し、Cloud クライアント ID と Cloud サーバーのシークレットを入力する必要があります。
すると、接続をテストできるようになります。
成功しました!
その後、Jira Cloud にビルドステータスを送信したいビルド構成を開きます。General Settings(一般設定)| Build configurations(ビルド構成)| Edit(編集)| Build features(ビルド機能)| Jira Cloud integration(Jira Cloud の統合)に移動します。
TeamCity がビルド情報の送信先 Jira Cloud インスタンスを提案します。この TeamCity チュートリアルではインスタンスが 1 つしかないため、それを選択して Save(保存)をクリックしましょう。
では、接続をテストしましょう。TeamCity の Projects overview(プロジェクト概要)ページに移動し、GitHub も開きます。ここには、テスト用のコミットをあらかじめ用意しています。Jira 統合を実演するため、コミットメッセージ「QL-2」を含む新しい jiratest.txt
ファイルを作成しました。それをこれから main ブランチに直接コミットしましょう。
テストの 1 つに成功しなかったため、ビルドは失敗しました。TeamCity ではこのビルドを開き、反映された変更を確認できます。TeamCity には、テストの並べ替え、テストの並列実行、スマートなエラー解析、クオリティゲートなど、自動テストを最大限に活用するための広範な機能が多数備わっています。TeamCity のテスト自動化について詳しくご覧ください。
ビルドに関する詳細な情報を確認するには、ビルド番号リンクをクリックし、Change(変更)セクションまで下にスクロールしてください。TeamCity では、クリックすると Jira Cloud 上の課題に直接移動できるハイパーリンクも提供されます。
課題へのハイパーリンクを開くと、Jira Cloud でビルドステータスを確認できます。Jira の課題にあるリンクをクリックして TeamCity に戻ることもできます。
ご覧のように、統合は双方向で正常に機能しています。
TeamCity の他の統合に関する詳細は、以下のチュートリアルをご覧ください。
この動画では、Commit Status Publisher ビルド機能を使用して TeamCity ビルドの結果を GitHub に報告する方法を確認します。
コミットフックを使うと、CI/CD ジョブをより素早くトリガーしてパフォーマンスオーバーヘッドを減らすことができます。このチュートリアルでは、コミットフックを使用するように TeamCity サーバーを構成する方法を説明します。
TeamCity のチェックアウトルールとトリガールールの違いは何でしょうか?どちらも CI/CD パイプラインをバージョン管理システムの特定のディレクトリとファイルとのみ連携させる強力なツールです。チェックアウトルールとトリガールールは VCS 内の関連する部分の変更に対してのみビルドをトリガーするように設定することも可能です。