Exemplo n.º 1
0
def remove_test_data(swift, prefix):
    swift_fs = SwiftFileSystem(swift)
    time.sleep(2)
    containers = yield swift_fs.get_account_listing()
    sem = defer.DeferredSemaphore(200)
    for container in containers:
        if container.startswith(prefix):
            while True:
                objs = yield list_all_objects(swift, container)
                dl = []
                for obj in objs:
                    dl.append(sem.run(
                        swift.delete_object, container, obj['name']))
                # Wait till all objects are done deleting
                yield DeferredList(dl, fireOnOneErrback=True)
                try:
                    # Delete the container
                    yield swift.delete_container(container)
                    break
                except Conflict:
                    # Retry listing if there are still objects
                    # (this can happen a lot since the container server isn't
                    # guarenteed to be consistent)
                    pass
Exemplo n.º 2
0
def remove_test_data(swift, prefix):
    swift_fs = SwiftFileSystem(swift)
    time.sleep(2)
    containers = yield swift_fs.get_account_listing()
    sem = defer.DeferredSemaphore(200)
    for container in containers:
        if container.startswith(prefix):
            while True:
                objs = yield list_all_objects(swift, container)
                dl = []
                for obj in objs:
                    dl.append(sem.run(
                        swift.delete_object, container, obj['name']))
                # Wait till all objects are done deleting
                yield DeferredList(dl, fireOnOneErrback=True)
                try:
                    # Delete the container
                    yield swift.delete_container(container)
                    break
                except Conflict:
                    # Retry listing if there are still objects
                    # (this can happen a lot since the container server isn't
                    # guarenteed to be consistent)
                    pass