diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index fc9b05f060efc44c7c182cc063bb51a723f8799a..a664c78cded01f1aa96f6d7930a545a222946a88 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -30,7 +30,9 @@ stages:
   - deploy
 
 Build_Windows:
-    only: ['web', 'schedules']
+    rules: 
+      - if: $CI_PIPELINE_SOURCE == "web"
+      - if: $CI_PIPELINE_SOURCE == "schedule"
     extends: .Build_Windows_
     tags:
         - windows
@@ -40,7 +42,9 @@ Build_Windows:
        # CLIENT_CONFIG: "Shipping"
     
 Build_Linux:
-    only: ['web', 'schedules']
+    rules: 
+      - if: $CI_PIPELINE_SOURCE == "web"
+      - if: $CI_PIPELINE_SOURCE == "schedule"
     extends: .Build_Linux_
     tags:
         - linux
@@ -50,14 +54,18 @@ Build_Linux:
         # CLIENT_CONFIG: "Shipping"
 
 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"