feat(signals,events)!: migrate signals to use events service

+ allow defining event paylod in events service

Signed-off-by: Heikki Hellgren <heikki.hellgren@op.fi>
This commit is contained in:
Heikki Hellgren
2024-02-28 08:12:12 +02:00
parent 1d1c8a79fb
commit daf85dc4ab
16 changed files with 72 additions and 64 deletions
@@ -33,9 +33,9 @@ import {
} from '@backstage/catalog-client';
import { DefaultSignalService } from '@backstage/plugin-signals-node';
import {
EventBroker,
EventParams,
EventSubscriber,
EventsService,
EventsServiceSubscribeOptions,
} from '@backstage/plugin-events-node';
export interface ServerOptions {
@@ -96,19 +96,17 @@ export async function startStandaloneServer(
},
};
const mockSubscribers: EventSubscriber[] = [];
const eventBroker: EventBroker = {
const mockSubscribers: EventsServiceSubscribeOptions[] = [];
const events: EventsService = {
async publish(params: EventParams): Promise<void> {
mockSubscribers.forEach(sub => sub.onEvent(params));
},
subscribe(...subscribers: EventSubscriber[]) {
subscribers.flat().forEach(subscriber => {
mockSubscribers.push(subscriber);
});
async subscribe(subscription: EventsServiceSubscribeOptions) {
mockSubscribers.push(subscription);
},
};
const signalService = DefaultSignalService.create({ eventBroker });
const signalService = DefaultSignalService.create({ events });
const router = await createRouter({
logger,