From 0d847ba2a3e63f00661ffcb31b8b85a7a180e386 Mon Sep 17 00:00:00 2001 From: Alexandre Iooss <erdnaxe@crans.org> Date: Sun, 12 Apr 2020 13:46:42 +0200 Subject: [PATCH] Use logger for all errors --- client.py | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/client.py b/client.py index efe3015..5578328 100755 --- a/client.py +++ b/client.py @@ -48,7 +48,7 @@ except ImportError: if envspecified is None: if ducktape_display_error: log.error("Va lire le fichier README.") - sys.exit(1) + exit(1) else: # On a spécifié à la main le dossier de conf try: @@ -56,8 +56,8 @@ except ImportError: import clientconfig as config except ImportError: if ducktape_display_error: - sys.stderr.write(u"%s est spécifiée, mais aucune config pour le client ne peut être importée." % (envvar)) - sys.exit(1) + log.error("%s is passed, but no config could be imported" % envvar) + exit(1) #: Pattern utilisé pour détecter la ligne contenant le mot de passe dans les fichiers pass_regexp = re.compile('[\t ]*pass(?:word)?[\t ]*:[\t ]*(.*)\r?\n?$', @@ -899,7 +899,7 @@ def recrypt_files(options, strict=False): filenames = ", ".join(askfiles) message = u"Vous vous apprêtez à rechiffrer les fichiers suivants :\n%s" % filenames if not confirm(options, message + u"\nConfirmer"): - sys.exit(2) + exit(2) # On rechiffre to_put = [{'filename' : f['filename'], 'roles' : f['roles'], @@ -942,24 +942,21 @@ def parse_roles(options, cast=False): ret = set() for role in strroles.split(','): if role not in allroles.keys(): - if not options.quiet: - print((u"Le rôle %s n'existe pas !" % role).encode("utf-8")) - sys.exit(1) + log.warn("role %s do not exists" % role) + exit(1) if role.endswith('-w'): - if not options.quiet: - print((u"Le rôle %s ne devrait pas être utilisé ! (utilisez %s)") - % (role, role[:-2])).encode("utf-8") - sys.exit(1) + log.warn("role %s should not be used, rather use %s" % (role, role[:-2])) + exit(1) ret.add(role) return list(ret) def insult_on_nofilename(options, parser): """Insulte (si non quiet) et quitte si aucun nom de fichier n'a été fourni en commandline.""" if options.fname == None: + log.warn("You need to provide a filename with this command") if not options.quiet: - print(u"Vous devez fournir un nom de fichier avec cette commande".encode("utf-8")) parser.print_help() - sys.exit(1) + exit(1) if __name__ == "__main__": # Gestion des arguments @@ -1055,7 +1052,7 @@ if __name__ == "__main__": logging.addLevelName(logging.DEBUG, "\033[1;37mDEBUG\033[1;0m") logging.basicConfig( level=options.verbose, - format='\033[1;90m%(asctime)s\033[1;0m %(name)s %(levelname)s %(message)s' + format='\033[90m%(asctime)s\033[1;0m %(name)s %(levelname)s %(message)s' ) ## On calcule les options qui dépendent des autres. -- GitLab