use repository-settings to get a default list of repo names

For deliverables without any releases, look at the keys of the
repository-settings section to find repository names. For now we
combine the results with the list of repos associated with actual
tagged releases because most of our older files do not have
repository-settings sections, yet.

Change-Id: Icb38e0b16a6a27655e320b094db03728011d5538
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
This commit is contained in:
Doug Hellmann 2018-02-02 15:37:23 -05:00
parent 43531c135d
commit 64083f0718

View File

@ -208,10 +208,16 @@ class Deliverable(object):
self.series = series
self.name = name
self._data = data
self.repos = set()
repos = set(self._data.get('repository-settings', {}).keys())
# NOTE(dhellmann): We do this next bit for legacy deliverable
# files without the repository-settings sections. We should be
# able to remove this after the T series is opened because at
# that point all actively validated deliverable files will
# have this data.
for r in self.releases:
for p in r['projects']:
self.repos.add(p['repo'])
repos.add(p['repo'])
self.repos = sorted(list(repos))
if self._governance_data is None:
Deliverable._governance_data = governance.get_team_data()