backstage

Форк
0

README.md

events-backend-module-gitlab

Welcome to the events-backend-module-gitlab backend plugin!

This plugin is a module for the events-backend backend plugin and extends it with an GitlabEventRouter.

The event router will subscribe to the topic gitlab and route the events to more concrete topics based on the value of the provided $.event_name payload field.

Examples:

$.event_nametopic
pushgitlab.push
merge_requestgitlab.merge_request

Please find all possible webhook event types at the official documentation.

Installation

Install the events-backend plugin.

Install this module:

# From your Backstage root directory
yarn --cwd packages/backend add @backstage/plugin-events-backend-module-gitlab

Add the event router to the EventsBackend instance in packages/backend/src/plugins/events.ts:

+const gitlabEventRouter = new GitlabEventRouter();
new EventsBackend(env.logger)
+ .addPublishers(gitlabEventRouter)
+ .addSubscribers(gitlabEventRouter);
// [...]

Token Validator

Add the token validator for the topic gitlab:

// at packages/backend/src/plugins/events.ts
+ import { createGitlabTokenValidator } from '@backstage/plugin-events-backend-module-gitlab';
// [...]
const http = HttpPostIngressEventPublisher.fromConfig({
config: env.config,
ingresses: {
+ gitlab: {
+ validator: createGitlabTokenValidator(env.config),
+ },
},
logger: env.logger,
});

Additionally, you need to add the configuration:

events:
modules:
gitlab:
webhookSecret: your-secret-token

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.