From df5e8d496e9bb99fcfbdebea8ae06d1193b6b61d Mon Sep 17 00:00:00 2001 From: Romain Vrignaud Date: Tue, 12 Aug 2014 11:37:13 +0200 Subject: [PATCH] Fixes #14 : list_directory always return empty list --- docker_registry/drivers/swift.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/docker_registry/drivers/swift.py b/docker_registry/drivers/swift.py index 066bb11..bfbcda1 100644 --- a/docker_registry/drivers/swift.py +++ b/docker_registry/drivers/swift.py @@ -94,17 +94,18 @@ def list_directory(self, path=None): path += '/' _, directory = self._swift_connection.get_container( container=self._swift_container, - path=path) + prefix=path, + delimiter='/') if not directory: raise for inode in directory: # trim extra trailing slashes - if inode['name'].endswith('/'): - inode['name'] = inode['name'][:-1] + if inode['subdir'].endswith('/'): + inode['subdir'] = inode['subdir'][:-1] if self._root_path != '/': - inode['name'] = inode['name'].replace( + inode['subdir'] = inode['subdir'].replace( self._init_path() + '/', '', 1) - yield inode['name'] + yield inode['subdir'] except Exception: raise exceptions.FileNotFoundError('%s is not there' % path)