def __init__(self, conf): """ Creates a new WSGI application for the Swift Object Server. An example configuration is given at <source-dir>/etc/object-server.conf-sample or /etc/swift/object-server.conf-sample. """ self.logger = get_logger(conf, log_route='object-server') key_manager = conf.get('crypto_keystore_driver', 'swift.common.key_manager.drivers.dummy.' 'DummyDriver') self.key_manager = create_instance(key_manager, KeyDriver, conf) crypto_driver = conf.get('crypto_driver', 'swift.obj.encryptor.DummyDriver') self.crypto_driver = create_instance(crypto_driver, CryptoDriver, conf, self.key_manager) self.devices = conf.get('devices', '/srv/node/') self.mount_check = config_true_value(conf.get('mount_check', 'true')) self.node_timeout = int(conf.get('node_timeout', 3)) self.conn_timeout = float(conf.get('conn_timeout', 0.5)) self.network_chunk_size = int(conf.get('network_chunk_size', 65536)) self.origin_disk_chunk_size = int(conf.get('disk_chunk_size', 65536)) key_id = self.key_manager.get_key_id('default') encryption_context = self.crypto_driver.encryption_context(key_id) self.disk_chunk_size = self.crypto_driver.encrypted_chunk_size( encryption_context, self.origin_disk_chunk_size) self.keep_cache_size = int(conf.get('keep_cache_size', 5242880)) self.keep_cache_private = \ config_true_value(conf.get('keep_cache_private', 'false')) self.log_requests = config_true_value(conf.get('log_requests', 'true')) self.max_upload_time = int(conf.get('max_upload_time', 86400)) self.slow = int(conf.get('slow', 0)) self.bytes_per_sync = int(conf.get('mb_per_sync', 512)) * 1024 * 1024 default_allowed_headers = ''' content-disposition, content-encoding, x-delete-at, x-object-manifest, x-static-large-object, ''' self.allowed_headers = set( i.strip().lower() for i in conf.get('allowed_headers', default_allowed_headers).split(',') if i.strip() and i.strip().lower() not in DISALLOWED_HEADERS) self.expiring_objects_account = \ (conf.get('auto_create_account_prefix') or '.') + \ 'expiring_objects' self.expiring_objects_container_divisor = \ int(conf.get('expiring_objects_container_divisor') or 86400)
def __init__(self, conf): """ Creates a new WSGI application for the Swift Object Server. An example configuration is given at <source-dir>/etc/object-server.conf-sample or /etc/swift/object-server.conf-sample. """ self.logger = get_logger(conf, log_route='object-server') key_manager = conf.get( 'crypto_keystore_driver', 'swift.common.key_manager.drivers.dummy.' 'DummyDriver') self.key_manager = create_instance(key_manager, KeyDriver, conf) crypto_driver = conf.get('crypto_driver', 'swift.obj.encryptor.DummyDriver') self.crypto_driver = create_instance(crypto_driver, CryptoDriver, conf, self.key_manager) self.devices = conf.get('devices', '/srv/node/') self.mount_check = config_true_value(conf.get('mount_check', 'true')) self.node_timeout = int(conf.get('node_timeout', 3)) self.conn_timeout = float(conf.get('conn_timeout', 0.5)) self.network_chunk_size = int(conf.get('network_chunk_size', 65536)) self.origin_disk_chunk_size = int(conf.get('disk_chunk_size', 65536)) key_id = self.key_manager.get_key_id('default') encryption_context = self.crypto_driver.encryption_context(key_id) self.disk_chunk_size = self.crypto_driver.encrypted_chunk_size( encryption_context, self.origin_disk_chunk_size) self.keep_cache_size = int(conf.get('keep_cache_size', 5242880)) self.keep_cache_private = \ config_true_value(conf.get('keep_cache_private', 'false')) self.log_requests = config_true_value(conf.get('log_requests', 'true')) self.max_upload_time = int(conf.get('max_upload_time', 86400)) self.slow = int(conf.get('slow', 0)) self.bytes_per_sync = int(conf.get('mb_per_sync', 512)) * 1024 * 1024 default_allowed_headers = ''' content-disposition, content-encoding, x-delete-at, x-object-manifest, x-static-large-object, ''' self.allowed_headers = set( i.strip().lower() for i in conf.get( 'allowed_headers', default_allowed_headers).split(',') if i.strip() and i.strip().lower() not in DISALLOWED_HEADERS) self.expiring_objects_account = \ (conf.get('auto_create_account_prefix') or '.') + \ 'expiring_objects' self.expiring_objects_container_divisor = \ int(conf.get('expiring_objects_container_divisor') or 86400)
def migrate(conf, driver): """ Upgrading the schemes of the key store. :param conf: Application configuration. :param driver: Import path of a driver. """ key_manager = create_instance(driver, KeyDriver, conf) key_manager.sync()
def __init__(self, app, conf): """ Standart initialization method for filter factory :param app: WSGI application :param conf: dictionary with configuration variables """ self.app = app self.conf = conf key_manager = conf.get('crypto_keystore_driver', 'swift.common.key_manager.drivers.dummy.' 'DummyDriver') self.key_manager = create_instance(key_manager, KeyDriver, conf)