language: node_js
node_js:
- - "4.2"
- - "5.1"
+ - "10"
-env:
- - CXX=g++-4.8
+git:
+ depth: 1
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- - g++-4.8
+ - g++-4.9
+ postgresql: "9.6"
+
+cache:
+ directories:
+ - $HOME/.cache/yarn
+ - $HOME/fixtures
sudo: false
services:
- - mongodb
+ - postgresql
+ - redis-server
-cache:
- directories:
- - node_modules
- - $(npm config get prefix)/bin/grunt-cli
- - $(npm config get prefix)/bin/electron-prebuilt
+install:
+ - CC=gcc-4.9 CXX=g++-4.9 yarn install
before_script:
- - npm update
- - npm install electron-prebuilt -g
- - npm install grunt-cli -g
+ - wget --no-check-certificate "https://download.cpy.re/ffmpeg/ffmpeg-release-4.0.3-64bit-static.tar.xz"
+ - tar xf ffmpeg-release-4.0.3-64bit-static.tar.xz
+ - mkdir -p $HOME/bin
+ - cp ffmpeg-*/{ffmpeg,ffprobe} $HOME/bin
+ - export PATH=$HOME/bin:$PATH
+ - psql -c "create user peertube with password 'peertube';" -U postgres
+
+matrix:
+ include:
+ - env: TEST_SUITE=misc
+ - env: TEST_SUITE=api-1
+ - env: TEST_SUITE=api-2
+ - env: TEST_SUITE=api-3
+ - env: TEST_SUITE=api-4
+ - env: TEST_SUITE=cli
+ - env: TEST_SUITE=lint
+
+script:
+ - NODE_PENDING_JOB_WAIT=2000 travis_retry npm run ci -- "$TEST_SUITE"
after_failure:
- - cat test1/logs/all-logs.log
- - cat test2/logs/all-logs.log
- - cat test3/logs/all-logs.log
- - cat test4/logs/all-logs.log
- - cat test5/logs/all-logs.log
- - cat test6/logs/all-logs.log
+ - cat test1/logs/peertube.log
+ - cat test2/logs/peertube.log
+ - cat test3/logs/peertube.log
+ - cat test4/logs/peertube.log
+ - cat test5/logs/peertube.log
+ - cat test6/logs/peertube.log