diff --git a/reposync_scheduler.nomad b/reposync_scheduler.nomad
index 4fa8d0a47eb9ae1c68ebfd9d197195ffe441eed5..60d0cf9433a9f3b4c4eedc8f27849d9b78c2b7b5 100644
--- a/reposync_scheduler.nomad
+++ b/reposync_scheduler.nomad
@@ -10,6 +10,9 @@ job "reposync_scheduler" {
     prohibit_overlap = true
   }
 
+  parameterized {
+    meta_optional = ["repoid"]
+  }
 
   task "reposync_scheduler" {
     driver = "docker"
diff --git a/scheduler/schedule.py b/scheduler/schedule.py
index 7e0de5c70986d0ce820a41e831077dece0393e20..dd806be0fe55cbeb297db28cd8971d531739be05 100755
--- a/scheduler/schedule.py
+++ b/scheduler/schedule.py
@@ -15,6 +15,7 @@ CONFIG = '/root/repos.yaml'
 REPOPATH = '/etc/yum.repos.d/'
 JOBNAME = 'reposync'
 STATUS_CHECK_SECS = 5
+REPOID = os.getenv('NOMAD_META_REPOID', None)
 
 def log(**kwargs):
     kwargs.update({
@@ -68,6 +69,10 @@ for repofile in os.listdir(REPOPATH):
         continue
 
     for rid in config.sections():
+        # If we've been called as a parametrized job, only launch the job we've been asked for
+        if REPOID and rid != REPOID:
+            continue
+
         try:
             PATHROOT = repoconf[repofile]['pathroot']
         except KeyError: