mirror of
https://github.com/ceph/s3-tests.git
synced 2025-02-17 05:47:39 +00:00
Use marker when calling list_objects
Previously test_bucket_list_delimiter_not_skip_special failed in nuke_buckets due to not deleting all the keys.
This commit is contained in:
parent
982d15c30e
commit
9d7f8a894d
1 changed files with 20 additions and 8 deletions
|
@ -61,16 +61,28 @@ def get_objects_list(bucket, client=None, prefix=None):
|
|||
if client == None:
|
||||
client = get_client()
|
||||
|
||||
if prefix == None:
|
||||
response = client.list_objects(Bucket=bucket)
|
||||
else:
|
||||
response = client.list_objects(Bucket=bucket, Prefix=prefix)
|
||||
objects_list = []
|
||||
marker = None
|
||||
while True:
|
||||
if prefix == None:
|
||||
if marker == None:
|
||||
response = client.list_objects(Bucket=bucket)
|
||||
else:
|
||||
response = client.list_objects(Bucket=bucket, Marker=marker)
|
||||
else:
|
||||
if marker == None:
|
||||
response = client.list_objects(Bucket=bucket, Prefix=prefix)
|
||||
else:
|
||||
response = client.list_objects(Bucket=bucket, Prefix=prefix, Marker=marker)
|
||||
|
||||
if 'Contents' in response:
|
||||
contents = response['Contents']
|
||||
for obj in contents:
|
||||
objects_list.append(obj['Key'])
|
||||
if 'Contents' in response:
|
||||
contents = response['Contents']
|
||||
for obj in contents:
|
||||
objects_list.append(obj['Key'])
|
||||
|
||||
marker = response.get('NextMarker')
|
||||
if marker == None:
|
||||
break
|
||||
|
||||
return objects_list
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue