MCPcopy Create free account
hub / github.com/decaporg/decap-cms / startServer

Function startServer

cypress/plugins/proxy.js:23–58  ·  view source on GitHub ↗
(repoDir, mode)

Source from the content-addressed store, hash-verified

21};
22
23const startServer = async (repoDir, mode) => {
24 const tsNode = path.join(__dirname, '..', '..', 'node_modules', '.bin', 'ts-node');
25 const serverDir = path.join(__dirname, '..', '..', 'packages', 'decap-server');
26 const distIndex = path.join(serverDir, 'dist', 'index.js');
27 const tsIndex = path.join(serverDir, 'src', 'index.ts');
28
29 const port = 8082;
30 const env = {
31 ...process.env,
32 GIT_REPO_DIRECTORY: path.resolve(repoDir),
33 PORT: port,
34 MODE: mode,
35 };
36
37 console.log(`Starting proxy server on port '${port}' with mode ${mode}`);
38 if (await fs.pathExists(distIndex)) {
39 serverProcess = spawn('node', [distIndex], { env, cwd: serverDir });
40 } else {
41 serverProcess = spawn(tsNode, ['--files', tsIndex], { env, cwd: serverDir });
42 }
43
44 return new Promise((resolve, reject) => {
45 serverProcess.stdout.on('data', data => {
46 const message = data.toString().trim();
47 console.log(`server:stdout: ${message}`);
48 if (message.includes('Decap CMS Proxy Server listening on port')) {
49 resolve(serverProcess);
50 }
51 });
52
53 serverProcess.stderr.on('data', data => {
54 console.error(`server:stderr: ${data.toString().trim()}`);
55 reject(data.toString());
56 });
57 });
58};
59
60let serverProcess;
61

Callers 1

setupProxyTestFunction · 0.85

Calls 1

toStringMethod · 0.45

Tested by

no test coverage detected