From 8745fcbf2b05bbff52ef79627a03d27ef1132f93 Mon Sep 17 00:00:00 2001 From: Alexander Sulfrian Date: Sat, 9 May 2015 15:25:46 +0200 Subject: Reporting: Add dry_run and only_important flags Save the status of --dry-run and --only-important in the statistics, so that the reports could be filtered to only respect "normal" runs. --- src/lib/Bcfg2/Reporting/Storage/DjangoORM.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/lib/Bcfg2/Reporting/Storage/DjangoORM.py') diff --git a/src/lib/Bcfg2/Reporting/Storage/DjangoORM.py b/src/lib/Bcfg2/Reporting/Storage/DjangoORM.py index efd9e594c..c9aa169bf 100644 --- a/src/lib/Bcfg2/Reporting/Storage/DjangoORM.py +++ b/src/lib/Bcfg2/Reporting/Storage/DjangoORM.py @@ -284,6 +284,14 @@ class DjangoORM(StorageBase): Group.objects.get_or_create(name=metadata['profile']) else: profile = None + + flags = {'dry_run': False, 'only_important': False} + for flag in stats.findall('./Flags/Flag'): + value = flag.get('value', default='false').lower() == 'true' + name = flag.get('name') + if name in flags: + flags[name] = value + inter = Interaction(client=client, timestamp=timestamp, state=stats.get('state', default="unknown"), @@ -292,7 +300,8 @@ class DjangoORM(StorageBase): good_count=stats.get('good', default="0"), total_count=stats.get('total', default="0"), server=server, - profile=profile) + profile=profile, + **flags) inter.save() self.logger.debug("Interaction for %s at %s with INSERTED in to db" % (client.id, timestamp)) -- cgit v1.2.3-1-g7c22