Browse Source

Merge pull request #741 from sharelatex/ja-speed-up-acceptance-tests

Speed up acceptance tests and run tests in parallel in CI
Alberto Fernández-Capel 8 years ago
parent
commit
27ef84eb1e

+ 31 - 27
services/web/Jenkinsfile

@@ -67,15 +67,38 @@ pipeline {
       }
     }
     
-    stage('Unit Test') {
-      agent {
-        docker {
-          image 'node:6.9.5'
-          reuseNode true
+    stage('Test and Minify') {
+      parallel {
+        stage('Unit Test') {
+          agent {
+            docker {
+              image 'node:6.9.5'
+              reuseNode true
+            }
+          }
+          steps {
+            sh 'make --no-print-directory test_unit MOCHA_ARGS="--reporter tap"'
+          }
+        }
+        
+        stage('Acceptance Test') {
+          steps {
+            // Spawns its own docker containers
+            sh 'make --no-print-directory test_acceptance MOCHA_ARGS="--reporter tap"'
+          }
+        }
+
+        stage('Minify') {
+          agent {
+            docker {
+              image 'node:6.9.5'
+              reuseNode true
+            }
+          }
+          steps {
+            sh 'WEBPACK_ENV=production make minify'
+          }
         }
-      }
-      steps {
-        sh 'make --no-print-directory test_unit MOCHA_ARGS="--reporter tap"'
       }
     }
 
@@ -86,25 +109,6 @@ pipeline {
       }
     }
     
-    stage('Acceptance Test') {
-      steps {
-        // Spawns its own docker containers
-        sh 'make --no-print-directory test_acceptance MOCHA_ARGS="--reporter tap"'
-      }
-    }
-
-    stage('Minify') {
-      agent {
-        docker {
-          image 'node:6.9.5'
-          reuseNode true
-        }
-      }
-      steps {
-        sh 'WEBPACK_ENV=production make minify'
-      }
-    }
-    
     stage('Package') {
       steps {
         sh 'rm -rf ./node_modules/grunt*'

+ 1 - 1
services/web/config/settings.defaults.coffee

@@ -425,7 +425,7 @@ module.exports = settings =
 	redirects:
 		"/templates/index": "/templates/"
 
-	reloadModuleViewsOnEachRequest: true
+	reloadModuleViewsOnEachRequest: process.env['NODE_ENV'] != 'production'
 
 	domainLicences: [
 

+ 1 - 0
services/web/docker-compose.yml

@@ -19,6 +19,7 @@ services:
       LINKED_URL_PROXY: 'http://localhost:6543'
       ENABLED_LINKED_FILE_TYPES: 'url,project_file,project_output_file,mendeley'
       SHARELATEX_CONFIG: /app/test/acceptance/config/settings.test.coffee
+      NODE_ENV: production
     depends_on:
       - redis
       - mongo