Files
medusa-store/packages/event-bus-local
Carlos R. L. Rodrigues bd12a95083 chore: Initialize method for modules (#3649)
What:
- Export initialize methods for all modules to be used as a package.
- Export `runMigrations` and `revertMigration` on modules that DB migrations are available

```typescript
import {
  initialize as initializeInventory,
  InventoryServiceInitializeOptions,
  runMigrations as runMigrationsInventory,
} from "@medusajs/inventory";

import { initialize as eventBusInitialize } from "@medusajs/event-bus-redis";

import { initialize as cacheInitialize } from "@medusajs/cache-redis";

const eventBus = await eventBusInitialize({
  redisUrl: "localhost",
});

const cache = await cacheInitialize({
  redisUrl: "localhost",
});

const options: InventoryServiceInitializeOptions = {
  database: {
    type: "postgres",
    url: `postgres://postgres:@localhost/inventory`,
  },
};

await runMigrationsInventory({
  options,
});

const inventoryService = await initializeInventory(options, {
  eventBusService: eventBus,
});

const sku = "sku_123"
const item = await service.createInventoryItem({
  sku,
});

cache.set(sku, { item });

```
2023-03-31 12:09:04 +00:00
..
2023-03-29 13:42:11 +02:00
2023-03-29 13:42:11 +02:00

Medusa

@medusajs/event-bus-local

Documentation | Website

An open source composable commerce engine built for developers.

Medusa is released under the MIT license. Current CircleCI build status. PRs welcome! Product Hunt Discord Chat Follow @medusajs

Overview

Local Event Bus module for Medusa. When installed, the events system of Medusa is powered by the Node EventEmitter. This module installed by default in new (> v1.8.0) Medusa projects.

The Node EventEmitter is limited to a single process environment. We generally recommend using the @medusajs/event-bus-redis module in a production environment.

Getting started

Install the module:

yarn add @medusajs/event-bus-local

You don't need to add the module to your project configuration as it is the default one. Medusa will try to use it, if no other event buses are installed.

module.exports = {
  // ...
  modules: [ ... ],
  // ...
}

Configuration

The module comes with no configuration options.