2022-01-27 01:19:11 +03:00
|
|
|
|
# Уведомления GitLab в Telegram
|
|
|
|
|
|
|
|
|
|
Это приложение позволит вам получать уведомления о событиях из GitLab.
|
|
|
|
|
|
2022-01-27 01:20:00 +03:00
|
|
|
|
> Статья-документация: https://struchkov.dev/blog/gitlab-telegram-bot/
|
|
|
|
|
>
|
|
|
|
|
> Исходный код: https://github.com/uPagge/gitlab-notification
|
2022-01-27 01:19:11 +03:00
|
|
|
|
|
|
|
|
|
## Возможности бота
|
|
|
|
|
1. Уведомление о новых MergeRequest
|
|
|
|
|
2. Уведомление о возникновении конфликта в MergeRequest
|
|
|
|
|
3. Уведомление о добавлении вас в новый проект
|
|
|
|
|
4. Уведомление о смене статуса вашего MergeRequest
|
|
|
|
|
5. Уведомление о комментариях, в которых вас упоминают в формате @nickname
|
|
|
|
|
6. Уведомит о новой задаче в вашем MR.
|
|
|
|
|
7. Уведомит о закрытии вашей задачи в чужом MR
|
|
|
|
|
8. Уведомление о Pipeline
|
|
|
|
|
|
|
|
|
|
## Как запустить
|
|
|
|
|
|
|
|
|
|
1. Для начала нужно создать бота, который будет посылать вам уведомления в телеграмм. Делается это в [специальном боте](https://t.me/botfather)
|
|
|
|
|
2. После создания вы получите токен, сохраните его. Пример: 34534050345:FlfrleflerferfRE-ergerFLREF9ERF-NGjM
|
|
|
|
|
3. Теперь необходимо получить персональный токен в вашем gitlab. Достаточно токена на чтение. Сохраните его
|
|
|
|
|
4. Создайте базу данных gitlab_bot. **Обязательно именно такое название**
|
|
|
|
|
4. Можно приступать к запуску
|
|
|
|
|
|
|
|
|
|
### Пример запуска
|
|
|
|
|
```
|
|
|
|
|
sudo docker run --name gitlab-notify \
|
|
|
|
|
--env TELEGRAM_BOT_TOKEN=value \
|
|
|
|
|
--env TELEGRAM_BOT_USERNAME=value \
|
|
|
|
|
--env GITLAB_PERSONAL_TOKEN=value \
|
|
|
|
|
--env TELEGRAM_PERSON_ID=value \
|
|
|
|
|
--env GITLAB_URL=value \
|
|
|
|
|
--env DATASOURCE_URL=jdbc:postgresql://localhost:5432/gitlab_bot \
|
|
|
|
|
--env DATASOURCE_USERNAME=postgres \
|
|
|
|
|
--env DATASOURCE_PASSWORD=value \
|
|
|
|
|
--network="host" upagge/gitlab-telegram-notify:latest
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### Переменные
|
|
|
|
|
|
|
|
|
|
* `TELEGRAM_BOT_TOKEN` -- токен, который вы получили при создание бота.
|
|
|
|
|
* `TELEGRAM_BOT_USERNAME` -- название, которое вы дали боту. Пример my_bitbucket_bot
|
|
|
|
|
* `GITLAB_PERSONAL_TOKEN` -- токен, который вы получили в GitLab
|
|
|
|
|
* `TELEGRAM_PERSON_ID` -- ваш id в телеграм, можно узнать у [этого бота](https://t.me/myidbot)
|
|
|
|
|
* `GITLAB_URL` -- можно указать https://gitlab.com или url на ваш локальный GitLab строго в таком формате http://localhost:7990
|
|
|
|
|
* `DATASOURCE_URL` -- ссылка на базу данных Postgres, в следующем формате: jdbc:postgresql://localhost:5432/gitlab_bot
|
|
|
|
|
* `DATASOURCE_USERNAME` -- пользовать бд
|
|
|
|
|
* `DATASOURCE_PASSWORD` -- пароль от бд
|
|
|
|
|
|
|
|
|
|
После этого необходимо отправить боту сообщение, чтобы пройти первичную настройку.
|