diff --git a/zuul/scheduler.py b/zuul/scheduler.py
index 0183483..5a2a813 100644
--- a/zuul/scheduler.py
+++ b/zuul/scheduler.py
@@ -665,7 +665,10 @@
                    "with the current state of the repository. Please "\
                    "rebase your change and upload a new patchset."
         else:
-            pattern = self.sched.config.get('zuul', 'url_pattern')
+            if self.sched.config.has_option('zuul', 'url_pattern'):
+                pattern = self.sched.config.get('zuul', 'url_pattern')
+            else:
+                pattern = None
             for job in self.pipeline.getJobs(changeish):
                 build = changeish.current_build_set.getBuild(job.name)
                 result = build.result
