diff --git a/.gitlab/ci/frontend.gitlab-ci.yml b/.gitlab/ci/frontend.gitlab-ci.yml
index 27b35cbe6fde7e6e540b5252d57792ac11a4794c..08cbc900369d46027bcf008f2cbefbb4811b38f6 100644
--- a/.gitlab/ci/frontend.gitlab-ci.yml
+++ b/.gitlab/ci/frontend.gitlab-ci.yml
@@ -176,7 +176,7 @@ retrieve-frontend-fixtures:
         exit 0
       fi
     - !reference [.base-script, script]
-    - rspec_parallelized_job
+    - run_with_custom_exit_code rspec_parallelized_job
   artifacts:
     name: frontend-fixtures
     expire_in: 31d
@@ -236,7 +236,7 @@ graphql-schema-dump:
   stage: fixtures
   needs: []
   script:
-    - bundle exec rake gitlab:graphql:schema:dump
+    - run_with_custom_exit_code bundle exec rake gitlab:graphql:schema:dump
   artifacts:
     expire_in: 30 days
     name: graphql-schema
@@ -256,7 +256,7 @@ upload-graphql-schema-dump:
     - .with-graphql-schema-dump-needs
   script:
     - source scripts/gitlab_component_helpers.sh
-    - create_and_upload_graphql_schema_package
+    - run_with_custom_exit_code create_and_upload_graphql_schema_package
 
 
 .frontend-test-base:
diff --git a/.gitlab/ci/graphql.gitlab-ci.yml b/.gitlab/ci/graphql.gitlab-ci.yml
index c8066cc52eb5e299419a830512b6b230f897aafc..71d814024602b19e298db03b1401aafe0ee9b88c 100644
--- a/.gitlab/ci/graphql.gitlab-ci.yml
+++ b/.gitlab/ci/graphql.gitlab-ci.yml
@@ -9,10 +9,16 @@ graphql-verify:
   stage: test
   needs: []
   script:
-    - bundle exec rake gitlab:graphql:validate
-    - bundle exec rake gitlab:graphql:check_docs
-    - bundle exec rake gitlab:graphql:schema:dump
-    - node scripts/frontend/graphql_possible_types_extraction.js --check
+    - |
+      function graphql_verify() {
+        bundle exec rake gitlab:graphql:validate
+        bundle exec rake gitlab:graphql:check_docs
+        bundle exec rake gitlab:graphql:schema:dump
+        node scripts/frontend/graphql_possible_types_extraction.js --check
+      }
+
+      run_with_custom_exit_code graphql_verify
+
   artifacts:
     expire_in: 7 days
     name: graphql-schema-verify
diff --git a/.gitlab/ci/setup.gitlab-ci.yml b/.gitlab/ci/setup.gitlab-ci.yml
index 4cb8e3b95852b784c917ddf465d5925f9630b96b..8ec1bfc94edb7657e1769f0ff1eea7d400216c22 100644
--- a/.gitlab/ci/setup.gitlab-ci.yml
+++ b/.gitlab/ci/setup.gitlab-ci.yml
@@ -119,7 +119,7 @@ generate-frontend-fixtures-mapping:
     - source ./scripts/rspec_helpers.sh
     - section_start "gitaly-test-spawn" "Spawning Gitaly"; scripts/gitaly-test-spawn; section_end "gitaly-test-spawn";  # Do not use 'bundle exec' here
   script:
-    - generate_frontend_fixtures_mapping
+    - run_with_custom_exit_code generate_frontend_fixtures_mapping
   artifacts:
     expire_in: 7d
     paths: