@backstage/plugin-events-backend-module-gitlab
TypeScript icon, indicating that this package has built-in type declarations

0.3.0 • Public • Published

events-backend-module-gitlab

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

This package is a module for the events-backend backend plugin and extends the event system 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_name topic
push gitlab.push
merge_request gitlab.merge_request

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

Installation

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

Event Router

// packages/backend/src/index.ts
import { eventsModuleGitlabEventRouter } from '@backstage/plugin-events-backend-module-gitlab/alpha';
// ...
backend.add(eventsModuleGitlabEventRouter);

Legacy Backend System

// packages/backend/src/plugins/events.ts
const eventRouter = new GitlabEventRouter({ events: env.events });
await eventRouter.subscribe();

Token Validator

// packages/backend/src/index.ts
import { eventsModuleGitlabWebhook } from '@backstage/plugin-events-backend-module-gitlab/alpha';
// ...
backend.add(eventsModuleGitlabWebhook);

Legacy Backend System

Add the token validator for the topic gitlab:

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

Configuration

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

Readme

Keywords

none

Package Sidebar

Install

npm i @backstage/plugin-events-backend-module-gitlab

Homepage

backstage.io

Weekly Downloads

1,845

Version

0.3.0

License

Apache-2.0

Unpacked Size

47 kB

Total Files

15

Last publish

Collaborators

  • patriko
  • freben
  • marcuseide