debian-mirror-gitlab/doc/user/project/integrations/overview.md

134 lines
11 KiB
Markdown
Raw Normal View History

2020-10-24 23:57:45 +05:30
---
stage: Create
group: Ecosystem
2021-02-22 17:27:13 +05:30
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments
2020-10-24 23:57:45 +05:30
---
2021-04-17 20:07:23 +05:30
# Integrations **(FREE)**
2020-04-22 19:07:51 +05:30
Integrations allow you to integrate GitLab with other applications. They
are a bit like plugins in that they allow a lot of freedom in adding
functionality to GitLab.
## Accessing integrations
You can find the available integrations under your project's
2021-03-11 19:13:27 +05:30
**Settings > Integrations** page.
2020-04-22 19:07:51 +05:30
There are more than 20 integrations to integrate with. Click on the one that you
want to configure.
2020-10-24 23:57:45 +05:30
![Integrations list](img/project_integrations_v13_3.png)
2020-04-22 19:07:51 +05:30
## Integrations listing
Click on the service links to see further configuration instructions and details.
2021-04-29 21:17:54 +05:30
| Service | Description | Service hooks |
| --------------------------------------------------------- | -------------------------------------------------------------------------------------------- | ---------------------- |
| [Asana](asana.md) | Add commit messages as comments to Asana tasks. | **{dotted-circle}** No |
| Assembla | Manage projects. | **{dotted-circle}** No |
| [Atlassian Bamboo CI](bamboo.md) | Run CI/CD pipelines with Atlassian Bamboo. | **{check-circle}** Yes |
| [Bugzilla](bugzilla.md) | Use Bugzilla as the issue tracker. | **{dotted-circle}** No |
| Buildkite | Run CI/CD pipelines with Buildkite. | **{check-circle}** Yes |
| Campfire | Connect to chat. | **{dotted-circle}** No |
| [Confluence Workspace](../../../api/services.md#confluence-service) | Replace the link to the internal wiki with a link to a Confluence Cloud Workspace. | **{dotted-circle}** No |
| [Custom issue tracker](custom_issue_tracker.md) | Use a custom issue tracker. | **{dotted-circle}** No |
| [Discord Notifications](discord_notifications.md) | Send notifications about project events to a Discord channel. | **{dotted-circle}** No |
| Drone CI | Run CI/CD pipelines with Drone. | **{check-circle}** Yes |
| [Emails on push](emails_on_push.md) | Send commits and diff of each push by email. | **{dotted-circle}** No |
| [EWM](ewm.md) | Use IBM Engineering Workflow Management as the issue tracker. | **{dotted-circle}** No |
| [External wiki](../wiki/index.md#link-an-external-wiki) | Link an external wiki. | **{dotted-circle}** No |
| Flowdock | Use Flowdock with GitLab. | **{dotted-circle}** No |
| [GitHub](github.md) | Obtain statuses for commits and pull requests. | **{dotted-circle}** No |
| [Hangouts Chat](hangouts_chat.md) | Receive events notifications. | **{dotted-circle}** No |
| [Irker (IRC gateway)](irker.md) | Send IRC messages. | **{dotted-circle}** No |
| [Jenkins](../../../integration/jenkins.md) | Run CI/CD pipelines with Jenkins. | **{check-circle}** Yes |
| JetBrains TeamCity CI | Run CI/CD pipelines with TeamCity. | **{check-circle}** Yes |
| [Jira](jira.md) | Use Jira as the issue tracker. | **{dotted-circle}** No |
| [Mattermost notifications](mattermost.md) | Send notifications about project events to Mattermost channels. | **{dotted-circle}** No |
| [Mattermost slash commands](mattermost_slash_commands.md) | Perform common tasks with slash commands. | **{dotted-circle}** No |
| [Microsoft Teams notifications](microsoft_teams.md) | Receive event notifications. | **{dotted-circle}** No |
| Packagist | Update your projects. | **{check-circle}** Yes |
| Pipelines emails | Send the pipeline status to a list of recipients by email. | **{dotted-circle}** No |
| PivotalTracker | Use PivotalTracker as the issue tracker. | **{dotted-circle}** No |
| [Prometheus](prometheus.md) | Monitor application metrics. | **{dotted-circle}** No |
| Pushover | Get real-time notifications on your device. | **{dotted-circle}** No |
| [Redmine](redmine.md) | Use Redmine as the issue tracker. | **{dotted-circle}** No |
| [Slack application](gitlab_slack_application.md) | Use Slack's official GitLab application. | **{dotted-circle}** No |
| [Slack notifications](slack.md) | Send notifications about project events to Slack. | **{dotted-circle}** No |
| [Slack slash commands](slack_slash_commands.md) | Enable slash commands in workspace. | **{dotted-circle}** No |
| [Unify Circuit](unify_circuit.md) | Receive events notifications. | **{dotted-circle}** No |
| [Webex Teams](webex_teams.md) | Receive events notifications. | **{dotted-circle}** No |
| [YouTrack](youtrack.md) | Use YouTrack as the issue tracker. | **{dotted-circle}** No |
2020-04-22 19:07:51 +05:30
## Push hooks limit
> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/17874) in GitLab 12.4.
If a single push includes changes to more than three branches or tags, services
2021-02-22 17:27:13 +05:30
supported by `push_hooks` and `tag_push_hooks` events aren't executed.
2020-04-22 19:07:51 +05:30
The number of branches or tags supported can be changed via
[`push_event_hooks_limit` application setting](../../../api/settings.md#list-of-settings-that-can-be-accessed-via-api-calls).
2020-10-24 23:57:45 +05:30
## Project integration management
2020-11-24 15:15:51 +05:30
Project integration management lets you control integration settings across all projects
2020-10-24 23:57:45 +05:30
of an instance. On the project level, administrators you can choose whether to inherit the
2020-11-24 15:15:51 +05:30
instance configuration or provide custom settings.
2020-10-24 23:57:45 +05:30
Read more about [Project integration management](../../admin_area/settings/project_integration_management.md).
2020-04-22 19:07:51 +05:30
2021-04-29 21:17:54 +05:30
### Service templates
[Service templates](services_templates.md) were a way to set predefined values for
a project integration across all new projects on the instance. They are deprecated and
[scheduled to be removed](https://gitlab.com/gitlab-org/gitlab/-/issues/268032)
in GitLab 14.0.
GitLab recommends you use [project integration management](../../admin_area/settings/project_integration_management.md)
instead of service templates. GitLab versions 13.3 and later provide
[instance-level integrations](../../admin_area/settings/project_integration_management.md#project-integration-management)
you can use.
instead.
2020-04-22 19:07:51 +05:30
## Troubleshooting integrations
2020-07-28 23:09:34 +05:30
Some integrations use service hooks for integration with external applications. To confirm which ones use service hooks, see the [integrations listing](#integrations-listing) above. GitLab stores details of service hook requests made within the last 2 days. To view details of the requests, go to that integration's configuration page.
2020-04-22 19:07:51 +05:30
The **Recent Deliveries** section lists the details of each request made within the last 2 days:
- HTTP status code (green for 200-299 codes, red for the others, `internal error` for failed deliveries)
- Triggered event
- URL to which the request was sent
- Elapsed time of the request
- Relative time in which the request was made
To view more information about the request's execution, click the respective **View details** link.
2020-07-28 23:09:34 +05:30
On the details page, you can see the request headers and body sent and received by GitLab.
2020-04-22 19:07:51 +05:30
2020-07-28 23:09:34 +05:30
To repeat a delivery using the same data, click **Resend Request**.
2020-04-22 19:07:51 +05:30
![Recent deliveries](img/webhook_logs.png)
2020-05-24 23:13:21 +05:30
### Uninitialized repositories
Some integrations fail with an error `Test Failed. Save Anyway` when you attempt to set them up on
2020-07-28 23:09:34 +05:30
uninitialized repositories. Some integrations use push data to build the test payload,
and this error occurs when no push events exist in the project yet.
2020-05-24 23:13:21 +05:30
To resolve this error, initialize the repository by pushing a test file to the project and set up
the integration again.
2020-04-22 19:07:51 +05:30
## Contributing to integrations
Because GitLab is open source we can ship with the code and tests for all
plugins. This allows the community to keep the plugins up to date so that they
always work in newer GitLab versions.
For an overview of what integrations are available, please see the
2020-05-24 23:13:21 +05:30
[project_services source directory](https://gitlab.com/gitlab-org/gitlab/tree/master/app/models/project_services).
2020-04-22 19:07:51 +05:30
Contributions are welcome!