feat: workflows release events (#7664)

* feat: Release grouped events once a worfklow finish

* update common step

* update types

* tests

* optionality

* fies

* cancel flow on release failure

* clear events on fail

* more tests

* log errors

* log more errors

* update missing interface method declaration

* fix missing return

* update mock

* fix tests
This commit is contained in:
Adrien de Peretti
2024-06-11 15:48:15 +02:00
committed by GitHub
parent bef5941714
commit dd0b9f0805
6 changed files with 216 additions and 16 deletions
@@ -4,17 +4,16 @@ import { createStep } from "@medusajs/workflows-sdk"
export const releaseEventsStepId = "release-events-step"
export const releaseEventsStep = createStep(
releaseEventsStepId,
async (
input: void,
{
container,
metadata: {
/* eventGroupId */
},
async (input: void, { container, eventGroupId }) => {
const eventBusService = container.resolve(
ModuleRegistrationName.EVENT_BUS,
{ allowUnregistered: true }
)
if (!eventBusService || !eventGroupId) {
return
}
) => {
const eventBus = container.resolve(ModuleRegistrationName.EVENT_BUS)
// await eventBus.release
await eventBusService.releaseGroupedEvents(eventGroupId)
},
async (data: void) => {}
)