... @@ -6,10 +6,10 @@
... @@ -6,10 +6,10 @@
- tmp/cache/assets/sprockets
- tmp/cache/assets/sprockets
- tmp/cache/babel-loader
- tmp/cache/babel-loader
- tmp/cache/vue-loader
- tmp/cache/vue-loader
- tmp/cache/webpack-dlls
.gitlab:assets:compile-metadata :
.gitlab:assets:compile-metadata :
extends :
extends :
- .default-tags
- .default-retry
- .default-retry
- .default-before_script
- .default-before_script
- .assets-compile-cache
- .assets-compile-cache
... @@ -63,7 +63,6 @@ gitlab:assets:compile pull-cache:
... @@ -63,7 +63,6 @@ gitlab:assets:compile pull-cache:
.compile-assets-metadata :
.compile-assets-metadata :
extends :
extends :
- .default-tags
- .default-retry
- .default-retry
- .default-before_script
- .default-before_script
- .assets-compile-cache
- .assets-compile-cache
... @@ -78,6 +77,7 @@ gitlab:assets:compile pull-cache:
... @@ -78,6 +77,7 @@ gitlab:assets:compile pull-cache:
SETUP_DB : " false"
SETUP_DB : " false"
# we override the max_old_space_size to prevent OOM errors
# we override the max_old_space_size to prevent OOM errors
NODE_OPTIONS : --max_old_space_size=3584
NODE_OPTIONS : --max_old_space_size=3584
WEBPACK_VENDOR_DLL : " true"
cache :
cache :
key : " assets-compile:v9"
key : " assets-compile:v9"
artifacts :
artifacts :
... @@ -118,15 +118,52 @@ compile-assets pull-cache as-if-foss:
... @@ -118,15 +118,52 @@ compile-assets pull-cache as-if-foss:
policy : pull
policy : pull
key : " assets-compile:v9:foss"
key : " assets-compile:v9:foss"
.frontend-job -base :
.frontend-fixtures -base :
extends :
extends :
- .default-tags
- .default-retry
- .default-retry
- .default-cache
- .default-cache
- .default-before_script
- .default-before_script
- .use-pg9
- .use-pg9
stage : fixtures
needs :
- job : " setup-test-env"
artifacts : true
- job : " compile-assets pull-cache"
artifacts : true
script :
- date
- scripts/gitaly-test-spawn
- date
- bundle exec rake frontend:fixtures
artifacts :
name : frontend-fixtures
expire_in : 31d
when : always
paths :
- node_modules
- public/assets
- tmp/tests/frontend/
frontend-fixtures :
extends :
- .frontend-fixtures-base
- .frontend:rules:default-frontend-jobs
frontend-fixtures-as-if-foss :
extends :
- .frontend-fixtures-base
- .frontend:rules:default-frontend-jobs-as-if-foss
- .as-if-foss
.frontend-job-base :
extends :
- .default-retry
- .default-cache
- .default-before_script
variables :
USE_BUNDLE_INSTALL : " false"
SETUP_DB : " false"
stage : test
stage : test
needs : [ " setup-test-env" , " compile-assets pull-cache" ]
.karma-base :
.karma-base :
extends : .frontend-job-base
extends : .frontend-job-base
... @@ -136,14 +173,13 @@ compile-assets pull-cache as-if-foss:
... @@ -136,14 +173,13 @@ compile-assets pull-cache as-if-foss:
script :
script :
- export BABEL_ENV=coverage CHROME_LOG_FILE=chrome_debug.log
- export BABEL_ENV=coverage CHROME_LOG_FILE=chrome_debug.log
- date
- date
- scripts/gitaly-test-spawn
- yarn karma
- date
- bundle exec rake karma
karma :
karma :
extends :
extends :
- .karma-base
- .karma-base
- .frontend:rules:default-frontend-jobs
- .frontend:rules:default-frontend-jobs
needs : [ " frontend-fixtures" ]
coverage : ' /^Statements *: (\d+\.\d+%)/'
coverage : ' /^Statements *: (\d+\.\d+%)/'
artifacts :
artifacts :
name : coverage-javascript
name : coverage-javascript
... @@ -161,25 +197,24 @@ karma-as-if-foss:
... @@ -161,25 +197,24 @@ karma-as-if-foss:
- .karma-base
- .karma-base
- .frontend:rules:default-frontend-jobs-as-if-foss
- .frontend:rules:default-frontend-jobs-as-if-foss
- .as-if-foss
- .as-if-foss
needs : [ " frontend-fixtures-as-if-foss" ]
.jest-base :
.jest-base :
extends : .frontend-job-base
extends : .frontend-job-base
script :
script :
- scripts/gitaly-test-spawn
- date
- date
- bundle exec rake frontend:fixtures
- yarn jest --ci --coverage --testSequencer ./scripts/frontend/parallel_ci_sequencer.js
- date
- yarn jest --ci --coverage
cache :
cache :
key : jest
key : jest
paths :
paths :
- tmp/jest /jest/
- tmp/cache /jest/
policy : pull-push
policy : pull-push
jest :
jest :
extends :
extends :
- .jest-base
- .jest-base
- .frontend:rules:default-frontend-jobs
- .frontend:rules:default-frontend-jobs
needs : [ " frontend-fixtures" ]
artifacts :
artifacts :
name : coverage-frontend
name : coverage-frontend
expire_in : 31d
expire_in : 31d
... @@ -190,18 +225,38 @@ jest:
... @@ -190,18 +225,38 @@ jest:
- tmp/tests/frontend/
- tmp/tests/frontend/
reports :
reports :
junit : junit_jest.xml
junit : junit_jest.xml
parallel : 2
jest-as-if-foss :
jest-as-if-foss :
extends :
extends :
- .jest-base
- .jest-base
- .frontend:rules:default-frontend-jobs-as-if-foss
- .frontend:rules:default-frontend-jobs-as-if-foss
- .as-if-foss
- .as-if-foss
needs : [ " frontend-fixtures-as-if-foss" ]
cache :
cache :
policy : pull
policy : pull
coverage-frontend :
extends :
- .default-retry
- .frontend:rules:default-frontend-jobs
needs : [ " jest" ]
stage : post-test
before_script :
- yarn install --frozen-lockfile --cache-folder .yarn-cache --prefer-offline
script :
- yarn node scripts/frontend/merge_coverage_frontend.js
artifacts :
name : coverage-frontend
expire_in : 31d
paths :
- coverage-frontend/
cache :
paths :
- .yarn-cache/
.qa-frontend-node :
.qa-frontend-node :
extends :
extends :
- .default-tags
- .default-retry
- .default-retry
- .default-cache
- .default-cache
- .frontend:rules:qa-frontend-node
- .frontend:rules:qa-frontend-node
... @@ -218,10 +273,6 @@ jest-as-if-foss:
... @@ -218,10 +273,6 @@ jest-as-if-foss:
- date
- date
- yarn run webpack-prod
- yarn run webpack-prod
qa-frontend-node:8 :
extends : .qa-frontend-node
image : node:carbon
qa-frontend-node:10 :
qa-frontend-node:10 :
extends : .qa-frontend-node
extends : .qa-frontend-node
image : node:dubnium
image : node:dubnium
... @@ -233,7 +284,6 @@ qa-frontend-node:latest:
... @@ -233,7 +284,6 @@ qa-frontend-node:latest:
webpack-dev-server :
webpack-dev-server :
extends :
extends :
- .default-tags
- .default-retry
- .default-retry
- .default-cache
- .default-cache
- .frontend:rules:default-frontend-jobs
- .frontend:rules:default-frontend-jobs
...
...
... ...