creevey 0.10.0-beta.26 → 0.10.0-beta.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/server/index.js +6 -1
- package/dist/server/index.js.map +1 -1
- package/dist/server/selenium/selenoid.js +8 -4
- package/dist/server/selenium/selenoid.js.map +1 -1
- package/dist/server/utils.js +5 -2
- package/dist/server/utils.js.map +1 -1
- package/package.json +2 -1
- package/src/server/index.ts +6 -2
- package/src/server/selenium/selenoid.ts +7 -4
- package/src/server/utils.ts +3 -2
package/dist/server/index.js
CHANGED
@@ -20,6 +20,7 @@ const docker_js_1 = require("./docker.js");
|
|
20
20
|
const promises_1 = require("fs/promises");
|
21
21
|
const connection_js_1 = require("./connection.js");
|
22
22
|
const assert_1 = __importDefault(require("assert"));
|
23
|
+
const tree_kill_1 = __importDefault(require("tree-kill"));
|
23
24
|
async function startWebdriverServer(browser, config, options) {
|
24
25
|
if (config.webdriver === webdriver_js_1.SeleniumWebdriver) {
|
25
26
|
if (cluster_1.default.isPrimary) {
|
@@ -107,7 +108,11 @@ async function default_1(options) {
|
|
107
108
|
if (remoteUrl && localUrl != remoteUrl)
|
108
109
|
(0, logger_js_1.logger)().info(`On your network - ${remoteUrl}`);
|
109
110
|
(0, logger_js_1.logger)().info('Waiting Storybook...');
|
110
|
-
(0, shelljs_1.exec)(storybookCommand, { async: true });
|
111
|
+
const storybook = (0, shelljs_1.exec)(storybookCommand, { async: true });
|
112
|
+
(0, messages_js_1.subscribeOn)('shutdown', () => {
|
113
|
+
if (storybook.pid)
|
114
|
+
(0, tree_kill_1.default)(storybook.pid);
|
115
|
+
});
|
111
116
|
}
|
112
117
|
else {
|
113
118
|
(0, logger_js_1.logger)().info('Storybook should be started and be accessible at:');
|
package/dist/server/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":";;;;;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
|
@@ -9,7 +9,8 @@ const path_1 = __importDefault(require("path"));
|
|
9
9
|
const assert_1 = __importDefault(require("assert"));
|
10
10
|
const fs_1 = require("fs");
|
11
11
|
const promises_1 = require("fs/promises");
|
12
|
-
const shelljs_1 =
|
12
|
+
const shelljs_1 = require("shelljs");
|
13
|
+
const tree_kill_1 = __importDefault(require("tree-kill"));
|
13
14
|
const utils_js_1 = require("../utils.js");
|
14
15
|
const docker_js_1 = require("../docker.js");
|
15
16
|
const messages_js_1 = require("../messages.js");
|
@@ -68,12 +69,12 @@ async function startSelenoidStandalone(config, debug) {
|
|
68
69
|
// TODO Download browser webdrivers
|
69
70
|
try {
|
70
71
|
if (process.platform != 'win32')
|
71
|
-
shelljs_1.
|
72
|
+
(0, shelljs_1.chmod)('+x', binaryPath);
|
72
73
|
}
|
73
74
|
catch {
|
74
75
|
/* noop */
|
75
76
|
}
|
76
|
-
const selenoidProcess = shelljs_1.
|
77
|
+
const selenoidProcess = (0, shelljs_1.exec)(`${binaryPath} -conf ./browsers.json -disable-docker`, {
|
77
78
|
async: true,
|
78
79
|
cwd: selenoidConfigDir,
|
79
80
|
});
|
@@ -81,7 +82,10 @@ async function startSelenoidStandalone(config, debug) {
|
|
81
82
|
selenoidProcess.stdout?.pipe(process.stdout);
|
82
83
|
selenoidProcess.stderr?.pipe(process.stderr);
|
83
84
|
}
|
84
|
-
(0, messages_js_1.subscribeOn)('shutdown', () =>
|
85
|
+
(0, messages_js_1.subscribeOn)('shutdown', () => {
|
86
|
+
if (selenoidProcess.pid)
|
87
|
+
(0, tree_kill_1.default)(selenoidProcess.pid);
|
88
|
+
});
|
85
89
|
}
|
86
90
|
async function startSelenoidContainer(config, debug) {
|
87
91
|
const browsers = Object.values(config.browsers).filter((browser) => !browser.gridUrl);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"selenoid.js","sourceRoot":"","sources":["../../../src/server/selenium/selenoid.ts"],"names":[],"mappings":";;;;;
|
1
|
+
{"version":3,"file":"selenoid.js","sourceRoot":"","sources":["../../../src/server/selenium/selenoid.ts"],"names":[],"mappings":";;;;;AAkFA,0DA8BC;AAED,wDAqCC;AAvJD,gDAAwB;AACxB,oDAA4B;AAC5B,2BAA2C;AAC3C,0CAAyD;AACzD,qCAAsC;AACtC,0DAA6B;AAE7B,0CAA8D;AAC9D,4CAAoD;AACpD,gDAA6C;AAE7C,KAAK,UAAU,oBAAoB,CACjC,QAA+B,EAC/B,EAAE,SAAS,EAA0B;IAErC,MAAM,cAAc,GAQhB,EAAE,CAAC;IACP,MAAM,QAAQ,GAAG,MAAM,IAAA,0BAAe,GAAE,CAAC;IAEzC,IAAA,gBAAM,EAAC,QAAQ,EAAE,8BAA8B,CAAC,CAAC;IAEjD,MAAM,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAE1D,QAAQ,CAAC,OAAO,CACd,CAAC,EACC,WAAW,EACX,oBAAoB,EAAE,EAAE,cAAc,GAAG,QAAQ,EAAE,GAAG,EAAE,EACxD,WAAW,GAAG,YAAY,WAAW,IAAI,cAAc,EAAE,EACzD,gBAAgB,GAAG,EAAE,GACtB,EAAE,EAAE;QACH,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;YAAE,cAAc,CAAC,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAC1G,IAAI,CAAC,SAAS,IAAI,gBAAgB,CAAC,MAAM,IAAI,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAC;QACrG,cAAc,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG;YACrD,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAgB;YACjD,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;SAC3G,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,MAAM,IAAA,gBAAK,EAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,MAAM,IAAA,oBAAS,EAAC,cAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,eAAe,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;IAE/F,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,WAAmB;IACvD,MAAM,mBAAmB,GAA6C;QACpE,MAAM,EAAE,uBAAuB;QAC/B,KAAK,EAAE,sBAAsB;QAC7B,KAAK,EAAE,4BAA4B;KACpC,CAAC;IACF,kCAAkC;IAClC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,2CAA2C,EAAE;QAClF,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,UAAU;KACjB,CAAC,CAAC;IACH,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC;IACjC,MAAM,EAAE,oBAAoB,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,GAC3D,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAEjF,IAAI,IAAA,eAAU,EAAC,WAAW,CAAC,IAAI,IAAA,cAAS,EAAC,WAAW,CAAC,CAAC,IAAI,IAAI,UAAU;QAAE,OAAO;IAEjF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,+LAA+L,CAChM,CAAC;IACJ,CAAC;IAED,OAAO,IAAA,yBAAc,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AAClD,CAAC;AAEM,KAAK,UAAU,uBAAuB,CAAC,MAAc,EAAE,KAAc;IAC1E,MAAM,QAAQ,GAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAA2B,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACjH,MAAM,iBAAiB,GAAG,MAAM,oBAAoB,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;IACrF,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3G,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxB,MAAM,IAAA,mBAAQ,EAAC,cAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,UAAU,CAAC,CAAC;IAChE,CAAC;SAAM,CAAC;QACN,MAAM,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED,mCAAmC;IACnC,IAAI,CAAC;QACH,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO;YAAE,IAAA,eAAK,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,UAAU;IACZ,CAAC;IAED,MAAM,eAAe,GAAG,IAAA,cAAI,EAAC,GAAG,UAAU,wCAAwC,EAAE;QAClF,KAAK,EAAE,IAAI;QACX,GAAG,EAAE,iBAAiB;KACvB,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE,CAAC;QACV,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7C,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,IAAA,yBAAW,EAAC,UAAU,EAAE,GAAG,EAAE;QAC3B,IAAI,eAAe,CAAC,GAAG;YAAE,IAAA,mBAAI,EAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAAC,MAAc,EAAE,KAAc;IACzE,MAAM,QAAQ,GAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAA2B,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACjH,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,QAAQ,CAAC,OAAO,CACd,CAAC,EACC,WAAW,EACX,oBAAoB,EAAE,EAAE,cAAc,GAAG,QAAQ,EAAE,GAAG,EAAE,EACxD,KAAK,EAAE,YAAY,GAAG,CAAC,EACvB,WAAW,GAAG,YAAY,WAAW,IAAI,cAAc,EAAE,GAC1D,EAAE,EAAE;QACH,KAAK,IAAI,YAAY,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC3B,CAAC,CACF,CAAC;IAEF,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC;IACzC,MAAM,WAAW,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,mBAAmB,EAAE,CAAC;IACtF,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,MAAM,IAAA,sBAAU,EAAC,CAAC,aAAa,CAAC,EAAE,WAAW,CAAC,CAAC;QAC/C,MAAM,IAAA,sBAAU,EAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,iCAAiC;IACjC,MAAM,eAAe,GAAG;QACtB,YAAY,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;QAChC,UAAU,EAAE;YACV,YAAY,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE;YACpD,KAAK,EAAE;gBACL,2CAA2C;gBAC3C,GAAG,MAAM,oBAAoB,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,oBAAoB;aACjF;SACF;KACF,CAAC;IAEF,OAAO,IAAA,oBAAQ,EAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;AACpF,CAAC"}
|
package/dist/server/utils.js
CHANGED
@@ -24,6 +24,7 @@ const https_1 = __importDefault(require("https"));
|
|
24
24
|
const http_1 = __importDefault(require("http"));
|
25
25
|
const cluster_1 = __importDefault(require("cluster"));
|
26
26
|
const path_1 = require("path");
|
27
|
+
const tree_kill_1 = __importDefault(require("tree-kill"));
|
27
28
|
const url_1 = require("url");
|
28
29
|
const api_1 = require("tsx/esm/api");
|
29
30
|
const api_2 = require("tsx/cjs/api");
|
@@ -87,7 +88,8 @@ async function shutdownWorkers() {
|
|
87
88
|
.filter((worker) => worker.isConnected())
|
88
89
|
.map((worker) => new Promise((resolve) => {
|
89
90
|
const timeout = setTimeout(() => {
|
90
|
-
worker.
|
91
|
+
if (worker.process.pid)
|
92
|
+
(0, tree_kill_1.default)(worker.process.pid);
|
91
93
|
}, 10000);
|
92
94
|
worker.on('exit', () => {
|
93
95
|
clearTimeout(timeout);
|
@@ -100,7 +102,8 @@ async function shutdownWorkers() {
|
|
100
102
|
function gracefullyKill(worker) {
|
101
103
|
worker.isShuttingDown = true;
|
102
104
|
const timeout = setTimeout(() => {
|
103
|
-
worker.
|
105
|
+
if (worker.process.pid)
|
106
|
+
(0, tree_kill_1.default)(worker.process.pid);
|
104
107
|
}, 10000);
|
105
108
|
worker.on('exit', () => {
|
106
109
|
clearTimeout(timeout);
|
package/dist/server/utils.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/server/utils.ts"],"names":[],"mappings":";;;;;;
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/server/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "creevey",
|
3
3
|
"description": "Cross-browser screenshot testing tool for Storybook with fancy UI Runner",
|
4
|
-
"version": "0.10.0-beta.
|
4
|
+
"version": "0.10.0-beta.27",
|
5
5
|
"type": "commonjs",
|
6
6
|
"bin": "dist/cli.js",
|
7
7
|
"main": "./dist/index.js",
|
@@ -131,6 +131,7 @@
|
|
131
131
|
"semver": "^7.6.3",
|
132
132
|
"shelljs": "^0.8.5",
|
133
133
|
"tar-stream": "^3.1.7",
|
134
|
+
"tree-kill": "^1.2.2",
|
134
135
|
"tsx": "^4.19.2",
|
135
136
|
"uuid": "^11.0.5",
|
136
137
|
"ws": "^8.18.0",
|
package/src/server/index.ts
CHANGED
@@ -9,11 +9,12 @@ import { logger } from './logger.js';
|
|
9
9
|
import { SeleniumWebdriver } from './selenium/webdriver.js';
|
10
10
|
import { LOCALHOST_REGEXP } from './webdriver.js';
|
11
11
|
import { isInsideDocker, resolvePlaywrightBrowserType, shutdownWithError } from './utils.js';
|
12
|
-
import { sendWorkerMessage } from './messages.js';
|
12
|
+
import { sendWorkerMessage, subscribeOn } from './messages.js';
|
13
13
|
import { buildImage } from './docker.js';
|
14
14
|
import { mkdir, writeFile } from 'fs/promises';
|
15
15
|
import { getStorybookUrl, checkIsStorybookConnected } from './connection.js';
|
16
16
|
import assert from 'assert';
|
17
|
+
import kill from 'tree-kill';
|
17
18
|
|
18
19
|
async function startWebdriverServer(browser: string, config: Config, options: Options): Promise<string | undefined> {
|
19
20
|
if (config.webdriver === SeleniumWebdriver) {
|
@@ -123,7 +124,10 @@ export default async function (options: Options): Promise<void> {
|
|
123
124
|
if (remoteUrl && localUrl != remoteUrl) logger().info(`On your network - ${remoteUrl}`);
|
124
125
|
logger().info('Waiting Storybook...');
|
125
126
|
|
126
|
-
exec(storybookCommand, { async: true });
|
127
|
+
const storybook = exec(storybookCommand, { async: true });
|
128
|
+
subscribeOn('shutdown', () => {
|
129
|
+
if (storybook.pid) kill(storybook.pid);
|
130
|
+
});
|
127
131
|
} else {
|
128
132
|
logger().info('Storybook should be started and be accessible at:');
|
129
133
|
logger().info(`Local - ${localUrl}`);
|
@@ -2,7 +2,8 @@ import path from 'path';
|
|
2
2
|
import assert from 'assert';
|
3
3
|
import { lstatSync, existsSync } from 'fs';
|
4
4
|
import { mkdir, writeFile, copyFile } from 'fs/promises';
|
5
|
-
import
|
5
|
+
import { exec, chmod } from 'shelljs';
|
6
|
+
import kill from 'tree-kill';
|
6
7
|
import { Config, BrowserConfigObject } from '../../types.js';
|
7
8
|
import { downloadBinary, getCreeveyCache } from '../utils.js';
|
8
9
|
import { pullImages, runImage } from '../docker.js';
|
@@ -91,12 +92,12 @@ export async function startSelenoidStandalone(config: Config, debug: boolean): P
|
|
91
92
|
|
92
93
|
// TODO Download browser webdrivers
|
93
94
|
try {
|
94
|
-
if (process.platform != 'win32')
|
95
|
+
if (process.platform != 'win32') chmod('+x', binaryPath);
|
95
96
|
} catch {
|
96
97
|
/* noop */
|
97
98
|
}
|
98
99
|
|
99
|
-
const selenoidProcess =
|
100
|
+
const selenoidProcess = exec(`${binaryPath} -conf ./browsers.json -disable-docker`, {
|
100
101
|
async: true,
|
101
102
|
cwd: selenoidConfigDir,
|
102
103
|
});
|
@@ -106,7 +107,9 @@ export async function startSelenoidStandalone(config: Config, debug: boolean): P
|
|
106
107
|
selenoidProcess.stderr?.pipe(process.stderr);
|
107
108
|
}
|
108
109
|
|
109
|
-
subscribeOn('shutdown', () =>
|
110
|
+
subscribeOn('shutdown', () => {
|
111
|
+
if (selenoidProcess.pid) kill(selenoidProcess.pid);
|
112
|
+
});
|
110
113
|
}
|
111
114
|
|
112
115
|
export async function startSelenoidContainer(config: Config, debug: boolean): Promise<string> {
|
package/src/server/utils.ts
CHANGED
@@ -3,6 +3,7 @@ import https from 'https';
|
|
3
3
|
import http from 'http';
|
4
4
|
import cluster from 'cluster';
|
5
5
|
import { dirname } from 'path';
|
6
|
+
import kill from 'tree-kill';
|
6
7
|
import { fileURLToPath, pathToFileURL } from 'url';
|
7
8
|
import { register as esmRegister } from 'tsx/esm/api';
|
8
9
|
import { register as cjsRegister } from 'tsx/cjs/api';
|
@@ -97,7 +98,7 @@ export async function shutdownWorkers(): Promise<void> {
|
|
97
98
|
(worker) =>
|
98
99
|
new Promise<void>((resolve) => {
|
99
100
|
const timeout = setTimeout(() => {
|
100
|
-
worker.kill();
|
101
|
+
if (worker.process.pid) kill(worker.process.pid);
|
101
102
|
}, 10000);
|
102
103
|
worker.on('exit', () => {
|
103
104
|
clearTimeout(timeout);
|
@@ -113,7 +114,7 @@ export async function shutdownWorkers(): Promise<void> {
|
|
113
114
|
export function gracefullyKill(worker: Worker): void {
|
114
115
|
worker.isShuttingDown = true;
|
115
116
|
const timeout = setTimeout(() => {
|
116
|
-
worker.kill();
|
117
|
+
if (worker.process.pid) kill(worker.process.pid);
|
117
118
|
}, 10000);
|
118
119
|
worker.on('exit', () => {
|
119
120
|
clearTimeout(timeout);
|