正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

GitLab for Slackアプリ

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

このページには、GitLab for Slackアプリのユーザー向けドキュメントが含まれています。管理者向けドキュメントについては、GitLab for Slackアプリの管理を参照してください。

GitLab for Slackアプリは、スラッシュコマンド通知をSlackワークスペースに提供するネイティブSlackアプリです。GitLabは、SlackユーザーとGitLabユーザーをリンクさせることで、Slackで実行するコマンドが、リンクされたGitLabユーザーによって実行されるようにします。

GitLab for Slackアプリをインストールする

前提要件:

GitLab 15.0以降、GitLab for Slackアプリはきめ細かい権限を使用します。機能は変更されていませんが、アプリを再インストールする必要があります。

プロジェクト設定またはグループ設定から

プロジェクトまたはグループの設定からGitLab for Slackアプリをインストールするには、次の手順に従います:

  1. 左側のサイドバーで、検索または移動先を選択して、プロジェクトまたはグループを見つけます。
  2. 設定 > インテグレーションを選択します。
  3. GitLab for Slack appを選択します。
  4. Slackアプリ用GitLabをインストールを選択します。Slackの確認ページにリダイレクトされます。
  5. Slackの確認ページで次の手順を実行します:
    1. オプション。複数のSlackワークスペースにサインインしている場合は、右上にあるドロップダウンリストから、アプリをインストールするワークスペースを選択します。GitLab Self-ManagedおよびGitLab Dedicatedでは、ドロップダウンリストを表示するには、まず管理者が複数のワークスペースのサポートを有効にする必要があります。
    2. 許可を選択します。

Slack App Directoryから

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab.com

GitLab.comでは、Slack App DirectoryからGitLab for Slackアプリをインストールすることもできます。

Slack App DirectoryからGitLab for Slackアプリをインストールするには、次の手順に従います:

  1. GitLab for Slackのページに移動します。
  2. SlackワークスペースとリンクするGitLabプロジェクトを選択します。

GitLab for Slackアプリを再インストールする

GitLabがGitLab for Slackアプリの新しい機能をリリースした場合、これらの機能を使用するには、アプリを再インストールする必要がある場合があります。

GitLab for Slackアプリを再インストールするには、次の手順に従います:

  1. 左側のサイドバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 設定 > インテグレーションを選択します。
  3. GitLab for Slack appを選択します。
  4. Slackアプリ用GitLabをインストールを選択します。Slackの確認ページにリダイレクトされます。
  5. Slackの確認ページで次の手順を実行します:
    1. オプション。複数のSlackワークスペースにサインインしている場合は、右上にあるドロップダウンリストから、アプリを再インストールするワークスペースを選択します。GitLab Self-ManagedおよびGitLab Dedicatedでは、ドロップダウンリストを表示するには、まず管理者が複数のワークスペースのサポートを有効にする必要があります。
    2. 許可を選択します。

GitLab for Slackアプリは、インテグレーションを使用するすべてのプロジェクトで更新されます。

または、インテグレーションを再度設定することもできます。

スラッシュコマンド

スラッシュコマンドを使用して、一般的なGitLabオペレーションを実行できます。

GitLab for Slackアプリの場合:

  • 最初のスラッシュコマンドを実行するときに、Slackユーザーを承認する必要があります。
  • <project>をプロジェクトのフルパスに置き換えるか、スラッシュコマンドのプロジェクトエイリアスを作成できます。

SlackスラッシュコマンドまたはMattermostスラッシュコマンドを代わりに使用する場合:

  • /gitlabを、これらのインテグレーション用に設定したトリガー名に置き換えます。
  • <project>を削除します。

GitLabでは、次のスラッシュコマンドを使用できます:

コマンド説明
/gitlab help使用可能なすべてのスラッシュコマンドを表示します。
/gitlab <project> issue show <id>ID <id>があるイシューを表示します。
/gitlab <project> issue new <title> Shift+Enter <description>タイトル<title>と説明<description>があるイシューを作成します。
/gitlab <project> issue search <query><query>に一致するイシューを最大5つ表示します。
/gitlab <project> issue move <id> to <project>ID <id>があるイシューを<project>に移動します。
/gitlab <project> issue close <id>ID <id>があるイシューを閉じます。
/gitlab <project> issue comment <id> Shift+Enter <comment>コメント本文<comment>があるコメントを、ID <id>があるイシューに追加します。
/gitlab <project> deploy <from> to <to><from>環境から<to>環境にデプロイします。
/gitlab <project> run <job name> <arguments>デフォルトブランチでChatOpsジョブ<job name>を実行します。
/gitlab incident declareSlackからインシデントを作成するためのダイアログを開きます。

deployコマンド

環境へのデプロイのために、GitLabはパイプラインで手動デプロイアクションを見つけようとします。

1つのデプロイアクションのみが環境に定義されている場合、そのアクションがトリガーされます。複数のデプロイアクションが定義されている場合、GitLabは環境名に一致するアクション名を見つけようとします。

GitLabが一致するデプロイアクションを見つけられない場合、コマンドはエラーを返します。

プロジェクトエイリアスを作成する

GitLab for Slackアプリでは、スラッシュコマンドはプロジェクトのフルパスをデフォルトで使用します。代わりに、プロジェクトエイリアスを使用することができます。

GitLab for Slackアプリでスラッシュコマンドのプロジェクトエイリアスを作成するには、次の手順に従います:

  1. 左側のサイドバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 設定 > インテグレーションを選択します。
  3. GitLab for Slack appを選択します。
  4. プロジェクトのパスまたはエイリアスの横にある編集を選択します。
  5. 新しいエイリアスを入力し、変更を保存を選択します。

Slack通知

特定のGitLabイベントに関する通知をSlackチャンネルで受信できます。

通知を設定する

Slack通知を設定するには、次の手順に従います:

  1. 左側のサイドバーで、検索または移動先を選択して、プロジェクトを見つけます。

  2. 設定 > インテグレーションを選択します。

  3. GitLab for Slack appを選択します。

  4. トリガーセクションで、次のことを行います:

    • Slackで通知を受信するGitLabイベントごとにチェックボックスをオンにします。

    • オンにしたチェックボックスごとに、通知を受信するSlackチャンネルの名前を入力します。コンマで区切られた最大10個のチャンネル名を入力できます(例: #channel-one, #channel-two)。

      Slackチャンネルが非公開の場合、[GitLab for Slackアプリをチャンネルに追加](#receive-notifications-to-a-private-channel)する必要があります。
      
  5. オプション。通知設定セクションで、次のことを行います:

    • 壊れたパイプラインのみ通知チェックボックスをオンにして、失敗したパイプラインの通知のみを受信します。

    • 通知を送信するブランチドロップダウンリストから、通知を受信するブランチを選択します。

      通知は、これらのブランチから作成されたタグによってトリガーされたパイプラインに対しても送信されます。

      脆弱性に関する通知は、選択したブランチに関係なく、デフォルトブランチによってのみトリガーされます。詳細については、イシュー469373を参照してください。

    • Labels to be notified(通知するラベル)には、通知を受信するためにGitLabイシュー、マージリクエスト、またはコメントが持つ必要のあるラベルの一部またはすべてを入力します。すべてのイベントの通知を受信するには、空白のままにします。

  6. オプション。テスト設定を選択します。

  7. 変更を保存を選択します。

非公開チャンネルへの通知を受信する

Slack非公開チャンネルへの通知を受信するには、次の手順に従って、GitLab for Slackアプリをチャンネルに追加する必要があります:

  1. @GitLabを入力して、チャンネルでアプリをメンションします。
  2. Add to Channel(チャンネルに追加)を選択します。

通知イベント

次のGitLabイベントは、Slackで通知をトリガーできます:

イベント説明
プッシュプッシュがリポジトリに対して行われます。
イシューイシューが作成、クローズ、または再度オープンされます。
機密情報イシュー機密情報イシューが作成、クローズ、または再度オープンされます。
マージリクエストマージリクエストが作成、マージ、クローズ、または再度オープンされます。
メモコメントが追加されます。
機密情報メモ機密情報イシューに関する内部メモまたはコメントが追加されます。
タグプッシュタグがリポジトリにプッシュされるか、削除されます。
パイプラインパイプラインの状態が変化します。
WikiページWikiページが作成または更新されます。
デプロイデプロイが開始または終了します。
公開のグループメンション公開チャンネルでグループがメンションされます。
非公開のグループメンション非公開チャンネルでグループがメンションされます。
インシデントインシデントが作成、クローズ、または再度オープンされます。
脆弱性新しい一意の脆弱性がデフォルトブランチに記録されます。
アラート新しい一意のアラートが記録されます。

グループメンションの通知をトリガーする

グループメンションの通知イベントをトリガーするには、次の場所で@<group_name>を使用します:

  • イシューとマージリクエストの説明
  • イシュー、マージリクエスト、コミットのコメント