diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index df493621f58b1af5135e5929e5c25f17af342233..5bd9bee30117e508ef3567494373d6fafd961846 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,3 +1,13 @@
+workflow:
+  rules:
+    - if: '$CI_PIPELINE_SOURCE == "web"'
+    - if: $CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS && $CI_PIPELINE_SOURCE == "push"
+      when: never
+    - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
+    - if: '$CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS'
+      when: never
+    - if: '$CI_COMMIT_BRANCH'
+    
 stages:
   - license
   - build_and_test
@@ -10,7 +20,6 @@ stages:
   - echo $WOLF_GNSS_BRANCH
   - echo $WOLF_ROS_NODE_BRANCH
   - echo $CI_COMMIT_BRANCH
-  - echo $WOLF_ROS_GNSS_BRANCH
   - echo $GNSSUTILS_BRANCH
 
 .preliminaries_template: &preliminaries_definition