diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2015-12-22 17:02:54 +1300 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-12-28 09:25:12 +0000 |
commit | 8e0a84c90175cc2fedff0272abda073ee270b876 (patch) | |
tree | cc5e7a7778ffe12e0376cb7c06f1c1d69b79dfe9 /scripts/lib | |
parent | 548d4332e827cc9ae13fd57517a42fa0f139880f (diff) | |
download | poky-8e0a84c90175cc2fedff0272abda073ee270b876.tar.gz |
scripts: print usage in argparse-using scripts when a command-line error occurs
For scripts that use Python's standard argparse module to parse
command-line arguments, create a subclass which will show the usage
the usage information when a command-line parsing error occurs. The most
common case would be when the script is run with no arguments; at least
then the user immediately gets to see what arguments they might need to
pass instead of just an error message.
(From OE-Core rev: d62fe7c9bc2df6a4464440a3cae0539074bf99aa)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/lib')
-rw-r--r-- | scripts/lib/argparse_oe.py | 11 | ||||
-rw-r--r-- | scripts/lib/scriptutils.py | 1 |
2 files changed, 12 insertions, 0 deletions
diff --git a/scripts/lib/argparse_oe.py b/scripts/lib/argparse_oe.py new file mode 100644 index 0000000000..c2fee6de05 --- /dev/null +++ b/scripts/lib/argparse_oe.py | |||
@@ -0,0 +1,11 @@ | |||
1 | import sys | ||
2 | import argparse | ||
3 | |||
4 | class ArgumentParser(argparse.ArgumentParser): | ||
5 | """Our own version of argparse's ArgumentParser""" | ||
6 | |||
7 | def error(self, message): | ||
8 | sys.stderr.write('ERROR: %s\n' % message) | ||
9 | self.print_help() | ||
10 | sys.exit(2) | ||
11 | |||
diff --git a/scripts/lib/scriptutils.py b/scripts/lib/scriptutils.py index 3366882635..4dd7ef2a0d 100644 --- a/scripts/lib/scriptutils.py +++ b/scripts/lib/scriptutils.py | |||
@@ -19,6 +19,7 @@ import sys | |||
19 | import os | 19 | import os |
20 | import logging | 20 | import logging |
21 | import glob | 21 | import glob |
22 | import argparse | ||
22 | 23 | ||
23 | def logger_create(name): | 24 | def logger_create(name): |
24 | logger = logging.getLogger(name) | 25 | logger = logging.getLogger(name) |