diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 040842b8614e46fb8f546790ecaf0a759dcce98c..c4b6e3b65d477122b60f5519c99edd5ac1d69a96 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -205,7 +205,7 @@ publish-seco-intel-b68:
   rules:
     - if: '$CI_SQUAD_TOKEN == null'
       when: never
-    - if: '$CI_PIPELINE_SOURCE == "schedule"'
+    - if: $CI_PIPELINE_SOURCE == "schedule" && $SCHEDULED_TYPE == "daily"
 
 ##
 ## Submit jobs to LAVA
@@ -602,7 +602,7 @@ build-npm-cspell:
 
 .oe-selftest-rules:
   rules:
-    - if: $CI_PIPELINE_SOURCE == "schedule" && $OE_SELFTEST == "gcc"
+    - if: $CI_PIPELINE_SOURCE == "schedule" && $SCHEDULED_TYPE == "weekly"
 
 oe-selftest-gcc-qemu-linux-user:
   extends: [.oe-selftest, .oe-selftest-rules]
diff --git a/.oniro-ci/test-generic.yaml b/.oniro-ci/test-generic.yaml
index 3f93cf65e7074142263f68c8be2090b1d22dce20..a09cb50d6d17de99aface42514be3667047b9abc 100644
--- a/.oniro-ci/test-generic.yaml
+++ b/.oniro-ci/test-generic.yaml
@@ -100,7 +100,7 @@
     - if: '$CI_SQUAD_TOKEN == null'
       when: never
     # Run the build when it is scheduled.
-    - if: $CI_PIPELINE_SOURCE == "schedule"
+    - if: $CI_PIPELINE_SOURCE == "schedule" && $SCHEDULED_TYPE == "daily"
     # Do not run pipelines for draft merge requests unless manually triggered.
     - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TITLE =~ /^(wip|draft):.*/i'
       when: manual
@@ -136,7 +136,7 @@
     - if: '$CI_SQUAD_TOKEN == null'
       when: never
     # Run the build when it is scheduled.
-    - if: $CI_PIPELINE_SOURCE == "schedule"
+    - if: $CI_PIPELINE_SOURCE == "schedule" && $SCHEDULED_TYPE == "daily"
       when: manual
     # Do not run pipelines for draft merge requests unless manually triggered.
     - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TITLE =~ /^(wip|draft):.*/i'
@@ -176,7 +176,7 @@
       - lava-test.svg
   rules:
     # Run the build when it is scheduled.
-    - if: $CI_PIPELINE_SOURCE == "schedule"
+    - if: $CI_PIPELINE_SOURCE == "schedule" && $SCHEDULED_TYPE == "daily"
     # Do not run pipelines for draft merge requests unless manually triggered.
     - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TITLE =~ /^(wip|draft):.*/i'
       when: manual