glance_store.driver module¶
Base class for all storage backends
- 
class 
glance_store.driver.Store(conf, backend=None)¶ Bases:
glance_store.capabilities.StoreCapability- 
MULTI_BACKEND_OPTIONS= [<oslo_config.cfg.StrOpt object>]¶ 
- 
OPTIONS= None¶ 
- 
READ_CHUNKSIZE= 4194304¶ 
- 
WRITE_CHUNKSIZE= 4194304¶ 
- 
add(*args, **kwargs)¶ 
- 
configure(re_raise_bsc=False)¶ Configure the store to use the stored configuration options and initialize capabilities based on current configuration.
Any store that needs special configuration should implement this method.
- 
configure_add()¶ This is like configure except that it’s specifically for configuring the store to accept objects.
If the store was not able to successfully configure itself, it should raise exceptions.BadStoreConfiguration.
- 
delete(*args, **kwargs)¶ 
- 
get(*args, **kwargs)¶ 
- 
get_schemes()¶ Returns a tuple of schemes which this store can handle.
- 
get_size(location, context=None)¶ Takes a glance_store.location.Location object that indicates where to find the image file, and returns the size
- Parameters
 location – glance_store.location.Location object, supplied from glance_store.location.get_location_from_uri()
- Raises
 glance_store.exceptions.NotFound if image does not exist
- 
get_store_location_class()¶ Returns the store location class that is used by this store.
- 
set_acls(location, public=False, read_tenants=None, write_tenants=None, context=None)¶ Sets the read and write access control list for an image in the backend store.
- Parameters
 location – glance_store.location.Location object, supplied from glance_store.location.get_location_from_uri()
public – A boolean indicating whether the image should be public.
read_tenants – A list of tenant strings which should be granted read access for an image.
write_tenants – A list of tenant strings which should be granted write access for an image.
- 
property 
url_prefix¶ 
- 
 
- 
glance_store.driver.back_compat_add(store_add_fun)¶ Provides backward compatibility for the 0.26.0+ Store.add() function. In 0.26.0, the ‘hashing_algo’ parameter is introduced and Store.add() returns a 5-tuple containing a computed ‘multihash’ value.
This wrapper behaves as follows:
If no hashing_algo identifier is supplied as an argument, the response is the pre-0.26.0 4-tuple of:
(backend_url, bytes_written, checksum, metadata_dict)
If a hashing_algo is supplied, the response is a 5-tuple:
(backend_url, bytes_written, checksum, multihash, metadata_dict)
The wrapper detects the presence of a ‘hashing_algo’ argument both by examining named arguments and positionally.