Browse Source

fix(asset-server-plugin): Do not run server logic in worker context

Michael Bromley 4 years ago
parent
commit
c3a67b6abe
1 changed files with 9 additions and 0 deletions
  1. 9 0
      packages/asset-server-plugin/src/plugin.ts

+ 9 - 0
packages/asset-server-plugin/src/plugin.ts

@@ -4,6 +4,7 @@ import {
     AssetStorageStrategy,
     Logger,
     PluginCommonModule,
+    ProcessContext,
     registerPluginStartupMessage,
     RuntimeVendureConfig,
     VendurePlugin,
@@ -159,8 +160,13 @@ export class AssetServerPlugin implements NestModule, OnApplicationBootstrap {
         return config;
     }
 
+    constructor(private processContext: ProcessContext) {}
+
     /** @internal */
     onApplicationBootstrap(): void | Promise<void> {
+        if (this.processContext.isWorker) {
+            return;
+        }
         if (AssetServerPlugin.options.presets) {
             for (const preset of AssetServerPlugin.options.presets) {
                 const existingIndex = this.presets.findIndex(p => p.name === preset.name);
@@ -177,6 +183,9 @@ export class AssetServerPlugin implements NestModule, OnApplicationBootstrap {
     }
 
     configure(consumer: MiddlewareConsumer) {
+        if (this.processContext.isWorker) {
+            return;
+        }
         Logger.info('Creating asset server middleware', loggerCtx);
         consumer.apply(this.createAssetServer()).forRoutes(AssetServerPlugin.options.route);
         registerPluginStartupMessage('Asset server', AssetServerPlugin.options.route);