diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index a008562c6120dc1b2cfc65c630285dc5e68f73aa..0382950af873e263a0fd955e48f4f9fcf14e4281 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -108,11 +108,18 @@ release:
   stage: release
   image: registry.gitlab.com/gitlab-org/release-cli:latest
   rules:
-    - if: $CI_PIPELINE_SOURCE == "pipeline" && $NEEDS_RELEASE == "true"
+    - if: $CI_PIPELINE_SOURCE == "pipeline"
     - if: $CI_PIPELINE_SOURCE == "web"
       when: manual
   script:
     - echo "Start release $VERSION"
+    - |
+      if  [ $NEEDS_RELEASE != "true" ]; then
+        exit 203
+      fi
+  allow_failure:
+    exit_codes:
+      - 203
   release:
     name: 'Release $VERSION'
     description: '$VERSION'