From 34ece35553b5a9d619feef25f3f01ff0b6125c9a Mon Sep 17 00:00:00 2001 From: Chris Thielen Date: Tue, 17 Dec 2019 07:45:41 -0800 Subject: [PATCH] fix(travis): Fail PRs when they have eslint errors (#7715) --- gradle/buildViaTravis.sh | 2 +- webpack.config.js | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/gradle/buildViaTravis.sh b/gradle/buildViaTravis.sh index 91333cf25f5..012625b50e6 100755 --- a/gradle/buildViaTravis.sh +++ b/gradle/buildViaTravis.sh @@ -7,7 +7,7 @@ if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then NODE_JS_VERSION=`node -e 'console.log(require("./package.json").engines.node.replace(/[^\d\.]/g, ""))'`; nvm use $NODE_JS_VERSION - ./node_modules/.bin/karma start --single-run + ESLINT_FAIL_ON_ERROR=true ./node_modules/.bin/karma start --single-run elif [ "$TRAVIS_PULL_REQUEST" == "false" ] && [ "$TRAVIS_TAG" == "" ]; then echo -e 'Build Branch with Snapshot => Branch ['$TRAVIS_BRANCH']' diff --git a/webpack.config.js b/webpack.config.js index 7e4e9f28806..341ba9ed87e 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -12,6 +12,8 @@ const CACHE_INVALIDATE = getCacheInvalidateString(); const NODE_MODULE_PATH = path.join(__dirname, 'node_modules'); const SETTINGS_PATH = process.env.SETTINGS_PATH || './settings.js'; const THREADS = getThreadLoaderThreads(); +// Used to fail CI for PRs which contain linter errors +const ESLINT_FAIL_ON_ERROR = process.env.ESLINT_FAIL_ON_ERROR === 'true'; function configure(env, webpackOpts) { const WEBPACK_MODE = (webpackOpts && webpackOpts.mode) || 'development'; @@ -121,7 +123,7 @@ function configure(env, webpackOpts) { { loader: 'cache-loader', options: { cacheIdentifier: CACHE_INVALIDATE } }, { loader: 'thread-loader', options: { workers: THREADS } }, { loader: 'babel-loader' }, - { loader: 'eslint-loader' }, + { loader: 'eslint-loader', options: { failOnError: ESLINT_FAIL_ON_ERROR } }, ], exclude: /(node_modules(?!\/clipboard)|settings\.js)/, }, @@ -131,7 +133,7 @@ function configure(env, webpackOpts) { { loader: 'cache-loader', options: { cacheIdentifier: CACHE_INVALIDATE } }, { loader: 'thread-loader', options: { workers: THREADS } }, { loader: 'ts-loader', options: { happyPackMode: true } }, - { loader: 'eslint-loader' }, + { loader: 'eslint-loader', options: { failOnError: ESLINT_FAIL_ON_ERROR } }, ], exclude: /node_modules/, },