プロジェクトインテグレーション
GitLabプロジェクトを他のアプリケーションとインテグレーションすることができます。インテグレーションはプラグインのようなもので、GitLabに自由に機能を追加することができます。
プロジェクトのインテグレーションを見る
前提条件:
- 少なくともプロジェクトのメンテナーのロールを持っている必要があります。
プロジェクトで利用可能なインテグレーションを表示するには:
- 左のサイドバーで「検索」または「移動」を選択してあなたのプロジェクトを検索します。
- 設定]>[インテグレーション]を選択します。
また、インスタンスまたはグループ内のすべてのプロジェクトにわたってインテグレーション設定を表示および管理できます。単一のプロジェクトに対して、インスタンスまたはグループの設定を継承するか、カスタム設定を提供するかを選択できます。
SSL検証の管理
デフォルトでは、発信HTTPリクエストのSSL証明書は、作成者の内部リストに基づいて検証されます。つまり、証明書は自己署名できません。
Webhookや一部のインテグレーションでは、設定からSSL検証をオフにすることができます。
利用可能なインテグレーション
以下のインテグレーションを設定できます。
インテグレーション | 説明 | インテグレーションフック |
---|---|---|
アサナ | コミットメッセージを Asana タスクにコメントとして追加します。 | {点線円}いいえ |
アセンブラ | プロジェクトの管理 | {点線円}いいえ |
アトラシアン Bamboo CI | Atlassian Bamboo で CI/CD パイプラインを実行します。 | {チェックサークル}はい |
バグジラ | イシュートラッカーとしてBugzillaを使用します。 | {点線円}いいえ |
ビルドカイト | BuildkiteでCI/CDパイプラインを実行しましょう。 | {チェックサークル}はい |
キャンプファイヤー | チャットに接続 | {点線円}いいえ |
クリックアップ | イシュー・トラッカーとしてClickUpを使用します。 | {点線円}いいえ |
Confluence ワークスペース | Confluence クラウドワークスペースを内部 Wiki として使用します。 | {点線円}いいえ |
カスタムイシュートラッカー | カスタムのイシュー・トラッカーを使用します。 | {点線円}いいえ |
データドッグ | Datadogを使ってGitLabパイプラインをトレースしましょう。 | {チェックサークル}はい |
ディスコード通知 | プロジェクトイベントに関する通知を Discord チャンネルに送信します。 | {点線円}いいえ |
ドローンCI | DroneでCI/CDパイプラインを実行します。 | {チェックサークル}はい |
プッシュメール | 各プッシュのコミットと差分をメールで送信します。 | {点線円}いいえ |
電子メール | イシュー・トラッカーとしてIBM Engineering Workflow Managementを使用します。 | {点線円}いいえ |
外部Wiki | 外部Wikiをリンクします。 | {点線円}いいえ |
GitHub | コミットやプルリクエストのステータスを取得します。 | {点線円}いいえ |
Googleチャット | GitLabプロジェクトからの通知をGoogleチャットのルームに送信します。 | {点線円}いいえ |
港 | コンテナレジストリとして Harbor を使用します。 | {点線円}いいえ |
irker (IRCゲートウェイ) | IRCメッセージを送信します。 | {点線円}いいえ |
Jenkins | JenkinsでCI/CDパイプラインを実行します。 | {チェックサークル}はい |
JetBrains TeamCity CI | TeamCityでCI/CDパイプラインを実行します。 | {チェックサークル}はい |
ジラ | イシュートラッカーとしてJiraを使用します。 | {点線円}いいえ |
Mattermostの通知 | プロジェクトイベントに関する通知を Mattermost チャンネルに送信します。 | {点線円}いいえ |
Mattermostスラッシュコマンド | スラッシュコマンドで一般的なタスクを実行します。 | {点線円}いいえ |
Microsoft Teamsの通知 | イベント通知を受け取ります。 | {点線円}いいえ |
Packagist | PackagistでPHPの依存関係を更新してください。 | {チェックサークル}はい |
パイプラインメール | パイプラインのステータスを受信者リストにメールで送信します。 | {点線円}いいえ |
ピボット・トラッカー | Pivotal Trackerのストーリーにコメントとしてコミットメッセージを追加します。 | {点線円}いいえ |
パンブル | Pumbleチャンネルにイベント通知を送信します。 | {点線円}いいえ |
プッシュオーバー | あなたのデバイスにリアルタイムで通知を届けます。 | {点線円}いいえ |
レッドマイン | イシュー・トラッカーとしてRedmineを使用します。 | {点線円}いいえ |
シモ(非推奨) | GitLab Wikiの代わりにShimoを使ってください。 | {点線円}いいえ |
GitLab for Slackアプリ | Slackの公式GitLabアプリを使います。 | {点線円}いいえ |
Slack通知(非推奨) | プロジェクトのイベントに関する通知を Slack に送信します。 | {点線円}いいえ |
Slackスラッシュコマンド | ワークスペースでスラッシュ・コマンドを有効にします。 | {点線円}いいえ |
スカッシュTM | GitLabのイシューが変更されたときにSquash TMの要件を更新します。 | {チェックサークル}はい |
電報 | プロジェクトのイベント通知をTelegramに送信します。 | {点線円}いいえ |
ユニファイ回路 | プロジェクトイベントに関する通知をUnify Circuitに送信します。 | {点線円}いいえ |
Webex チーム | イベント通知を受け取る | {点線円}いいえ |
ユートラック | イシュー・トラッカーとしてYouTrackを使用します。 | {点線円}いいえ |
ZenTao(非推奨) | ZenTao をイシュー・トラッカーとして使用します。 | {点線円}いいえ |
プロジェクトWebhooks
プロジェクトの Webhook を設定して、プッシュやイシュー、マージリクエストなどの特定のイベントをリッスンすることができます。Webhookがトリガーされると、GitLabは指定されたWebhook URLにデータを含むPOSTリクエストを送信します。
詳しくはWebhooks をご覧ください。
プッシュフックの制限
GitLab 12.4で導入されました。
一つのプッシュが3つ以上のブランチやタグへの変更を含む場合、push_hooks
とtag_push_hooks
イベントでサポートされているインテグレーションは実行されません。
サポートされるブランチやタグの数は、push_event_hooks_limit
アプリケーションの設定 を変更することで変更できます。
インテグレーションに貢献する
GitLab の新しいネイティブインテグレーションを開発することに興味がある方は、こちらをご覧ください:
トラブルシューティング
インテグレーションによっては、外部アプリケーションと統合するためにフックを使うものがあります。どのインテグレーションがインテグレーションフックを使用しているかを確認するには、利用可能なインテグレーションを参照してください。詳細については、Webhook のトラブルシューティングを参照してください。
Test Failed. Save Anyway
エラー
初期化されていないリポジトリにインテグレーションを設定すると、Test Failed. Save Anyway
というエラーで失敗するインテグレーションがあります。このエラーは、インテグレーションがプッシュデータを使用してテストペイロードをビルドし、プロジェクトにプッシュイベントがないために発生します。
このエラーを解決するには、プロジェクトにテストファイルをプッシュしてリポジトリを初期化し、インテグレーションを再度セットアップします。