Skip to main content

writeService

Callable

  • writeService(directory: string): (service: Service, options?: { override?: boolean; path?: string; versionExistingContent?: boolean }) => Promise<void>

  • Write a Service to EventCatalog.

    You can optionally overide the path of the Service.

    @example
    import utils from '@eventcatalog/utils';

    const { writeService } = utils('/path/to/eventcatalog');

    // Write a Service
    // Service would be written to services/InventoryService
    await writeService({
    id: 'InventoryService',
    name: 'Inventory Service',
    version: '0.0.1',
    summary: 'Service that handles the inventory',
    markdown: '# Hello world',
    });

    // Write a service to the catalog but override the path
    // Service would be written to services/Inventory/InventoryService
    await writeService({
    id: 'InventoryService',
    name: 'Inventory Adjusted',
    version: '0.0.1',
    summary: 'This is a summary',
    markdown: '# Hello world',
    }, { path: "/Inventory/InventoryService"});

    // Write a service to the catalog and override the existing content (if there is any)
    await writeService({
    id: 'InventoryService',
    name: 'Inventory Adjusted',
    version: '0.0.1',
    summary: 'This is a summary',
    markdown: '# Hello world',
    }, { override: true });

    // Write a service to the catalog and version the previous version
    // only works if the new version is greater than the previous version
    await writeService({
    id: 'InventoryService',
    name: 'Inventory Adjusted',
    version: '0.0.1',
    summary: 'This is a summary',
    markdown: '# Hello world',
    }, { versionExistingContent: true });