Support reloading the buildbot config.
diff --git a/buildbot/osuosl/master/config/__init__.py b/buildbot/osuosl/master/config/__init__.py
index 767c9b5..5efd421 100644
--- a/buildbot/osuosl/master/config/__init__.py
+++ b/buildbot/osuosl/master/config/__init__.py
@@ -1,5 +1,7 @@
# Load local options.
import os
+from importlib import reload
+
from configparser import ConfigParser
options = ConfigParser(
interpolation=None,
@@ -13,3 +15,11 @@
import config.schedulers
import config.workers
import config.status
+
+# Note: The following modules should be reloaded in
+# a particular order to follow the dependency chain.
+reload(config.auth)
+reload(config.workers)
+reload(config.schedulers)
+reload(config.builders)
+reload(config.status)
diff --git a/buildbot/osuosl/master/master.cfg b/buildbot/osuosl/master/master.cfg
index 0fbf754..fe0571b 100644
--- a/buildbot/osuosl/master/master.cfg
+++ b/buildbot/osuosl/master/master.cfg
@@ -1,5 +1,6 @@
# -*- python -*-
# ex: set syntax=python:
+from importlib import reload
# Extend paths to allow loading zorg and config modules.
import os, sys
@@ -23,15 +24,7 @@
c['buildbotNetUsageData'] = None
import config
-
-## TODO: Figure out what to do with the reloading.
-# Reload stuff automatically.
-#
-# FIXME: Find better way.
-#reload(config.workers)
-#reload(config.builders)
-#reload(config.status)
-#reload(config)
+reload(config)
####### Workers