Create "gmg convert_mongo_to_sql" command
Finally, to make testing of sql a bit easier, create a bin/gmg command to do the conversion from mongo to sql. It's currently named "convert_mongo_to_sql". The most important option is the gmg -cf option to give a configfile with the appropiate sql_engine definition.
This commit is contained in:
parent
1582181701
commit
9891351256
@ -145,8 +145,8 @@ def convert_media_comments(mk_db):
|
||||
session.close()
|
||||
|
||||
|
||||
def main():
|
||||
global_config, app_config = setup_global_and_app_config("mediagoblin.ini")
|
||||
def run_conversion(config_name):
|
||||
global_config, app_config = setup_global_and_app_config(config_name)
|
||||
|
||||
sql_conn, sql_db = sql_connect(app_config)
|
||||
mk_conn, mk_db = mongo_connect(app_config)
|
||||
@ -164,4 +164,4 @@ def main():
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
run_conversion("mediagoblin.ini")
|
||||
|
@ -57,6 +57,10 @@ SUBCOMMAND_MAP = {
|
||||
'setup': 'mediagoblin.gmg_commands.dbupdate:dbupdate_parse_setup',
|
||||
'func': 'mediagoblin.gmg_commands.dbupdate:dbupdate',
|
||||
'help': 'Set up or update the SQL database'},
|
||||
'convert_mongo_to_sql': {
|
||||
'setup': 'mediagoblin.gmg_commands.mongosql:mongosql_parser_setup',
|
||||
'func': 'mediagoblin.gmg_commands.mongosql:mongosql',
|
||||
'help': 'Convert Mongo DB data to SQL DB data'},
|
||||
}
|
||||
|
||||
|
||||
|
25
mediagoblin/gmg_commands/mongosql.py
Normal file
25
mediagoblin/gmg_commands/mongosql.py
Normal file
@ -0,0 +1,25 @@
|
||||
# GNU MediaGoblin -- federated, autonomous media hosting
|
||||
# Copyright (C) 2012 MediaGoblin contributors. See AUTHORS.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from mediagoblin.db.sql.convert import run_conversion
|
||||
|
||||
|
||||
def mongosql_parser_setup(subparser):
|
||||
pass
|
||||
|
||||
|
||||
def mongosql(args):
|
||||
run_conversion(args.conf_file)
|
Loading…
x
Reference in New Issue
Block a user