Slightly improve error handling

* Fix: Do not swallow traces when crashing before log init (e.g.
  during argument parsing)
* Show a link to the troubleshooting page, when an error happens
* (Formatting done by autopep8 in pmb/config/init.py)
This commit is contained in:
Oliver Smith 2017-06-27 00:23:21 +02:00
parent 060e5a5876
commit fcc5501a44
No known key found for this signature in database
GPG Key ID: 5AE7F5513E0885CB
2 changed files with 8 additions and 5 deletions

View File

@ -40,11 +40,12 @@ import pmb.install
def main():
try:
# Parse arguments
# Parse arguments, set up logging
args = pmb.parse.arguments()
pmb.helpers.logging.init(args)
# Wrap everything to display nice error messages
try:
# Initialize or require config
if args.action == "init":
return pmb.config.init(args)
@ -102,6 +103,8 @@ def main():
except Exception as e:
logging.info("ERROR: " + str(e))
logging.info("Run 'pmbootstrap log' for details.")
logging.info(
"See also: https://github.com/postmarketOS/pmbootstrap/wiki/Troubleshooting")
logging.debug(traceback.format_exc())
return 1