From 9073bc8f0d05eaac5be8474ad319a9d33346f2c9 Mon Sep 17 00:00:00 2001 From: Trotyl Yu Date: Sat, 2 Dec 2017 14:13:00 +0800 Subject: [PATCH] ci: parallelize build process to speed up (#655) --- .travis.yml | 20 ++++++++++++++------ integration/angular-cli/package.json | 2 +- integration/rollup/package.json | 4 ++-- integration/webpack/package.json | 2 +- package.json | 3 +++ 5 files changed, 21 insertions(+), 10 deletions(-) diff --git a/.travis.yml b/.travis.yml index dc9e84d43bd..76fba3844e9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,6 +7,13 @@ branches: only: - master +env: + - TASK=build + - TASK=test + - TASK=integration-cli + - TASK=integration-webpack + - TASK=integration-rollup + addons: apt: sources: @@ -21,11 +28,12 @@ before_install: - sh -e /etc/init.d/xvfb start before_script: -- npm install -g @angular/cli -- npm install -g karma -- ng build + - npm install -g @angular/cli + - npm install -g karma script: -- npm run test -- npm run integration -- cat ./coverage/lcov.info | ./node_modules/.bin/coveralls + - npm run $TASK + - | + if [ "$TASK" = "test" ]; then + cat ./coverage/lcov.info | ./node_modules/.bin/coveralls + fi diff --git a/integration/angular-cli/package.json b/integration/angular-cli/package.json index 6efa66a4819..3a3c12c1ab1 100644 --- a/integration/angular-cli/package.json +++ b/integration/angular-cli/package.json @@ -10,7 +10,7 @@ "test": "echo \"Error: no test... minimal project\" && exit 1", "lint": "echo \"Error: no lint... minimal project\" && exit 1", "e2e": "echo \"Error: no e2e... minimal project\" && exit 1", - "preintegration": "npm run setup && npm install", + "preintegration": "npm run setup && npm install --ignore-scripts", "integration": "ng build --prod --build-optimizer" }, "private": true, diff --git a/integration/rollup/package.json b/integration/rollup/package.json index 2780c69651c..9902fa4aee6 100644 --- a/integration/rollup/package.json +++ b/integration/rollup/package.json @@ -15,7 +15,7 @@ "e2e": "echo \"Error: no e2e... minimal project\" && exit 1", "prengc": "npm run clean", "ngc": "ngc -p src/tsconfig.app.json", - "preintegration": "npm run setup && npm install", + "preintegration": "npm run setup && npm install --ignore-scripts", "integration": "npm run build" }, "private": true, @@ -42,7 +42,7 @@ "http-server": "^0.10.0", "rimraf": "^2.6.1", "rollup": "^0.49.2", - "rollup-plugin-angular-optimizer": "^0.1.0", + "rollup-plugin-angular-optimizer": "^0.2.0", "rollup-plugin-commonjs": "^8.2.0", "rollup-plugin-node-resolve": "^3.0.0", "rollup-plugin-uglify": "^2.0.1", diff --git a/integration/webpack/package.json b/integration/webpack/package.json index 38bdb680ce9..360e45a6497 100644 --- a/integration/webpack/package.json +++ b/integration/webpack/package.json @@ -9,7 +9,7 @@ "test": "echo \"Error: no test... minimal project\" && exit 1", "lint": "echo \"Error: no lint... minimal project\" && exit 1", "e2e": "echo \"Error: no e2e... minimal project\" && exit 1", - "preintegration": "npm run setup && npm install", + "preintegration": "npm run setup && npm install --ignore-scripts", "integration": "npm run build" }, "private": true, diff --git a/package.json b/package.json index ef9b89354ba..9a034f377bd 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,9 @@ "release": "npm run generate && ng build --prod && npm run helper", "test": "node --max_old_space_size=5120 ./node_modules/@angular/cli/bin/ng test --single-run --code-coverage", "integration": "npm run generate && bash ./integration-test.sh", + "integration-cli": "npm run generate && cd integration/angular-cli && npm run integration", + "integration-webpack": "npm run generate && cd integration/webpack && npm run integration", + "integration-rollup": "npm run generate && cd integration/rollup && npm run integration", "lint": "ng lint", "e2e": "ng e2e" },