Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bundle Node.js separately, run with just Node.js in CI, make browsers dependencies #3900

Closed
flotwig opened this issue Apr 5, 2019 · 1 comment
Labels
pkg/server This is due to an issue in the packages/server directory process: build Related to our internal build process stage: ready for work The issue is reproducible and in scope

Comments

@flotwig
Copy link
Contributor

flotwig commented Apr 5, 2019

Current behavior

The server package currently runs inside Electron's node environment, which is pegged to Node 8.2.1 for Electron 1.8.2. In run mode, Electron is really just used as a convenient node.js runtime, since we don't make use of any of the native functionality it exposes.

Desired behavior

Make all the server code compatible with an off-the-shelf Node.js instance. Then, ship Node.js with Cypress, and just use Electron for cypress open.

This would mean that CI users don't need to have electron installed at all, which opens the door for us to potentially bundle it as its own NPM module that could be swapped out with another browser in CI.

This would also mean that xvfb isn't required, since that's an artifact of Electron expecting a frame buffer.

@flotwig flotwig added pkg/server This is due to an issue in the packages/server directory process: build Related to our internal build process labels Apr 5, 2019
@cypress-bot cypress-bot bot added the stage: ready for work The issue is reproducible and in scope label Apr 5, 2019
@jennifer-shehane
Copy link
Member

Closing as a piece of #3899

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pkg/server This is due to an issue in the packages/server directory process: build Related to our internal build process stage: ready for work The issue is reproducible and in scope
Projects
None yet
Development

No branches or pull requests

2 participants