Skip to content

janis-commerce/event-subscribers-builder

Repository files navigation

event-subscribers-builder

Build Status Coverage Status

A package for build event suscribers

Usage

npx @janiscommerce/event-subscribers-builder

Options:

--environment, -e  environment for resolving the listeners endpoints [Default: `local`]

Paths

This utility does not receives any path parameters in the command line, it will use the next paths:

  • input (where it will obtain the source ymls to build): /path/to/root/events/src
  • output (where the new yml will be built): /path/to/root/events/subscribers.yml
  • schemas (where the built api schemas will be obtained): /path/to/root/schemas/public.json

Important

  • Before running this utility, you must build the api schemas first.

Examples

This package will merge all the yamls from the directory /path/to/root/events/src into a single yaml file /path/to/root/events/subscribers.yml then will resolve all listeners namespaces and methods obtained from your built api schemas.

Event yaml example (before running the utility)

- service: some-service
  entity: some-entity
  event: some-event
  listeners:
    - namespace: some-namespace
      method: some-method

Built schemas example

{
	"servers": [
		{
			"url": "https://some-server.com/api",
			"description": "The Beta API server",
			"variables": {
				"environment": {
					"default": "beta"
				}
			}
		}
	],
	"paths": {
		"/some-path": {
			"get": {
				"x-janis-namespace": "some-namespace",
				"x-janis-method": "some-method"
			}
		}
	}
}

Running the utility with beta environment

npx @janiscommerce/event-subscribers-builder -e beta

Event yaml example (after running the utility)

- service: some-service
  entity: some-entity
  event: some-event
  listeners:
    - https://some-server.com/api/some-path

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published