UNPKG

a2r

Version:
39 lines (38 loc) 1.89 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const path_1 = __importDefault(require("path")); const fs_1 = require("@a2r/fs"); const devSettings_1 = require("../devSettings"); const docker_1 = require("../docker"); const onError_1 = __importDefault(require("./onError")); const watchFolder_1 = __importDefault(require("./watchFolder")); const settings_1 = require("../../settings"); const getFileToTouch_1 = __importDefault(require("./getFileToTouch")); const watchFolders = async (folders, mainServerPath) => { const devSettings = await (0, devSettings_1.getSettings)(); const { server: { dockerName }, } = devSettings; const serverDockerServerPath = path_1.default.resolve(settings_1.defaultDockerWorkDir, settings_1.serverPath); await Promise.all(folders.map(async (folder) => { const sourcePath = path_1.default.resolve(mainServerPath, folder); const dockerPath = path_1.default.resolve(serverDockerServerPath, folder); if (await (0, fs_1.exists)(sourcePath)) { const onReady = async (watcher) => { watcher.on('all', async () => { await (0, docker_1.removeFolderFromDocker)(dockerPath, dockerName); await (0, docker_1.copyPathToDocker)(sourcePath, dockerPath, dockerName); await (0, docker_1.touch)((0, getFileToTouch_1.default)('server'), devSettings.server.dockerName); }); }; const watcherOptions = { onError: onError_1.default, onReady, targetPath: sourcePath, }; await (0, watchFolder_1.default)(watcherOptions); } })); }; exports.default = watchFolders;