Skip to content

Commit

Permalink
chore: update CI to run Travis + Linux + Chromium (#5583)
Browse files Browse the repository at this point in the history
Our CI build has been incredibly flaky across all three of our current CIs:

* Appveyor: Chromium + Windows
* Travis: Firefox + Linux, Chromium + Linux
* Cirrus: Chromium + Linux, Chromium + Mac

Legitimate issues and errors have been missed because it's expected that the CI is red and therefore it's not seen as an issue when a PR's build fails.

We should have a build that covers the full combo of browsers and operating systems but it's more important to have a consistent, reliable green build where failures are genuine. So this commit strips our CI back to Chromium on Linux on Travis, and nothing more. Once this is stable we will expand out into more operating systems and bring back Firefox, too.
  • Loading branch information
jackfranklin committed Apr 8, 2020
1 parent 21c2d31 commit 83d9d53
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 71 deletions.
15 changes: 0 additions & 15 deletions .appveyor.yml

This file was deleted.

32 changes: 0 additions & 32 deletions .cirrus.yml

This file was deleted.

31 changes: 7 additions & 24 deletions .travis.yml
@@ -1,4 +1,5 @@
language: node_js
os: linux
dist: trusty
addons:
apt:
Expand All @@ -10,31 +11,13 @@ notifications:
cache:
directories:
- node_modules
# allow headful tests
before_install:
- "sysctl kernel.unprivileged_userns_clone=1"
- "export DISPLAY=:99.0"
- "sh -e /etc/init.d/xvfb start"
- 'if [ "$FIREFOX" = "true" ]; then pyenv shell 3.6; pip3 install --user mozdownload; fi'
- 'if [ "$FIREFOX" = "true" ]; then rm -rf $FIREFOX_HOME; mozdownload -t daily -d $FIREFOX_HOME/latest.tar.bz --log-level DEBUG; fi'
- 'if [ "$FIREFOX" = "true" ]; then cd $FIREFOX_HOME; tar -xvf latest.tar.bz; cd -; ls $FIREFOX_HOME/firefox/firefox; fi'
script:
- 'if [ "$CHROMIUM" = "true" ]; then npm run lint; fi'
- 'if [ "$CHROMIUM" = "true" ]; then npm run coverage; fi'
- 'if [ "$FIREFOX" = "true" ]; then BINARY=$FIREFOX_HOME/firefox/firefox npm run funit; fi'
- 'if [ "$CHROMIUM" = "true" ]; then npm run test-doclint; fi'
- 'if [ "$CHROMIUM" = "true" ]; then npm run test-types; fi'
- 'if [ "$CHROMIUM" = "true" ]; then npm run bundle; fi'
- 'if [ "$CHROMIUM" = "true" ]; then npm run unit-bundle; fi'
jobs:
include:
- node_js: "12.16.1"
- node_js: "10.19.0"
dist: trusty
env:
- CHROMIUM=true
- node_js: "10.18.1"
env:
- CHROMIUM=true
- node_js: "10.18.1"
env:
- FIREFOX=true
- FIREFOX_HOME=$TRAVIS_HOME/firefox-latest
before_install:
- "export DISPLAY=:99.0"
- "sh -e /etc/init.d/xvfb start"
script: ./travis/chromium.sh
8 changes: 8 additions & 0 deletions travis/chromium.sh
@@ -0,0 +1,8 @@
#!/usr/bin/env sh

npm run lint &&
npm run coverage &&
npm run test-doclint &&
npm run test-types &&
npm run bundle &&
npm run unit-bundle

0 comments on commit 83d9d53

Please sign in to comment.