From: Scott Baker Date: Fri, 3 Jan 2014 18:45:28 +0000 (-0800) Subject: replace OptionParser with a simpler version to eliminate conflicts with programs... X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=9c9a47f7b733262eb7c37dda1a496e3fb1753ef3;hp=b30aa088e8b27aae6e2b188f22f8bce5983169f3;p=plstackapi.git replace OptionParser with a simpler version to eliminate conflicts with programs that use options (like django evolution) --- diff --git a/planetstack/planetstack/config.py b/planetstack/planetstack/config.py index 86e3bbd..f7d9c9e 100644 --- a/planetstack/planetstack/config.py +++ b/planetstack/planetstack/config.py @@ -7,7 +7,6 @@ import tempfile import codecs from StringIO import StringIO from util.xml import Xml -from optparse import OptionParser default_config = \ """ @@ -36,15 +35,18 @@ class Config: self.load(self.filename) def get_config_fn(self): - parser = OptionParser(usage="%s [options]" % sys.argv[0], - description="The planetstack observer") - - parser.add_option("-C", "--config-file", dest="config_fn", - help="name of observer config file", metavar="FILENAME", default=DEFAULT_CONFIG_FN) - - (options, args) = parser.parse_args(sys.argv[1:]) - - return options.config_fn + # Look for "-C " to get the + # name of the config file. Using a real OptionParser here is + # problematic as it will throw 'no such option' errors for options + # that it does not understand. + + last = None + for arg in sys.argv: + if (last=="-C"): + return arg + last = arg + + return DEFAULT_CONFIG_FN def _header(self): header = """