diff --git a/beat/web/scripts/worker.py b/beat/web/scripts/worker.py
index 2ebb9c71af997da92b508ba2ef8bcc070594819d..1c0bd4d2309af12274115f2ef612116cae07320b 100644
--- a/beat/web/scripts/worker.py
+++ b/beat/web/scripts/worker.py
@@ -120,7 +120,12 @@ def main(user_input=None):
     logger.debug("(path) cpulimit: `%s'", cpulimit)
     process = utils.resolve_process_path()
     logger.debug("(path) process: `%s'", process)
-    environments = utils.find_environments(arguments['--environments'])
+
+    from django.utils import six
+    paths = arguments['--environments']
+    if isinstance(paths, six.string_types):
+        paths = paths.split(os.pathsep)
+    environments = utils.find_environments(paths)
     logger.debug("Environments: %s", ", ".join(environments))
 
     worker = Worker.objects.get(name=arguments['--name'])