stage | group | info |
---|---|---|
Manage |
Import and Integrate |
To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments |
You can use slash commands to run common GitLab operations, like creating an issue, from a Mattermost chat environment.
GitLab can also send events (such as issue created
) to Mattermost as part of the
separately configured Mattermost notifications.
For a list of available slash commands, see Slash commands.
GitLab provides different ways to configure Mattermost slash commands. For any of these options, you must have Mattermost 3.4 or later.
- Linux package installations: Mattermost is bundled with Linux package. To configure Mattermost for Linux package installations, read the Linux package Mattermost documentation.
- If Mattermost is installed on the same server as GitLab, use the automated configuration.
- For all other installations, use the manual configuration.
If Mattermost is installed on the same server as GitLab, you can automatically configure Mattermost slash commands:
- On the left sidebar, at the top, select Search GitLab ({search}) to find your project.
- Select Settings > Integrations.
- Select Mattermost slash commands.
- Under Enable integration, ensure the Active checkbox is selected.
- Select Add to Mattermost, and select Save changes.
To manually configure slash commands in Mattermost, you must:
- Enable custom slash commands in Mattermost. (This step is required only for installations from source.)
- Get configuration values from GitLab.
- Create a slash command in Mattermost.
- Provide the Mattermost token to GitLab.
To enable custom slash commands from the Mattermost administrator console:
- Sign in to Mattermost as a user with administrator privileges.
- Next to your username, select the {ellipsis_v} Settings icon, and select System Console.
- Select Integration Management, and set these values to
TRUE
:- Enable Custom Slash Commands
- Enable integrations to override usernames
- Enable integrations to override profile picture icons
- Select Save, but do not close this browser tab. You need it in a later step.
To get configuration values from GitLab:
- In a different browser tab, sign in to GitLab as a user with administrator access.
- On the left sidebar, expand the top-most chevron ({chevron-down}).
- Select Admin Area.
- Select Settings > Integrations.
- Select Mattermost slash commands. GitLab displays potential values for Mattermost settings.
- Copy the Request URL value. All other values are suggestions.
- Do not close this browser tab. You need it in a later step.
To create a slash command in Mattermost:
-
In the Mattermost browser tab, go to your team page.
-
Select the {ellipsis_v} Settings icon, and select Integrations.
-
On the left sidebar, select Slash commands.
-
Select Add Slash Command.
-
Provide a Display Name and Description for your new command.
-
Provide a Command Trigger Word based on your application's configuration:
- If you intend to only connect one project to your Mattermost team, use
/gitlab
for your trigger word. - If you intend to connect multiple projects, use a trigger word that relates
to your project, such as
/project-name
or/gitlab-project-name
.
- If you intend to only connect one project to your Mattermost team, use
-
For Request URL, paste the value you copied from GitLab.
-
For all other values, you may use the suggestions from GitLab or your preferred values.
-
Copy the Token value, and select Done.
Creating a slash command in Mattermost generates a token you must provide to GitLab:
- In the GitLab browser tab, select the Active checkbox.
- In the Token text box, paste the token you copied from Mattermost.
- Select Save changes.
Your slash command can now communicate with your GitLab project.
Prerequisite:
- To run slash commands, you must have permission to perform the action in the GitLab project.
To interact with GitLab using Mattermost slash commands:
- In a Mattermost chat environment, run your new slash command.
- Select connect your GitLab account to authorize access.
You can see all authorized chat accounts in your Mattermost profile page under Chat.
When a Mattermost slash command does not trigger an event in GitLab:
- Ensure you're using a public channel. Mattermost webhooks do not have access to private channels.
- If you require a private channel, edit the webhook channel, and select a private one. All events are sent to the specified channel.