def get_stats_groups()

in lib/litani_report.py [0:0]


    def get_stats_groups(self, job_filter):
        ret = {}
        for job in jobs_of(self.run):
            if "tags" not in job["wrapper_arguments"]:
                continue
            if not job["wrapper_arguments"]["tags"]:
                continue
            stats_group = None
            for tag in job["wrapper_arguments"]["tags"]:
                kv = tag.split(":")
                if kv[0] != "stats-group":
                    continue
                if len(kv) != 2:
                    logging.warning(
                        "No value for stats-group in job '%s'",
                        job["wrapper_arguments"]["description"])
                    continue
                stats_group = kv[1]
                break

            if not (stats_group and job_filter(job)):
                continue

            try:
                ret[stats_group].append(job)
            except KeyError:
                ret[stats_group] = [job]

        return sorted((k, v) for k, v in ret.items())