Try matrix to speed up travis builds

This commit is contained in:
Chocobozzz 2017-10-31 17:23:57 +01:00
parent 7a8032bb6d
commit 18530063fe
No known key found for this signature in database
GPG Key ID: 583A612D890159BE
7 changed files with 44 additions and 13 deletions

View File

@ -22,7 +22,6 @@ services:
- postgresql
before_script:
- npm run build
- wget --no-check-certificate "https://download.cpy.re/ffmpeg/ffmpeg-release-3.0.2-64bit-static.tar.xz"
- tar xf ffmpeg-release-3.0.2-64bit-static.tar.xz
- mkdir -p $HOME/bin
@ -37,6 +36,16 @@ before_script:
- psql -c 'create database peertube_test6;' -U postgres
- psql -c "create user peertube with password 'peertube';" -U postgres
matrix:
include:
- env: TEST_SUITE=build_then_client
- env: TEST_SUITE=api
- env: TEST_SUITE=cli
- env: TEST_SUITE=lint
script:
- npm run travis -- "$TEST_SUITE"
after_failure:
- cat test1/logs/all-logs.log
- cat test2/logs/all-logs.log

View File

@ -167,7 +167,7 @@ module.exports = function (env) {
beautify: false
}
},
warnings: true
warningsFilter: () => false
}),
/**

View File

@ -13,7 +13,7 @@
"url": "git://github.com/Chocobozzz/PeerTube.git"
},
"scripts": {
"test": "standard && tslint --type-check --project ./tsconfig.json -c ./tslint.json 'src/app/**/*.ts'",
"lint": "standard && tslint --type-check --project ./tsconfig.json -c ./tslint.json 'src/app/**/*.ts'",
"webpack": "webpack",
"webpack-dev-server": "webpack-dev-server",
"postinstall": "npm rebuild node-sass"

View File

@ -44,7 +44,8 @@
"tsc": "tsc",
"nodemon": "nodemon",
"ts-node": "ts-node",
"tslint": "tslint"
"tslint": "tslint",
"travis": "scripty"
},
"dependencies": {
"async": "^2.0.0",

View File

@ -1,7 +1,7 @@
#!/usr/bin/env sh
#!/bin/bash
cd client || exit -1
rm -rf ./compiled
rm -rf ./compiled ./dist
npm run webpack -- --config config/webpack.prod.js --progress --profile --bail

View File

@ -1,10 +1,8 @@
#!/bin/bash
npm run build:server
npm run build:server || exit -1
cd client || exit -1
npm test || exit -1
cd .. || exit -1
npm run tslint -- --type-check --project ./tsconfig.json -c ./tslint.json server.ts "server/**/*.ts" || exit -1
mocha --exit --require ts-node/register --bail server/tests/index.ts
npm run travis -- client || exit -1
npm run travis -- api || exit -1
npm run travis -- cli || exit -1
npm run travis -- lint || exit -1

23
scripts/travis.sh Executable file
View File

@ -0,0 +1,23 @@
#!/bin/bash
if [ $# -eq 0 ]; then
echo "Need test suite argument."
exit -1
fi
if [ "$1" = "build_then_client" ]; then
npm run build
mocha --exit --require ts-node/register --bail server/tests/client.ts
elif [ "$1" = "client" ]; then
mocha --exit --require ts-node/register --bail server/tests/client.ts
elif [ "$1" = "api" ]; then
mocha --exit --require ts-node/register --bail server/tests/api/index.ts
elif [ "$1" = "cli" ]; then
mocha --exit --require ts-node/register --bail server/tests/cli/index.ts
elif [ "$1" = "lint" ]; then
cd client || exit -1
npm run lint || exit -1
cd .. || exit -1
npm run tslint -- --type-check --project ./tsconfig.json -c ./tslint.json server.ts "server/**/*.ts" || exit -1
fi