def __init__(self, application, conf=None):
        self.application = application

        # NOTE(sileht): If the configuration come from oslo.config
        # just use it.
        if isinstance(conf, cfg.ConfigOpts):
            self.conf = {}
            self.oslo_conf = conf
        else:
            self.conf = conf or {}
            if "oslo_config_project" in self.conf:
                if 'oslo_config_file' in self.conf:
                    default_config_files = [self.conf['oslo_config_file']]
                else:
                    default_config_files = None

                if 'oslo_config_program' in self.conf:
                    program = self.conf['oslo_config_program']
                else:
                    program = None

                self.oslo_conf = cfg.ConfigOpts()
                self.oslo_conf([],
                               project=self.conf['oslo_config_project'],
                               prog=program,
                               default_config_files=default_config_files,
                               validate_default_values=True)

            else:
                # Fallback to global object
                self.oslo_conf = cfg.CONF
- filename: the name of the script to run.  Will be logged to tracking table if needed.
dataset/ETHPy150Open openstack/oslo.middleware/oslo_middleware/base.py/ConfigurableMiddleware.__init__--crossover with--dataset/ETHPy150Open jzohrab/DbMigrator/dbMigrator/migrator.py/ScriptRunner.add_script