From 06dae2a73ae03ea72feed4e7d6e56d25cfa24195 Mon Sep 17 00:00:00 2001 From: "Chris St. Pierre" Date: Mon, 3 Jun 2013 10:56:26 -0400 Subject: Revert "bcfg2-admin: set appropriate return values on error" This reverts commit dae8f399151052fd2a0ce43ac61a56f399a28252. Splitting this into two commits. --- src/lib/Bcfg2/Server/Admin/Reports.py | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) (limited to 'src/lib/Bcfg2/Server/Admin/Reports.py') diff --git a/src/lib/Bcfg2/Server/Admin/Reports.py b/src/lib/Bcfg2/Server/Admin/Reports.py index 849df8025..6e313e84b 100644 --- a/src/lib/Bcfg2/Server/Admin/Reports.py +++ b/src/lib/Bcfg2/Server/Admin/Reports.py @@ -79,7 +79,8 @@ class Reports(Bcfg2.Server.Admin.Mode): def __call__(self, args): if len(args) == 0 or args[0] == '-h': - self.errExit(self.__usage__) + print(self.__usage__) + raise SystemExit(0) # FIXME - dry run @@ -100,7 +101,9 @@ class Reports(Bcfg2.Server.Admin.Mode): management.call_command("syncdb", verbosity=vrb) management.call_command("migrate", verbosity=vrb) except: - self.errExit("Update failed: %s" % sys.exc_info()[1]) + print("Update failed: %s" % + traceback.format_exc().splitlines()[-1]) + raise SystemExit(1) elif args[0] == 'purge': expired = False client = None @@ -121,20 +124,22 @@ class Reports(Bcfg2.Server.Admin.Mode): maxdate = datetime.datetime.now() - \ datetime.timedelta(days=int(args[i + 1])) except: - self.errExit("Invalid number of days: %s" % - args[i + 1]) + self.log.error("Invalid number of days: %s" % + args[i + 1]) + raise SystemExit(-1) i = i + 1 elif args[i] == '--expired': expired = True i = i + 1 if expired: if state: - self.errExit("--state is not valid with --expired") + self.log.error("--state is not valid with --expired") + raise SystemExit(-1) self.purge_expired(maxdate) else: self.purge(client, maxdate, state) else: - self.errExit("Unknown command: %s" % args[0]) + print("Unknown command: %s" % args[0]) @transaction.commit_on_success def scrub(self): @@ -150,7 +155,8 @@ class Reports(Bcfg2.Server.Admin.Mode): (start_count - cls.objects.count(), cls.__class__.__name__)) except: print("Failed to prune %s: %s" % - (cls.__class__.__name__, sys.exc_info()[1])) + (cls.__class__.__name__, + traceback.format_exc().splitlines()[-1])) def django_command_proxy(self, command): '''Call a django command''' @@ -174,7 +180,8 @@ class Reports(Bcfg2.Server.Admin.Mode): cobj = Client.objects.get(name=client) ipurge = ipurge.filter(client=cobj) except Client.DoesNotExist: - self.errExit("Client %s not in database" % client) + self.log.error("Client %s not in database" % client) + raise SystemExit(-1) self.log.debug("Filtering by client: %s" % client) if maxdate: -- cgit v1.2.3-1-g7c22