X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=mediagoblin%2Finit%2F__init__.py;h=e0711416378cbf4c1e5cf7ceb874297a544bffb3;hb=4a698535bc97b37c8eb42ffea2cc3e7bd48565e6;hp=6eed8ff8292268babe19464b586c2cb3f69916ec;hpb=5ccb16ca20ea55f0dfb16c3e87e65a63b8455e79;p=mediagoblin.git diff --git a/mediagoblin/init/__init__.py b/mediagoblin/init/__init__.py index 6eed8ff8..e0711416 100644 --- a/mediagoblin/init/__init__.py +++ b/mediagoblin/init/__init__.py @@ -58,16 +58,20 @@ def setup_global_and_app_config(config_path): return global_config, app_config -def setup_database(): +def setup_database(run_migrations=False): app_config = mg_globals.app_config + global_config = mg_globals.global_config # Load all models for media types (plugins, ...) load_models(app_config) - # Set up the database - db = setup_connection_and_db_from_config(app_config) - - check_db_migrations_current(db) + db = setup_connection_and_db_from_config(app_config, run_migrations) + if run_migrations: + #Run the migrations to initialize/update the database. + from mediagoblin.gmg_commands.dbupdate import run_all_migrations + run_all_migrations(db, app_config, global_config) + else: + check_db_migrations_current(db) setup_globals(database=db) @@ -119,9 +123,9 @@ def get_staticdirector(app_config): # Let plugins load additional paths for plugin_static in hook_runall("static_setup"): - direct_domains[plugin_static['name']] = "%s/%s" % ( + direct_domains[plugin_static.name] = "%s/%s" % ( app_config['plugin_web_path'].rstrip('/'), - plugin_static['name']) + plugin_static.name) return staticdirect.StaticDirect( direct_domains)