diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 7d492f4f0909d52a53c7570abd73e1c4adb0548d..719885c8a199be4c904f1c3a2a33199b72a59a12 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -11,6 +11,9 @@ prepare_dirs:
       - reposync/gpgkeys/
       - reposync/prod.repos.d/
     expire_in: 1 day
+  rules:
+    - if: $CI_PIPELINE_SOURCE == "schedule"
+      when: never
 
 generate_jobs:
   stage: prepare
@@ -23,6 +26,9 @@ generate_jobs:
     paths:
       - '*.nomad'
     expire_in: 1 day
+  rules:
+    - if: $CI_PIPELINE_SOURCE == "schedule"
+      when: never
 
 sanity_check:
   stage: prepare
@@ -42,6 +48,9 @@ build_reposync:
     TO: $CI_REGISTRY_IMAGE/reposync
     PARENT_PIPELINE_ID: ${CI_PIPELINE_ID}
     ARTIFACT_JOB: prepare_dirs
+  rules:
+    - if: $CI_PIPELINE_SOURCE == "schedule"
+      when: never
 
 stop_deleted:
   extends: .nomad
@@ -56,3 +65,6 @@ stop_deleted:
         echo -e "\nDeleting job ${JOB}:"
         nomad job stop -verbose ${JOB} || true
       done
+  rules:
+    - if: $CI_PIPELINE_SOURCE == "schedule"
+      when: never