diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2012-06-06 14:14:39 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-06-15 15:09:17 +0100 |
commit | 138c2c31e41e3f1803b7efbedf78326d71821468 (patch) | |
tree | bff88c670744b59dc4ff043f8d96960dd2d6ef6d /scripts/pybootchartgui | |
parent | 04a34899e1c15a70babd97a3a59ccb9f8af05bad (diff) | |
download | openembedded-core-138c2c31e41e3f1803b7efbedf78326d71821468.tar.gz openembedded-core-138c2c31e41e3f1803b7efbedf78326d71821468.tar.bz2 openembedded-core-138c2c31e41e3f1803b7efbedf78326d71821468.zip |
pybootchartgui: Fix the filename and add a default format
* Fix teh output filename to make it easy to use
* Add a default output format (svg)
* Fix the usage message
* Fix the version to v1.0.0
Currently, the help messages are:
$ ./pybootchartgui.py --help
Usage: pybootchartgui.py [options] /path/to/tmp/buildstats/<recipe-machine>/<BUILDNAME>/
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-i, --interactive start in active mode
-f FORMAT, --format=FORMAT
image format: svg, pdf, png, [default: svg]
-o PATH, --output=PATH
output path (file or directory) where charts are
stored
-s NUM, --split=NUM split the output chart into <NUM> charts, only works
with "-o PATH"
-n, --no-prune do not prune the process tree
-q, --quiet suppress informational messages
--very-quiet suppress all messages except errors
--verbose print all messages
[YOCTO #2403]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Diffstat (limited to 'scripts/pybootchartgui')
-rw-r--r-- | scripts/pybootchartgui/pybootchartgui/main.py | 33 |
1 files changed, 14 insertions, 19 deletions
diff --git a/scripts/pybootchartgui/pybootchartgui/main.py b/scripts/pybootchartgui/pybootchartgui/main.py index fce8dd35cf..e70ab13661 100644 --- a/scripts/pybootchartgui/pybootchartgui/main.py +++ b/scripts/pybootchartgui/pybootchartgui/main.py @@ -8,13 +8,13 @@ import batch def _mk_options_parser(): """Make an options parser.""" - usage = "%prog [options] PATH, ..., PATH" - version = "%prog v0.0.0" + usage = "%prog [options] /path/to/tmp/buildstats/<recipe-machine>/<BUILDNAME>/" + version = "%prog v1.0.0" parser = optparse.OptionParser(usage, version=version) parser.add_option("-i", "--interactive", action="store_true", dest="interactive", default=False, help="start in active mode") - parser.add_option("-f", "--format", dest="format", default = None, - help="image format (...); default format ...") + parser.add_option("-f", "--format", dest="format", default="svg", choices=["svg", "pdf", "png"], + help="image format: svg, pdf, png, [default: %default]") parser.add_option("-o", "--output", dest="output", metavar="PATH", default=None, help="output path (file or directory) where charts are stored") parser.add_option("-s", "--split", dest="num", type=int, default=1, @@ -29,20 +29,15 @@ def _mk_options_parser(): help="print all messages") return parser -def _get_filename(paths, options): - """Construct a usable filename for outputs based on the paths and options given on the commandline.""" - dir = "" +def _get_filename(path): + """Construct a usable filename for outputs""" + dir = "." file = "bootchart" - if options.output != None and not(os.path.isdir(options.output)): - return options.output - if options.output != None: - dir = options.output - if len(paths) == 1: - if os.path.isdir(paths[0]): - file = os.path.split(paths[0])[-1] - elif os.path.splitext(paths[0])[1] in [".tar", ".tgz", ".tar.gz"]: - file = os.path.splitext(paths[0])[0] - return os.path.join(dir, file + "." + options.format) + if os.path.isdir(path): + dir = path + elif path != None: + file = path + return os.path.join(dir, file) def main(argv=None): try: @@ -57,10 +52,10 @@ def main(argv=None): return 2 res = parsing.parse(args, options.prune) - if options.interactive or options.format == None: + if options.interactive or options.output == None: gui.show(res) else: - filename = _get_filename(args, options) + filename = _get_filename(options.output) res_list = parsing.split_res(res, options.num) n = 1 for r in res_list: |