mirror of
https://github.com/cypress-io/cypress.git
synced 2026-01-03 04:59:48 -06:00
67 lines
1.8 KiB
JavaScript
67 lines
1.8 KiB
JavaScript
const Promise = require('bluebird')
|
|
const debug = require('debug')('cypress:cli')
|
|
const path = require('path')
|
|
|
|
const util = require('../util')
|
|
const state = require('../tasks/state')
|
|
const { throwFormErrorText, errors } = require('../errors')
|
|
|
|
const getVersions = () => {
|
|
return Promise.try(() => {
|
|
if (util.getEnv('CYPRESS_RUN_BINARY')) {
|
|
let envBinaryPath = path.resolve(util.getEnv('CYPRESS_RUN_BINARY'))
|
|
|
|
return state.parseRealPlatformBinaryFolderAsync(envBinaryPath)
|
|
.then((envBinaryDir) => {
|
|
if (!envBinaryDir) {
|
|
return throwFormErrorText(errors.CYPRESS_RUN_BINARY.notValid(envBinaryPath))()
|
|
}
|
|
|
|
debug('CYPRESS_RUN_BINARY has binaryDir:', envBinaryDir)
|
|
|
|
return envBinaryDir
|
|
})
|
|
.catch({ code: 'ENOENT' }, (err) => {
|
|
return throwFormErrorText(errors.CYPRESS_RUN_BINARY.notValid(envBinaryPath))(err.message)
|
|
})
|
|
}
|
|
|
|
return state.getBinaryDir()
|
|
})
|
|
.then(state.getBinaryPkgAsync)
|
|
.then((pkg) => {
|
|
const versions = {
|
|
binary: state.getBinaryPkgVersion(pkg),
|
|
electronVersion: state.getBinaryElectronVersion(pkg),
|
|
electronNodeVersion: state.getBinaryElectronNodeVersion(pkg),
|
|
}
|
|
|
|
debug('binary versions %o', versions)
|
|
|
|
return versions
|
|
})
|
|
.then((binaryVersions) => {
|
|
const buildInfo = util.pkgBuildInfo()
|
|
|
|
let packageVersion = util.pkgVersion()
|
|
|
|
if (!buildInfo) packageVersion += ' (development)'
|
|
else if (!buildInfo.stable) packageVersion += ' (pre-release)'
|
|
|
|
const versions = {
|
|
package: packageVersion,
|
|
binary: binaryVersions.binary || 'not installed',
|
|
electronVersion: binaryVersions.electronVersion || 'not found',
|
|
electronNodeVersion: binaryVersions.electronNodeVersion || 'not found',
|
|
}
|
|
|
|
debug('combined versions %o', versions)
|
|
|
|
return versions
|
|
})
|
|
}
|
|
|
|
module.exports = {
|
|
getVersions,
|
|
}
|