def run_migrations_online(): """Run migrations in 'online' mode. In this scenario we need to create an Engine and associate a connection with the context. """ connectable, _ = get_db_engine(settings) with connectable.connect() as connection: context.configure( connection=connection, target_metadata=target_metadata, compare_server_default=True, compare_type=True, ) with context.begin_transaction(): context.run_migrations()
def ingest_object(db_session, obj): """Ingest a Stripe object.""" try: ingest_stripe_object(db_session, obj) except StripeIngestUnknownObjectError: logger.info("Skipping %s %s", obj["object"], obj["id"]) else: logger.info("Ingested %s %s", obj["object"], obj["id"]) db_session.commit() def get_parser(): the_parser = argparse.ArgumentParser( description="Load Stripe data from JSON") the_parser.add_argument("filenames", metavar="data.json", nargs="+", help="Stripe data to load") return the_parser if __name__ == "__main__": config_settings = config.Settings() engine, session_factory = get_db_engine(config_settings) session = session_factory() parser = get_parser() args = parser.parse_args() logging.basicConfig(level=logging.INFO) main(session, args.filenames)
canonical_mapping, skip_writes, )) inputs.amo = chain(*amos) inputs.emails = chain(*emails) inputs.fxa = chain(*fxas) inputs.newsletters = chain(*newsletters) inputs.vpn_waitlist = chain(*vpn_waitlists) try: inputs.finalize() except BaseException as e: # pylint:disable = W0703 print(e) return 1 ingester = Ingester(inputs, db, args.batch_size, total_inputs=total) ingester.run() return 0 if __name__ == "__main__": # Get the database config_settings = config.Settings() engine, _ = get_db_engine(config_settings) with engine.connect() as connection: ret = main(connection, config_settings) # pylint:disable = C0103 sys.exit(ret)