diff --git a/service_configuration_lib/__init__.py b/service_configuration_lib/__init__.py
index <HASH>..<HASH> 100644
--- a/service_configuration_lib/__init__.py
+++ b/service_configuration_lib/__init__.py
@@ -84,11 +84,11 @@ def read_services_configuration(soa_dir=DEFAULT_SOA_DIR):
     # Not all services have all fields. Who knows what might be in there
     # You can't depend on every service having a vip, for example
     all_services = {}
-    for rootdir, dirs, _ in os.walk(soa_dir):
-        for service_dirname in dirs:
-            service_name = service_dirname
-            service_info = read_service_configuration_from_dir(rootdir, service_dirname)
-            all_services.update( { service_name: service_info } )
+    rootdir = os.path.abspath(soa_dir)
+    for service_dirname in os.listdir(rootdir):
+        service_name = service_dirname
+        service_info = read_service_configuration_from_dir(rootdir, service_dirname)
+        all_services.update( { service_name: service_info } )
     return all_services
 
 def services_that_run_here():
cleaning up read_services_configuration a bit