From b27db6cf0acb632de5201abf70f5acaabeba18e3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9my=20Coutable?= <remy@rymai.me>
Date: Wed, 14 Nov 2018 16:24:14 +0100
Subject: [PATCH] Use the new parallel keyword in .gitlab-ci.yml
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Rémy Coutable <remy@rymai.me>
---
 .gitlab-ci.yml      | 147 ++++++--------------------------------------
 Gemfile             |   2 +-
 Gemfile.lock        |   4 +-
 Gemfile.rails4.lock |   4 +-
 4 files changed, 24 insertions(+), 133 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 2595d0bbe1b8d..82d2cb8d09f75 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -150,13 +150,12 @@ stages:
   stage: test
   script:
     - JOB_NAME=( $CI_JOB_NAME )
-    - export CI_NODE_INDEX=${JOB_NAME[-2]}
-    - export CI_NODE_TOTAL=${JOB_NAME[-1]}
-    - export KNAPSACK_REPORT_PATH=knapsack/${CI_PROJECT_NAME}/${JOB_NAME[0]}_node_${CI_NODE_INDEX}_${CI_NODE_TOTAL}_report.json
+    - TEST_TOOL=${JOB_NAME[0]}
+    - export KNAPSACK_REPORT_PATH=knapsack/${CI_PROJECT_NAME}/${TEST_TOOL}_node_${CI_NODE_INDEX}_${CI_NODE_TOTAL}_report.json
     - export KNAPSACK_GENERATE_REPORT=true
     - export SUITE_FLAKY_RSPEC_REPORT_PATH=${FLAKY_RSPEC_SUITE_REPORT_PATH}
-    - export FLAKY_RSPEC_REPORT_PATH=rspec_flaky/all_${JOB_NAME[0]}_${CI_NODE_INDEX}_${CI_NODE_TOTAL}_report.json
-    - export NEW_FLAKY_RSPEC_REPORT_PATH=rspec_flaky/new_${JOB_NAME[0]}_${CI_NODE_INDEX}_${CI_NODE_TOTAL}_report.json
+    - export FLAKY_RSPEC_REPORT_PATH=rspec_flaky/all_${TEST_TOOL}_${CI_NODE_INDEX}_${CI_NODE_TOTAL}_report.json
+    - export NEW_FLAKY_RSPEC_REPORT_PATH=rspec_flaky/new_${TEST_TOOL}_${CI_NODE_INDEX}_${CI_NODE_TOTAL}_report.json
     - export FLAKY_RSPEC_GENERATE_REPORT=true
     - export CACHE_CLASSES=true
     - cp ${KNAPSACK_RSPEC_SUITE_REPORT_PATH} ${KNAPSACK_REPORT_PATH}
@@ -461,129 +460,21 @@ danger-review:
     - yarn install --frozen-lockfile --cache-folder .yarn-cache
     - danger --fail-on-errors=true
 
-rspec-pg 0 30: *rspec-metadata-pg
-rspec-pg 1 30: *rspec-metadata-pg
-rspec-pg 2 30: *rspec-metadata-pg
-rspec-pg 3 30: *rspec-metadata-pg
-rspec-pg 4 30: *rspec-metadata-pg
-rspec-pg 5 30: *rspec-metadata-pg
-rspec-pg 6 30: *rspec-metadata-pg
-rspec-pg 7 30: *rspec-metadata-pg
-rspec-pg 8 30: *rspec-metadata-pg
-rspec-pg 9 30: *rspec-metadata-pg
-rspec-pg 10 30: *rspec-metadata-pg
-rspec-pg 11 30: *rspec-metadata-pg
-rspec-pg 12 30: *rspec-metadata-pg
-rspec-pg 13 30: *rspec-metadata-pg
-rspec-pg 14 30: *rspec-metadata-pg
-rspec-pg 15 30: *rspec-metadata-pg
-rspec-pg 16 30: *rspec-metadata-pg
-rspec-pg 17 30: *rspec-metadata-pg
-rspec-pg 18 30: *rspec-metadata-pg
-rspec-pg 19 30: *rspec-metadata-pg
-rspec-pg 20 30: *rspec-metadata-pg
-rspec-pg 21 30: *rspec-metadata-pg
-rspec-pg 22 30: *rspec-metadata-pg
-rspec-pg 23 30: *rspec-metadata-pg
-rspec-pg 24 30: *rspec-metadata-pg
-rspec-pg 25 30: *rspec-metadata-pg
-rspec-pg 26 30: *rspec-metadata-pg
-rspec-pg 27 30: *rspec-metadata-pg
-rspec-pg 28 30: *rspec-metadata-pg
-rspec-pg 29 30: *rspec-metadata-pg
-
-rspec-mysql 0 30: *rspec-metadata-mysql
-rspec-mysql 1 30: *rspec-metadata-mysql
-rspec-mysql 2 30: *rspec-metadata-mysql
-rspec-mysql 3 30: *rspec-metadata-mysql
-rspec-mysql 4 30: *rspec-metadata-mysql
-rspec-mysql 5 30: *rspec-metadata-mysql
-rspec-mysql 6 30: *rspec-metadata-mysql
-rspec-mysql 7 30: *rspec-metadata-mysql
-rspec-mysql 8 30: *rspec-metadata-mysql
-rspec-mysql 9 30: *rspec-metadata-mysql
-rspec-mysql 10 30: *rspec-metadata-mysql
-rspec-mysql 11 30: *rspec-metadata-mysql
-rspec-mysql 12 30: *rspec-metadata-mysql
-rspec-mysql 13 30: *rspec-metadata-mysql
-rspec-mysql 14 30: *rspec-metadata-mysql
-rspec-mysql 15 30: *rspec-metadata-mysql
-rspec-mysql 16 30: *rspec-metadata-mysql
-rspec-mysql 17 30: *rspec-metadata-mysql
-rspec-mysql 18 30: *rspec-metadata-mysql
-rspec-mysql 19 30: *rspec-metadata-mysql
-rspec-mysql 20 30: *rspec-metadata-mysql
-rspec-mysql 21 30: *rspec-metadata-mysql
-rspec-mysql 22 30: *rspec-metadata-mysql
-rspec-mysql 23 30: *rspec-metadata-mysql
-rspec-mysql 24 30: *rspec-metadata-mysql
-rspec-mysql 25 30: *rspec-metadata-mysql
-rspec-mysql 26 30: *rspec-metadata-mysql
-rspec-mysql 27 30: *rspec-metadata-mysql
-rspec-mysql 28 30: *rspec-metadata-mysql
-rspec-mysql 29 30: *rspec-metadata-mysql
-
-rspec-pg-rails4 0 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 1 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 2 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 3 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 4 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 5 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 6 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 7 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 8 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 9 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 10 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 11 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 12 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 13 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 14 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 15 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 16 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 17 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 18 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 19 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 20 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 21 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 22 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 23 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 24 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 25 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 26 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 27 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 28 30: *rspec-metadata-pg-rails4
-rspec-pg-rails4 29 30: *rspec-metadata-pg-rails4
-
-rspec-mysql-rails4 0 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 1 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 2 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 3 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 4 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 5 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 6 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 7 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 8 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 9 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 10 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 11 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 12 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 13 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 14 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 15 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 16 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 17 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 18 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 19 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 20 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 21 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 22 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 23 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 24 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 25 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 26 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 27 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 28 30: *rspec-metadata-mysql-rails4
-rspec-mysql-rails4 29 30: *rspec-metadata-mysql-rails4
+rspec-pg:
+  <<: *rspec-metadata-pg
+  parallel: 30
+
+rspec-mysql:
+  <<: *rspec-metadata-mysql
+  parallel: 30
+
+rspec-pg-rails4:
+  <<: *rspec-metadata-pg-rails4
+  parallel: 30
+
+rspec-mysql-rails4:
+  <<: *rspec-metadata-mysql-rails4
+  parallel: 30
 
 static-analysis:
   <<: *dedicated-no-docs-no-db-pull-cache-job
diff --git a/Gemfile b/Gemfile
index 7030bd9c5e846..2a228b326adbb 100644
--- a/Gemfile
+++ b/Gemfile
@@ -364,7 +364,7 @@ group :development, :test do
   gem 'benchmark-ips', '~> 2.3.0', require: false
 
   gem 'license_finder', '~> 5.4', require: false
-  gem 'knapsack', '~> 1.16'
+  gem 'knapsack', '~> 1.17'
 
   gem 'activerecord_sane_schema_dumper', gem_versions['activerecord_sane_schema_dumper']
 
diff --git a/Gemfile.lock b/Gemfile.lock
index f08855ed049fb..e21a1b8545748 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -415,7 +415,7 @@ GEM
       kaminari-core (= 1.0.1)
     kaminari-core (1.0.1)
     kgio (2.10.0)
-    knapsack (1.16.0)
+    knapsack (1.17.0)
       rake
     kubeclient (3.1.0)
       http (~> 2.2.2)
@@ -1039,7 +1039,7 @@ DEPENDENCIES
   json-schema (~> 2.8.0)
   jwt (~> 1.5.6)
   kaminari (~> 1.0)
-  knapsack (~> 1.16)
+  knapsack (~> 1.17)
   kubeclient (~> 3.1.0)
   letter_opener_web (~> 1.3.0)
   license_finder (~> 5.4)
diff --git a/Gemfile.rails4.lock b/Gemfile.rails4.lock
index 5bec40de909ac..fea3102b8d6c8 100644
--- a/Gemfile.rails4.lock
+++ b/Gemfile.rails4.lock
@@ -412,7 +412,7 @@ GEM
       kaminari-core (= 1.0.1)
     kaminari-core (1.0.1)
     kgio (2.10.0)
-    knapsack (1.16.0)
+    knapsack (1.17.0)
       rake
     kubeclient (3.1.0)
       http (~> 2.2.2)
@@ -1030,7 +1030,7 @@ DEPENDENCIES
   json-schema (~> 2.8.0)
   jwt (~> 1.5.6)
   kaminari (~> 1.0)
-  knapsack (~> 1.16)
+  knapsack (~> 1.17)
   kubeclient (~> 3.1.0)
   letter_opener_web (~> 1.3.0)
   license_finder (~> 5.4)
-- 
GitLab