| 38 | |
| 39 | |
| 40 | def init_database(app): |
| 41 | if args.db_type == 'mysql': |
| 42 | log.info('Connecting to MySQL database on %s:%i', args.db_host, args.db_port) |
| 43 | connections = args.db_max_connections |
| 44 | if hasattr(args, 'accounts'): |
| 45 | connections *= len(args.accounts) |
| 46 | db = MyRetryDB( |
| 47 | args.db_name, |
| 48 | user=args.db_user, |
| 49 | password=args.db_pass, |
| 50 | host=args.db_host, |
| 51 | port=args.db_port, |
| 52 | max_connections=connections, |
| 53 | stale_timeout=300) |
| 54 | else: |
| 55 | log.info('Connecting to local SQLite database') |
| 56 | db = SqliteDatabase(args.db) |
| 57 | |
| 58 | app.config['DATABASE'] = db |
| 59 | flaskDb.init_app(app) |
| 60 | |
| 61 | return db |
| 62 | |
| 63 | |
| 64 | class BaseModel(flaskDb.Model): |