diff options
Diffstat (limited to 'mediagoblin/gmg_commands')
-rw-r--r-- | mediagoblin/gmg_commands/__init__.py | 20 | ||||
-rw-r--r-- | mediagoblin/gmg_commands/import_export.py | 3 | ||||
-rw-r--r-- | mediagoblin/gmg_commands/migrate.py | 4 | ||||
-rw-r--r-- | mediagoblin/gmg_commands/shell.py | 4 | ||||
-rw-r--r-- | mediagoblin/gmg_commands/users.py | 9 | ||||
-rw-r--r-- | mediagoblin/gmg_commands/wipealldata.py | 6 |
6 files changed, 24 insertions, 22 deletions
diff --git a/mediagoblin/gmg_commands/__init__.py b/mediagoblin/gmg_commands/__init__.py index 3250c246..04187ff2 100644 --- a/mediagoblin/gmg_commands/__init__.py +++ b/mediagoblin/gmg_commands/__init__.py @@ -15,8 +15,9 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. import argparse +import os -from mediagoblin import util as mg_util +from mediagoblin.tools.common import import_component SUBCOMMAND_MAP = { @@ -58,6 +59,12 @@ SUBCOMMAND_MAP = { def main_cli(): parser = argparse.ArgumentParser( description='GNU MediaGoblin utilities.') + parser.add_argument( + '-cf', '--conf_file', default=None, + help=( + "Config file used to set up environment. " + "Default to mediagoblin_local.ini if readable, " + "otherwise mediagoblin.ini")) subparsers = parser.add_subparsers(help='sub-command help') for command_name, command_struct in SUBCOMMAND_MAP.iteritems(): @@ -67,14 +74,21 @@ def main_cli(): else: subparser = subparsers.add_parser(command_name) - setup_func = mg_util.import_component(command_struct['setup']) - exec_func = mg_util.import_component(command_struct['func']) + setup_func = import_component(command_struct['setup']) + exec_func = import_component(command_struct['func']) setup_func(subparser) subparser.set_defaults(func=exec_func) args = parser.parse_args() + if args.conf_file is None: + if os.path.exists('mediagoblin_local.ini') \ + and os.access('mediagoblin_local.ini', os.R_OK): + args.conf_file = 'mediagoblin_local.ini' + else: + args.conf_file = 'mediagoblin.ini' + args.func(args) diff --git a/mediagoblin/gmg_commands/import_export.py b/mediagoblin/gmg_commands/import_export.py index 962e545c..a46219a0 100644 --- a/mediagoblin/gmg_commands/import_export.py +++ b/mediagoblin/gmg_commands/import_export.py @@ -40,9 +40,6 @@ def import_export_parse_setup(subparser): subparser.add_argument( 'tar_file') subparser.add_argument( - '-cf', '--conf_file', default='mediagoblin.ini', - help='Config file used to set up environment') - subparser.add_argument( '--mongodump_path', default='mongodump', help='mongodump binary') subparser.add_argument( diff --git a/mediagoblin/gmg_commands/migrate.py b/mediagoblin/gmg_commands/migrate.py index e6dd6f78..beea109d 100644 --- a/mediagoblin/gmg_commands/migrate.py +++ b/mediagoblin/gmg_commands/migrate.py @@ -25,9 +25,7 @@ from mediagoblin.db import migrations def migrate_parser_setup(subparser): - subparser.add_argument( - '-cf', '--conf_file', default='mediagoblin.ini', - help="Config file used to set up environment") + pass def _print_started_migration(migration_number, migration_func): diff --git a/mediagoblin/gmg_commands/shell.py b/mediagoblin/gmg_commands/shell.py index 2a380c7b..910560a0 100644 --- a/mediagoblin/gmg_commands/shell.py +++ b/mediagoblin/gmg_commands/shell.py @@ -22,9 +22,7 @@ from mediagoblin.gmg_commands import util as commands_util def shell_parser_setup(subparser): - subparser.add_argument( - '-cf', '--conf_file', default='mediagoblin.ini', - help="Config file used to set up environment") + pass SHELL_BANNER = """\ diff --git a/mediagoblin/gmg_commands/users.py b/mediagoblin/gmg_commands/users.py index 3fda0e32..4c4b0c1b 100644 --- a/mediagoblin/gmg_commands/users.py +++ b/mediagoblin/gmg_commands/users.py @@ -29,9 +29,6 @@ def adduser_parser_setup(subparser): subparser.add_argument( 'email', help="Email to recieve notifications") - subparser.add_argument( - '-cf', '--conf_file', default='mediagoblin.ini', - help="Config file used to set up environment") def adduser(args): @@ -64,9 +61,6 @@ def makeadmin_parser_setup(subparser): subparser.add_argument( 'username', help="Username to give admin level") - subparser.add_argument( - '-cf', '--conf_file', default='mediagoblin.ini', - help="Config file used to set up environment") def makeadmin(args): @@ -90,9 +84,6 @@ def changepw_parser_setup(subparser): subparser.add_argument( 'password', help="Your NEW supersecret word to login") - subparser.add_argument( - '-cf', '--conf_file', default='mediagoblin.ini', - help="Config file used to set up environment") def changepw(args): diff --git a/mediagoblin/gmg_commands/wipealldata.py b/mediagoblin/gmg_commands/wipealldata.py index dc5d6cf7..cddbab38 100644 --- a/mediagoblin/gmg_commands/wipealldata.py +++ b/mediagoblin/gmg_commands/wipealldata.py @@ -30,6 +30,10 @@ def wipe(args): print "" print "Running this will destroy your mediagoblin database," print "remove all your media files in user_dev/, etc." + print "" + print "ALSO: This command is currently a hack and will only remove" + print " things properly on the default setup! If you've customized" + print " your mediagoblin configs, it won't work (for now)." drop_it = raw_input( 'Are you **SURE** you want to destroy your environment? ' @@ -48,4 +52,4 @@ def wipe(args): print "nixing %s...." % directory shutil.rmtree(directory) - print "removed all your stuff! okay, now re-run ./bin/buildout" + print "removed all your stuff!" |