def get_swift_containers(): for account in _accounts: sclient = openstack_clients.get_swiftclient_st(account['storage.url']) # 1 index has container list containers = sclient.get_account()[1] for container in containers: ctr, obj = sclient.get_container(container['name']) ctr['id'] = account['id'] + ID_SEP + container['name'] ctr['name'] = container['name'] ctr['account'] = account['name'] ctr['account_id'] = account['id'] yield ctr
def get_swift_objects(): for account in _accounts: sclient = openstack_clients.get_swiftclient_st(account['storage.url']) # 1 index has container list containers = sclient.get_account()[1] for sctr in containers: ctr, obj = sclient.get_container(sctr['name']) for sobject in obj: sobj = sclient.head_object(sctr['name'], sobject['name']) sobj['account'] = account['name'] sobj['account_id'] = account['id'] sobj['container'] = sctr['name'] sobj['container_id'] = account['id'] + ID_SEP + sctr['name'] sobj['id'] = sobj['container_id'] + ID_SEP + sobject['name'] sobj['name'] = sobject['name'] yield sobj
def get_swift_accounts(auth_prefix): global AUTH_PREFIX # TODO(lakshmiS): Add support for SERVICE_ accounts AUTH_PREFIX = auth_prefix ks_client = openstack_clients.get_keystoneclient() for tenant in ks_client.tenants.list(): storage_url = _get_storage_url_prefix() + tenant.id sclient = openstack_clients.get_swiftclient_st(storage_url) # 0 index has account summary account = sclient.get_account()[0] account['name'] = tenant.name account['id'] = auth_prefix + tenant.id # store it for later usage in retrieving containers # and objects account_detail = {'id': account['id'], 'name': tenant.name, 'storage.url': storage_url} _accounts.append(account_detail) yield account
def get_swift_accounts(auth_prefix): global AUTH_PREFIX # TODO(lakshmiS): Add support for SERVICE_ accounts AUTH_PREFIX = auth_prefix ks_client = openstack_clients.get_keystoneclient() for tenant in ks_client.tenants.list(): storage_url = _get_storage_url_prefix() + tenant.id sclient = openstack_clients.get_swiftclient_st(storage_url) # 0 index has account summary account = sclient.get_account()[0] account['name'] = tenant.name account['id'] = auth_prefix + tenant.id # store it for later usage in retrieving containers # and objects account_detail = { 'id': account['id'], 'name': tenant.name, 'storage.url': storage_url } _accounts.append(account_detail) yield account