diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c5984c2b93a4caa7011081a0860861f287947888..dbb99d588ac919ad854708d85b6c5f15e5d2c673 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -46,14 +46,18 @@ stages:
   - deploy
 
 Generate_Project:
-    only: ['web', 'schedules']
+    rules: 
+      - if: $CI_PIPELINE_SOURCE == "web"
+      - if: $CI_PIPELINE_SOURCE == "schedule"
     extends: .Generate_Project_
     variables:
         RUN_SETUP: "false"
         GEN_TEMPLATE_BRANCH: "4.27"
 
 Build_Windows:
-    only: ['web', 'schedules']
+    rules: 
+      - if: $CI_PIPELINE_SOURCE == "web"
+      - if: $CI_PIPELINE_SOURCE == "schedule"
     extends: .Build_Windows_
     tags:
         - windows
@@ -68,7 +72,9 @@ Build_Windows:
           artifacts: true
     
 Build_Linux:
-    only: ['web', 'schedules']
+    rules: 
+      - if: $CI_PIPELINE_SOURCE == "web"
+      - if: $CI_PIPELINE_SOURCE == "schedule"
     extends: .Build_Linux_
     tags:
         - linux
@@ -84,14 +90,18 @@ Build_Linux:
           artifacts: true
 
 Deploy_Windows:
-    only: ['web', 'schedules']
+    rules: 
+      - if: $CI_PIPELINE_SOURCE == "web"
+      - if: $CI_PIPELINE_SOURCE == "schedule"
     extends: .Deploy_VRDev_
     needs:
         - job: "Build_Windows"
           artifacts: true          
 
 Deploy_CAVE:
-    only: ['web', 'schedules']
+    rules: 
+      - if: $CI_PIPELINE_SOURCE == "web"
+      - if: $CI_PIPELINE_SOURCE == "schedule"
     extends: .Deploy_CAVE_
     needs:
         - job: "Build_Linux"