def run_migrations_offline():
<EOL>engines = {<EOL>'<STR_LIT>': {<EOL>'<STR_LIT:url>': context.config.get_main_option('<STR_LIT>')<EOL>}<EOL>}<EOL>for name in bind_names:<EOL><INDENT>engines[name] = rec = {}<EOL>rec['<STR_LIT:url>'] = context.config.get_section_option(name, "<STR_LIT>")<EOL><DEDENT>for name, rec in engines.items():<EOL><INDENT>logger.info("<STR_LIT>" % (name or '<STR_LIT>'))<EOL>file_ = "<STR_LIT>" % name<EOL>logger.info("<STR_LIT>" % file_)<EOL>with open(file_, '<STR_LIT:w>') as buffer:<EOL><INDENT>context.configure(<EOL>url=rec['<STR_LIT:url>'],<EOL>output_buffer=buffer,<EOL>target_metadata=get_metadata(name),<EOL>literal_binds=True,<EOL>)<EOL>with context.begin_transaction():<EOL><INDENT>context.run_migrations(engine_name=name)<EOL><DEDENT><DEDENT><DEDENT>
Run migrations in 'offline' mode.

    This configures the context with just a URL
    and not an Engine, though an Engine is acceptable
    here as well.  By skipping the Engine creation
    we don't even need a DBAPI to be available.

    Calls to context.execute() here emit the given string to the
    script output.