-
Notifications
You must be signed in to change notification settings - Fork 3.2k
/
cypress.js
36 lines (28 loc) · 904 Bytes
/
cypress.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
const path = require('path')
const execa = require('execa')
const inspector = require('inspector')
const debug = require('debug')('cypress:scripts')
const args = process.argv.slice(2)
const pathToCli = path.resolve(__dirname, '..', 'cli', 'bin', 'cypress')
if (inspector.url()) {
process.CYPRESS_INTERNAL_DEV_DEBUG = `--inspect=${process.debugPort + 1}`
}
// always run the CLI in dev mode
// so it utilizes the development binary
// instead of the globally installed prebuilt one
args.push('--dev')
debug('starting the CLI in dev mode with args %o', {
command: pathToCli,
args,
})
const exit = ({ exitCode }) => {
if (typeof exitCode !== 'number') {
// eslint-disable-next-line no-console
console.error(`missing exit code from execa (received ${exitCode})`)
process.exit(1)
}
process.exit(exitCode)
}
execa(pathToCli, args, { stdio: 'inherit' })
.then(exit)
.catch(exit)