diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 5bff988b357d474445eba32c573b7f826d1b305d..fca1497abd9c01cf80f358339587fc614b786846 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -78,11 +78,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: '$CI_COMMIT_TAG'