Commit Graph

63 Commits

Author SHA1 Message Date
Zach Bloomquist d20e225d1e Use node 12.8.1 in CI and .node-version 2020-01-07 11:28:05 -05:00
Gleb Bahmutov 8e309e9bca allow same version when building npm package on Circle (#5601)
* allow same version when building npm package on Circle

* check next dev version from node script

* print current package version for complete info
2019-11-06 12:51:58 -05:00
Devon 1ce9575315 Updated Cloudflare cache purge to use API Tokens (#5250)
* Updated cypress/scripts/binary/util/upload.coffee to use curl and API Tokens as the cfcli command currently *ONLY* supports API Keys.

* Update purge cache to use request-promise

* Cleanup & remove sync method

* Remove unused cloudflare-cli dep

* update appveyor encrypted secrets for cloudflare

* add missing deps


Co-authored-by: Zach Bloomquist <github@chary.us>
Co-authored-by: Brian Mann <brian.mann86@gmail.com>
2019-10-11 21:30:32 -04:00
Zach Bloomquist de5b393ab5 Switch node version to 12.0.0, not 12.4.0 (#5226) 2019-10-02 16:13:35 -04:00
Gleb Bahmutov c936f72c1b update encrypted env variables on AppVeyor 2019-09-27 09:16:21 -04:00
Chris Breiding 6ba8d7cc93 Electron v5.0.10 (#4720)
* fix specs

* use debugger protocol for cookie handling in electron

* use latest gulp

* use rimraf instead of gulp-clean

* use electron 3.1.8 and node 10.2.1

* use gulp 4 in packages/static

* fix sendCommandAsync, log Schema.getDomains on CDP connect

* autofill e2e test name [skip ci]

* electron@5.0.7, see what new failures exist

* --no-sandbox for launching Electron

* update cookies logic for electron

* node 12

* update snapshot for new node

* update error message for new node

* stub sendCommandAsync

* only connect to socket if path has been replaced, fixes #4776

* update node-sass to support node 12

* skip wacky socket tests for now

* snapshot

* fix run_plugins_spec snapshot, don't include stack trace

* use --no-sandbox on linux to run as root

* allow sendCommandAsync to resolve

* use euid for root check

* log domains even if undefined

* don't worry about ending 1xx responses immediately anymore

* use --max-http-header-size, change max size from 8kb to 1mb, fix #76

* do not send 502 on failed websocket, just send back ECONNRESET

* update websocket spec port to not collide with other test

* update outdated expect

* Revert "only connect to socket if path has been replaced, fixes #4776"

This reverts commit f179eda5ca.

* update gulp in root

* update https-proxy unit tests

* update network spec to properly close server

* update reporter spec

* update https-proxy-agent to fix node 10.10.0 change

discussion: https://github.com/nodejs/node/issues/24474\#issuecomment-511963799

* only pass --max-http-header-size on node >=12

* use own server-destroy implementation that supports secureConnect events

* oops

* update socket_spec

* electron 6.0.0

* console.table introduced in node 10

* change browserify entry to init.js

* handle edge case when no response body

* console.table added in node 10

* do not exit app when all BrowserWindows are closed

* update e2e snapshots

* value may not be null

* update plugins spec

* correct cookie expiry, use browser.getversion for CDP version check

* fix snapshotting for require stacks

* reorder cookies in spec

* warn when depreated electron callback apis are used

* only report 1 plugin error per process

* cleanup

* node 12.4.0, cypress/browsers:node12.4.0-chrome76 docker image

* update shell.openExternal to promisified

* update dialog.showOpenDialog to promisified

* update webContents.session.setProxy to promisified

* updating native dependencies since we don't need ancient node ABI support anymore

* WIP: switch cookies to simpler, jar-less approach

* WIP: switch cookies to simpler, jar-less approach

* making tests pass

* improve cookie filtering logic

* Remove unneeded Promise.try

* filter what makes it to the extension

* properly re-set superdomain cookies on cross-origin cy.visit

* allow comma-separated list of e2e tests

* sort cookies in order of expiration date, ascending

* updating tests, cleanup

* update tests

* version electron as a devDependency, electron@6.0.1

* cleanup, remove old automation

* cleanup, remove old automation

* bump chokidar to fix win10 + node12 issue

was seeing this on windows:
https://github.com/nuxt/nuxt.js/issues/6035

fixed with version bump

* enable now-supported quit role, re-enable old tests

* don't need that arg there

* remove last deprecated callback electron invocations

* Delete cypress.json

* responding to PR feedback

* cleanup

* invoke

* use 'quit' role

* Use new appMenu role for Cypress menu on mac

* electron@6.0.2

* electron@6.0.3

* remove domain: cookie.domain and see what happens

* remove setErrorHandler

* Revert "remove domain: cookie.domain and see what happens"

This reverts commit 49e916896d.

* add unit tests for cookies

* ci

* fix project-content css

* electron@6.0.4

* fix specs_list test

* electron@6.0.7

* some cleanup

* electron@6.0.9

* Update 8_reporters_spec.coffee.js

* electron@5.0.10 - Chromium 73, Node 12

* cli: fix the STDIN pipe on Windows (#5045)

* cli: pipe stdin

* uggh, here is the actual change

* update cli unit tests

* add unit test

* more permissive check for json to include application/vnd.api+j… (#5166)

* more permissive check for json to include

* add json test for content-type application/vnd.api+json

* cruder solution passes e2e tests locally, so let's go with that

* Remove 'charset' from content-type before checking if JSON

* fix eslint for fixture specs (#5176)

* update eslint to lint files within 'fixtures' in support files

- ignore some edge cases like jquery, jsx and obvious js files we wrote
with broken code

* Fixes from eslint to 'fixtures' files

* Catch env variable with reserved name CYPRESS_ENV 1621 (#1626)

* server: check CYPRESS_ENV variable when merging configs

* catch invalid CYPRESS_ENV value in CLI, close #1621

* linting

* sanitize platform in test snapshot

* linting

* update error message text

* add missing comma

* fix finally merge in JS code

* pass CLI linter

* fix log reference, should be debug

* use correct sinon reference

* update message, show first part in red

* update error message text

* Addresses #2953 (#5174)

* Addresses #2953

* Added proper test for new error message

* Didn't realize it ran this test as well, whoops

* Implementing changes as suggested by @jennifer-shehane

* Fixing tests and error output. Moved the checks to the start of the get command to ensure we always catch improper options

* Removing issue test since the querying spec covers it

* Using coffescript isArray check

* depromisify things that were promisified b/t electron 5 <=> 6

Revert "update shell.openExternal to promisified"

This reverts commit 8b6460d015.

Revert "update dialog.showOpenDialog to promisified"

This reverts commit 5f178b075b.

Revert "update webContents.session.setProxy to promisified"

This reverts commit 727df3a4e5.

* node12.4.0-chrome76 => node12.0.0-chrome75

* fix tests for electron downgrade

* node12.0.0-chrome75 => node12.0.0-chrome73


Co-authored-by: Zach Bloomquist <github@chary.us>
Co-authored-by: Brian Mann <brian.mann86@gmail.com>
2019-09-24 14:35:24 -04:00
Ben Kucera ec25c7dff8 chore(windows): make install portable to windows (#4779)
* chore(install)
- make preinstall hook windows portable
- make link-packages script use junction symlinks for windows

* use npx

* run preinstll in appveyor

* remove win32 check, pin dep (and update .npmrc)
2019-07-22 12:30:52 -04:00
Gleb Bahmutov b55eb8ee7b retry the very first npm install on AppVeyor 2019-07-17 10:40:58 -04:00
Gleb Bahmutov 7989030c59 NPM install up to 3 times on AppVeyor (#4739) 2019-07-16 17:38:46 -04:00
Ben Kucera fbd523615e [internal] Lint typescript, json, new eslint rules (#4449)
* temp 07/01/19 [skip ci] main lint files

* use lint-staged scripts

* fix all auto-fixable eslint errors

* manually fix lint issues in files

* temp 07/01/19 [skip ci]

* bump eslint plugin versions, update circle.yml

* [lint fix] remaining js files

* update vscode/settings.json

* add back stop-only

* use stop-only for linting .onlys

* fix verify_spec, build_spec

* update json plugin

* relint & apply corrections

* fix appveyor.yml not cleansing env vars (very bad)

* dont echo commit message in appveyor script

* retry build &

* re-add & upgrade lint-staged

* update contributing docs

* only let stop-only catch staged changes
2019-07-12 13:59:44 -04:00
Gleb Bahmutov 71e3bcafb5 appveyor: add Cypress bot encrypted variables 2019-05-29 10:04:36 +02:00
Gleb Bahmutov fdb3895a79 print if we have GH env variables set on AppVeyor 2019-05-22 11:28:11 -04:00
Chris Breiding b8f0257958 Upgrade to electron 2.0.18 and node 8.9.3 (#4001)
* upgrade to electron 2.0.18 and node 8.9.3

* use cypress/browsers:node8.9.3-chrome73 docker image

* fix type_spec for chrome

* Revert "fix type_spec for chrome"

This reverts commit 7914f68142.

* fix driver specs for chrome

* update engines to 8.9.3


Co-authored-by: Ben Kucera <14625260+Bkucera@users.noreply.github.com>
Co-authored-by: Brian Mann <brian.mann86@gmail.com>
2019-04-25 19:55:15 -04:00
Gleb Bahmutov f0ed227854 upgrade npm on AppVeyor 2019-04-11 17:44:51 -04:00
Gleb Bahmutov da17a7ca09 remove extra build branches 2019-04-09 12:08:10 -04:00
Zach Bloomquist db752f5f93 Only package Windows builds of ffmpeg with Windows, build for win32 and win64 (#3877)
* appveyor build for this branch

* don't force install ffmpeg on windows

don't force install ffmpeg on windows

* derp

* fix

* build in appveyor

* oops

* delete using del

* use RMDIR instead of DEL

* only build 32-bit

* build for x64 and x86 windows

* separate win32 and win64

* require lodash

* make electron arch configurable

* cross-compile 32, only run in 64-bit

* force install ffmpeg if necessary

* it's all win10 x64, but we can force it to build for ia32 in x32 mode

* add windows util

* who's idea was it to make whitespace meaningful?

* pass arch to npm install, pass arch to uploader

* add TARGET_PLATFORM

* fun fact: appveyor titlecases env var names

fun fact: appveyor titlecases env var names

* fix: pass args

* use process

* cli: use arch package to send arch to server

* pass TARGET_ARCH to all npm installs

* run-all

* always call getUploadNameByOs

* use the precise version of node, enable both x64 and ia32 arch

* quotes

* uh wat

* move console logs to script because windows

* add yet another env var to install the right node arch

* use x86, not x32

* give ia32 a try, why not

* use platform env again

* and also try x86 again

* remove notion of target_arch since we're using the right node version with arch set correctly

* more comprehensive checks to ensure the arch is correct

* simplify building the binary, do not accept arch as options

* build the binary and test it on this branch

* remove arch, ensure that process.env.Platform is set to x86

* do build the binary unless this is a forked PR

* attempt to verify that this is a 32bit or 64bit windows binary

* remove unused dep

* consolidate commands

* don't install packages in windows - just build the binary

- this avoids needing to reinstall all node_modules and build-js twice

* build the binary on more branches

* cd up appveyor

* ugh

* right logic for whether or not this is a forked PR

* remove unused deps

* fix undefined var

* platformArch

* set in options

* turns out we do have to npm install before building the binary

* options.platformArch

* comment out appveyor build 32bit/64bit verification temporarily


Co-authored-by: Brian Mann <brian.mann86@gmail.com>
2019-04-08 11:48:14 -04:00
Brian Mann 13dcf4d7bf dont echo appveyor commit message... [skip ci] 2019-03-15 07:25:50 -04:00
Gleb Bahmutov 6cdaa5b4ef No dev deps in windows binary 2896 (#2904)
* build: print prod and dev dependencies in packages/server

* use npm v6 on Windows

* use only=production npm install flag

* use latest version of Node on AppVeyor

* add env with NODE_ENV=production

* pretty ms for npm install

* fix retry

* remove devDependencies from each file

* test binary build logic on Circle

* do not even run unit tests on circle

* form package json path

* cannot mapSeries twice

* pass package folder name

* fixed missing json to save

* uncomment circle tests

* update some comments, remove branches
2018-12-17 00:10:54 -05:00
Gleb Bahmutov 586d677b3d ci: use Node 8.2.1 to build binary on Windows CI #1390 (#1391)
* ci: use Node 8.2.1 to build binary on Windows CI #1390

* use Node 8.2.1 on Mac buildkite

* add comment

* source bashrc

* print home folder

* do not source bashrc

* install nvm using curl

* back to nvm using bash_profile

* hmm, maybe it is using different shell

* hmm, login into bash

* remove nvm commands

* chore: add script to check Node version against .node-version
2018-02-28 15:37:43 -05:00
Gleb Bahmutov e7d82b63a5 update ci.json variable for appveyor 2017-11-16 15:55:03 -05:00
Gleb Bahmutov cbf1da0802 Separate bump next version command (#922)
* set set-next-ci-version script command

* use current package.json version when asking for next one

* showing actual error response from buildkite

* rename .aws-credentials.json to just aws-credentials.json file

* rename aws_credentials_json on appveyor
2017-11-16 14:12:30 -05:00
Gleb Bahmutov 158c5d2945 Env file name (#853)
* scripts: only use filename to get environment variables

* rename to STAGING_RECORD_KEY
2017-10-30 13:56:20 -04:00
Gleb Bahmutov 1987249933 use encrypted variables in appveyor.yml 2017-10-30 13:20:41 -04:00
Gleb Bahmutov ad50516578 try npm install second time if windows install fails first time 2017-10-28 10:23:29 -04:00
Gleb Bahmutov 0142ac7ff0 force cache clean 2017-10-26 15:12:22 -04:00
Gleb Bahmutov 7360f5e534 clean npm cache before installing 2017-10-26 13:49:41 -04:00
Gleb Bahmutov d1a78e77d5 start moving appveyor build steps into shelljs file (#785)
* start moving appveyor build steps into shelljs file

* moved appveyor commands into shell script

* build on this branch
2017-10-20 18:14:59 +00:00
Gleb Bahmutov f7cab9cf7e print env 2017-10-20 13:01:19 -04:00
Gleb Bahmutov dcec9eb0b8 indent 2017-10-20 12:55:22 -04:00
Gleb Bahmutov 20e17937b7 only build binary in main repo in develop branch for #784 2017-10-20 12:53:00 -04:00
Gleb Bahmutov 181f85fea9 only build windows binary on develop branch, close #784 2017-10-20 11:07:00 -04:00
Gleb Bahmutov 93714a410f Print arch (#769)
* print platform and architecture before building on Circle

* print platform on AppVeyor
2017-10-18 18:18:40 +00:00
Gleb Bahmutov b103aa9a1a print commit message 2017-10-05 17:43:26 -04:00
Gleb Bahmutov 15aab6ea6c fix binary url file path in appVeyor.yml 2017-10-05 17:01:34 -04:00
Gleb Bahmutov 1ddbb24db0 copy deploy instructions from issue to DEPLOY.md close #465 2017-10-05 15:12:34 -04:00
Gleb Bahmutov 5aace6d9dc filter projects to trigger by provider name 2017-10-05 10:59:33 -04:00
Gleb Bahmutov 4d2bf62a2f print platform and arch 2017-10-04 14:42:16 -04:00
bahmutov 38637a703b single line command 2017-10-03 17:17:21 +00:00
bahmutov 924ebca0df use cmd to build on windows ci 2017-10-03 16:54:26 +00:00
Gleb Bahmutov 26bbd2d154 npm pack 2017-10-03 09:12:21 -07:00
Gleb Bahmutov e6d3871390 do not run npm size on windows ci 2017-10-03 12:00:23 -04:00
Gleb Bahmutov 3b549aaa63 pass variables on Windows CI 2017-10-03 08:48:14 -07:00
Gleb Bahmutov 71dc0ed614 build windows NPM package
Just so we can test it, we don't have to publish it - there will be linux NPM package
2017-10-03 08:34:56 -07:00
Gleb Bahmutov 3d5716d672 disable mocha snapshot sanity check 2017-10-03 08:18:51 -07:00
Gleb Bahmutov f2f4bf879e build and upload windows binary to beta 2017-10-03 07:56:43 -07:00
Gleb Bahmutov cbc6c48fd3 run mocha sanity checks on Windows 2017-09-29 10:45:09 -04:00
Gleb Bahmutov 3131d37eee windows: do not prune modules on CI 2017-09-29 07:30:42 -07:00
Gleb Bahmutov 765528a4e6 windows: disable node_modules cache
classic Windows NPM craziness https://github.com/npm/npm/issues/17747
2017-09-29 07:20:09 -07:00
Gleb Bahmutov 1074432af2 windows: run postinstall steps on windows CI 2017-09-29 06:58:05 -07:00
Gleb Bahmutov 2918a64996 windows: CI installs packages one by one 2017-09-29 06:47:23 -07:00