UNPKG

@libotony/sharp-cli

Version:
57 lines 4.85 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); const child_process_1 = require("child_process"); const path = require("path"); const debug = require('debug')('sharp:runner:task'); const solo_runner_1 = require("./solo-runner"); const getSolo = () => { const getPlatform = () => { switch (process.platform) { case 'darwin': case 'linux': return process.platform; case 'win32': return 'windows'; default: throw new Error(`unsupported platform ${process.platform}!`); } }; const getArch = () => { switch (process.arch) { case 'x64': return 'amd64'; default: throw new Error(`unsupported arch ${process.arch}!`); } }; const suffix = process.platform === 'win32' ? '.exe' : ''; const fName = `thor-${getPlatform()}-${getArch()}${suffix}`; return fName; }; exports.startTest = (taskName, soloPort) => __awaiter(this, void 0, void 0, function* () { const fName = getSolo(); const solo = new solo_runner_1.SoloRunner(path.join(__dirname, '../thor-bin/', fName), soloPort); yield solo.start(); debug('running task:', taskName); const child = child_process_1.spawn(/^win/.test(process.platform) ? 'npm.cmd' : 'npm', ['run', taskName], { cwd: process.cwd(), stdio: 'inherit', env: Object.assign({}, process.env, { THOR_REST: 'http://127.0.0.1:' + soloPort }) }); return yield new Promise((resolve) => { child.on('exit', (code, signal) => { debug(`child exited with code: ${code}, signal: ${signal}`); solo.close(); resolve(code === null ? 0 : code); }); }); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1ydW5uZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdGVzdC1ydW5uZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLGlEQUFxQztBQUNyQyw2QkFBNEI7QUFDNUIsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUE7QUFDbkQsK0NBQTBDO0FBRTFDLE1BQU0sT0FBTyxHQUFHLEdBQUcsRUFBRTtJQUNqQixNQUFNLFdBQVcsR0FBRyxHQUFHLEVBQUU7UUFDckIsUUFBUSxPQUFPLENBQUMsUUFBUSxFQUFFO1lBQ3RCLEtBQUssUUFBUSxDQUFDO1lBQ2QsS0FBSyxPQUFPO2dCQUNSLE9BQU8sT0FBTyxDQUFDLFFBQVEsQ0FBQTtZQUMzQixLQUFLLE9BQU87Z0JBQ1IsT0FBTyxTQUFTLENBQUE7WUFDcEI7Z0JBQ0ksTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsT0FBTyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUE7U0FDbkU7SUFDTCxDQUFDLENBQUE7SUFFRCxNQUFNLE9BQU8sR0FBRyxHQUFHLEVBQUU7UUFDakIsUUFBUSxPQUFPLENBQUMsSUFBSSxFQUFFO1lBQ2xCLEtBQUssS0FBSztnQkFDTixPQUFPLE9BQU8sQ0FBQTtZQUNsQjtnQkFDSSxNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixPQUFPLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQTtTQUMzRDtJQUNMLENBQUMsQ0FBQTtJQUVELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxRQUFRLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtJQUN6RCxNQUFNLEtBQUssR0FBRyxRQUFRLFdBQVcsRUFBRSxJQUFJLE9BQU8sRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUFBO0lBRTNELE9BQU8sS0FBSyxDQUFBO0FBQ2hCLENBQUMsQ0FBQTtBQUVZLFFBQUEsU0FBUyxHQUFHLENBQU8sUUFBZ0IsRUFBRSxRQUFnQixFQUFFLEVBQUU7SUFDbEUsTUFBTSxLQUFLLEdBQUcsT0FBTyxFQUFFLENBQUE7SUFDdkIsTUFBTSxJQUFJLEdBQUcsSUFBSSx3QkFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGNBQWMsRUFBRSxLQUFLLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQTtJQUVsRixNQUFNLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUVsQixLQUFLLENBQUMsZUFBZSxFQUFFLFFBQVEsQ0FBQyxDQUFBO0lBQ2hDLE1BQU0sS0FBSyxHQUFHLHFCQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxFQUFFO1FBQ3RGLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBRyxFQUFFO1FBQ2xCLEtBQUssRUFBRSxTQUFTO1FBQ2hCLEdBQUcsb0JBQ0ksT0FBTyxDQUFDLEdBQUcsSUFDZCxTQUFTLEVBQUUsbUJBQW1CLEdBQUcsUUFBUSxHQUM1QztLQUNKLENBQUMsQ0FBQTtJQUVGLE9BQU8sTUFBTSxJQUFJLE9BQU8sQ0FBUyxDQUFDLE9BQU8sRUFBRSxFQUFFO1FBQ3pDLEtBQUssQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQzlCLEtBQUssQ0FBQywyQkFBMkIsSUFBSSxhQUFhLE1BQU0sRUFBRSxDQUFDLENBQUE7WUFDM0QsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFBO1lBQ1osT0FBTyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFFLENBQUE7UUFDdEMsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDLENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQSxDQUFBIn0=