From ce539b1573824da441c285e2730419f23f4f80ec Mon Sep 17 00:00:00 2001 From: pofider Date: Mon, 8 Apr 2024 21:29:34 +0200 Subject: [PATCH] fix docker workers cleanup --- packages/jsreport-docker-workers/lib/main.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/jsreport-docker-workers/lib/main.js b/packages/jsreport-docker-workers/lib/main.js index e9fa2f810..a2c4e61fe 100644 --- a/packages/jsreport-docker-workers/lib/main.js +++ b/packages/jsreport-docker-workers/lib/main.js @@ -4,6 +4,7 @@ const serializator = require('@jsreport/serializator') const _sendToWorker = require('./sendToWorker') const createDockerManager = require('./dockerManager') const express = require('express') +const fs = require('fs/promises') module.exports = (reporter, definition) => { if (!definition.options.container.sharedTempRewriteRootPathTo) { @@ -71,9 +72,12 @@ module.exports = (reporter, definition) => { } }) - for (let i = 0; i < definition.options.numberOfWorkers; i++) { - reporter.addPathToWatchForAutoCleanup(`${definition.options.container.sharedTempHostBindMountRootPath}/${definition.options.container.namePrefix}${i + 1}/autocleanup`) - } + reporter.initializeListeners.add('docker-workers', async () => { + for (let i = 0; i < definition.options.numberOfWorkers; i++) { + await fs.mkdir(`${definition.options.container.sharedTempHostBindMountRootPath}/${definition.options.container.namePrefix}${i + 1}/autocleanup`, { recursive: true }) + reporter.addPathToWatchForAutoCleanup(`${definition.options.container.sharedTempHostBindMountRootPath}/${definition.options.container.namePrefix}${i + 1}/autocleanup`) + } + }) const workerRequestMap = new Map()