Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '.gitlab/ci/frontend.gitlab-ci.yml')
-rw-r--r--.gitlab/ci/frontend.gitlab-ci.yml71
1 files changed, 25 insertions, 46 deletions
diff --git a/.gitlab/ci/frontend.gitlab-ci.yml b/.gitlab/ci/frontend.gitlab-ci.yml
index bfc38e73bb5..48f85219ff4 100644
--- a/.gitlab/ci/frontend.gitlab-ci.yml
+++ b/.gitlab/ci/frontend.gitlab-ci.yml
@@ -11,7 +11,7 @@
- .default-retry
- .default-before_script
- .assets-compile-cache
- image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.7.2-git-2.31-lfs-2.9-node-14.15-yarn-1.22-graphicsmagick-1.3.36
+ image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.7-git-2.31-lfs-2.9-node-14.15-yarn-1.22-graphicsmagick-1.3.36
variables:
SETUP_DB: "false"
WEBPACK_VENDOR_DLL: "true"
@@ -132,6 +132,7 @@ rspec frontend_fixture:
extends:
- .frontend-fixtures-base
- .frontend:rules:default-frontend-jobs
+ parallel: 2
rspec frontend_fixture as-if-foss:
extends:
@@ -171,6 +172,8 @@ graphql-schema-dump:
# Disable warnings in browserslist which can break on backports
# https://github.com/browserslist/browserslist/blob/a287ec6/node.js#L367-L384
BROWSERSLIST_IGNORE_OLD_DATA: "true"
+ before_script:
+ - *yarn-install
stage: test
eslint-as-if-foss:
@@ -180,55 +183,19 @@ eslint-as-if-foss:
- .as-if-foss
needs: []
script:
- - *yarn-install
- run_timed_command "yarn run lint:eslint:all"
-.karma-base:
- extends: .frontend-test-base
- script:
- - export BABEL_ENV=coverage CHROME_LOG_FILE=chrome_debug.log
- - *yarn-install
- - run_timed_command "yarn karma"
-
-karma:
- extends:
- - .karma-base
- - .frontend:rules:default-frontend-jobs
- needs:
- - job: "rspec frontend_fixture"
- - job: "rspec-ee frontend_fixture"
- optional: true
- coverage: '/^Statements *: (\d+\.\d+%)/'
- artifacts:
- name: coverage-javascript
- expire_in: 31d
- when: always
- paths:
- - chrome_debug.log
- - coverage-javascript/
- - tmp/tests/frontend/
- reports:
- junit: junit_karma.xml
- cobertura: coverage-javascript/cobertura-coverage.xml
-
-karma-as-if-foss:
- extends:
- - .karma-base
- - .frontend:rules:default-frontend-jobs-as-if-foss
- - .as-if-foss
- needs: ["rspec frontend_fixture as-if-foss"]
-
.jest-base:
extends: .frontend-test-base
script:
- - *yarn-install
- - run_timed_command "yarn jest --ci --coverage --testSequencer ./scripts/frontend/parallel_ci_sequencer.js"
+ - run_timed_command "yarn jest:ci"
jest:
extends:
- .jest-base
- - .frontend:rules:default-frontend-jobs
+ - .frontend:rules:jest
needs:
+ - job: "detect-tests"
- job: "rspec frontend_fixture"
- job: "rspec-ee frontend_fixture"
optional: true
@@ -244,12 +211,18 @@ jest:
junit: junit_jest.xml
parallel: 5
+jest minimal:
+ extends:
+ - jest
+ - .frontend:rules:jest:minimal
+ script:
+ - run_timed_command "yarn jest:ci:minimal"
+
jest-integration:
extends:
- .frontend-test-base
- .frontend:rules:default-frontend-jobs
script:
- - *yarn-install
- run_timed_command "yarn jest:integration --ci"
needs:
- job: "rspec frontend_fixture"
@@ -270,7 +243,11 @@ coverage-frontend:
- .default-retry
- .yarn-cache
- .frontend:rules:ee-mr-and-default-branch-only
- needs: ["jest"]
+ needs:
+ - job: "jest"
+ optional: true
+ - job: "jest minimal"
+ optional: true
stage: post-test
before_script:
- *yarn-install
@@ -298,9 +275,13 @@ coverage-frontend:
- *yarn-install
- run_timed_command "retry yarn run webpack-prod"
-qa-frontend-node:10:
+qa-frontend-node:12:
+ extends: .qa-frontend-node
+ image: ${GITLAB_DEPENDENCY_PROXY}node:12
+
+qa-frontend-node:14:
extends: .qa-frontend-node
- image: ${GITLAB_DEPENDENCY_PROXY}node:dubnium
+ image: ${GITLAB_DEPENDENCY_PROXY}node:14
qa-frontend-node:latest:
extends:
@@ -351,7 +332,6 @@ bundle-size-review:
extends:
- .frontend-test-base
script:
- - *yarn-install
- run_timed_command "yarn generate:startup_css"
- yarn check:startup_css
@@ -379,7 +359,6 @@ startup-css-check as-if-foss:
- .frontend-test-base
- .storybook-yarn-cache
script:
- - *yarn-install # storybook depends on the global webpack config, so we must install global deps.
- *storybook-yarn-install
- yarn run storybook:build