diff options
| author | Martin Pitt <martin.pitt@ubuntu.com> | 2016-10-24 11:28:27 +0200 |
|---|---|---|
| committer | Martin Pitt <martin.pitt@ubuntu.com> | 2016-12-12 11:33:44 +0100 |
| commit | 15aab3348ab780cf8b719cee4600d73aca795c36 (patch) | |
| tree | bc3c696130a9c9bd4f39d224ce4c18fc63462da1 | |
| parent | 0d43a204710dd161cd85c60ee884172e7ca0c872 (diff) | |
Store Testsuite-Triggers: list in sources
Compute an inverse trigger → sources map, as that's usually the direction that
britney is interested in.
| -rwxr-xr-x | britney.py | 12 | ||||
| -rw-r--r-- | britney2/__init__.py | 5 | ||||
| -rw-r--r-- | britney2/utils.py | 1 |
3 files changed, 15 insertions, 3 deletions
@@ -297,6 +297,14 @@ class Britney(object): self.binaries['tpu'] = {} self.binaries['pu'] = {} + # compute inverse Testsuite-Triggers: map, unifying all series + self.log('Building inverse testsuite_triggers map') + self.testsuite_triggers = {} + for suitemap in self.sources.values(): + for src, data in suitemap.items(): + for trigger in data.testsuite_triggers: + self.testsuite_triggers.setdefault(trigger, set()).add(src) + self.binaries['unstable'] = self.read_binaries(self.suite_info['unstable'].path, "unstable", self.options.architectures) for suite in ('tpu', 'pu'): if suite in self.suite_info: @@ -576,6 +584,7 @@ class Britney(object): None, True, [], + [], ) self.sources['testing'][pkg_name] = src_data @@ -651,6 +660,7 @@ class Britney(object): None, True, [], + [], ) self.sources['testing'][pkg_name] = src_data self.sources['unstable'][pkg_name] = src_data @@ -852,7 +862,7 @@ class Britney(object): srcdist[source].binaries.append(pkg_id) # if the source package doesn't exist, create a fake one else: - srcdist[source] = SourcePackage(source_version, 'faux', [pkg_id], None, True, []) + srcdist[source] = SourcePackage(source_version, 'faux', [pkg_id], None, True, [], []) # add the resulting dictionary to the package list packages[pkg] = dpkg diff --git a/britney2/__init__.py b/britney2/__init__.py index 5d1b048..f5f25fd 100644 --- a/britney2/__init__.py +++ b/britney2/__init__.py @@ -9,15 +9,16 @@ SuiteInfo = namedtuple('SuiteInfo', [ class SourcePackage(object): - __slots__ = ['version', 'section', 'binaries', 'maintainer', 'is_fakesrc', 'testsuite'] + __slots__ = ['version', 'section', 'binaries', 'maintainer', 'is_fakesrc', 'testsuite', 'testsuite_triggers'] - def __init__(self, version, section, binaries, maintainer, is_fakesrc, testsuite): + def __init__(self, version, section, binaries, maintainer, is_fakesrc, testsuite, testsuite_triggers): self.version = version self.section = section self.binaries = binaries self.maintainer = maintainer self.is_fakesrc = is_fakesrc self.testsuite = testsuite + self.testsuite_triggers = testsuite_triggers def __getitem__(self, item): return getattr(self, self.__slots__[item]) diff --git a/britney2/utils.py b/britney2/utils.py index abdcac6..58265d7 100644 --- a/britney2/utils.py +++ b/britney2/utils.py @@ -739,6 +739,7 @@ def read_sources_file(filename, sources=None, intern=sys.intern): maint, False, get_field('Testsuite', '').split(), + get_field('Testsuite-Triggers', '').replace(',', '').split(), ) return sources |
