diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 893e3bf007d8ea14aa4c34b8078ffdb0ddb09e60..f591cdc9b194c40f4132bddd39eb85e7e59196a7 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -25,6 +25,23 @@ variables:
     variables:
       - $CI_COMMIT_MESSAGE =~ /^wip*/i
 
+block_ci:
+  only:
+    <<: *ci_except_conditions
+  stage: no_ci
+  when: manual
+  allow_failure: false
+  script:
+    - exit -1
+
+skip_ci:
+  except:
+    <<: *ci_only_conditions
+  stage: no_ci
+  when: manual
+  script:
+    - echo 1
+
 .rust_stable_lin64: &rust_stable_lin64
   only:
     <<: *ci_only_conditions
@@ -72,14 +89,6 @@ variables:
   before_script:
     - rustc --version && cargo --version
 
-no_ci:
-  stage: no_ci
-  only:
-    <<: *ci_except_conditions
-  allow_failure: true
-  script:
-    - exit -1
-
 fmt:
   <<: *rust_stable_lin64
   stage: fmt