Improves releases.o.o index page

Clarify language used in the page.
Only list teams with active deliverables (current or still
under maintenance) in the Teams section. This allows to stop
mentioning long-gone teams like Astara or Cue or Fuel.

Change-Id: Ic41020606febf69769825f904255c915784791a1
This commit is contained in:
Thierry Carrez 2020-06-17 16:06:49 +02:00
parent 245dfc2506
commit aa2199de25
3 changed files with 16 additions and 5 deletions

View File

@ -412,7 +412,7 @@ class TeamDirective(rst.Directive):
def _generate_team_pages():
teams_with_deliverables = list(sorted(_deliverables.get_teams()))
teams_with_deliverables = list(sorted(_deliverables.get_active_teams()))
for team_name in teams_with_deliverables:
LOG.info('[team page] %s', team_name)
slug = team_name.lower().replace('-', '_').replace(' ', '_')

View File

@ -64,7 +64,7 @@ updates.
Series-Independent Releases
===========================
Some projects are released independently from the OpenStack release series.
Some deliverables are released independently from the OpenStack release series.
You can find their releases listed here:
.. toctree::
@ -75,7 +75,8 @@ You can find their releases listed here:
Teams
=====
Deliverables organized by the team that produces them.
Deliverables are produced by `project teams`_. Here you can find all OpenStack
deliverables, organized by the team that produces them:
.. toctree::
:maxdepth: 1
@ -83,6 +84,8 @@ Deliverables organized by the team that produces them.
teams/*
.. _project teams: https://governance.openstack.org/tc/reference/projects/index.html
Cryptographic Signatures
========================
@ -146,8 +149,8 @@ date ranges during which each key was in general use.
.. _`centrally-managed OpenPGP keys`: https://docs.openstack.org/infra/system-config/signing.html
.. _`OpenStack Infrastructure team`: https://governance.openstack.org/tc/reference/projects/infrastructure.html
References
==========
Documentation
=============
.. toctree::
:maxdepth: 2

View File

@ -117,6 +117,7 @@ class Deliverables(object):
# Map team names to a set of all the series in which they
# produced anything.
self._team_series = collections.defaultdict(set)
self._active_teams = set()
# Map team, series, and deliverable names to a list of the
# deliverable files.
self._by_team_and_series = collections.defaultdict(list)
@ -156,6 +157,9 @@ class Deliverables(object):
self._by_series[series].append(filename)
self._team_deliverables[team].add(deliverable)
self._team_series[team].add(series)
d = Deliverable(team, series, deliverable, d_info)
if d.allows_releases:
self._active_teams.add(team)
deliv = self._deliverable_from_filename(filename)
self._by_deliverable_name[deliv].append(filename)
@ -171,6 +175,10 @@ class Deliverables(object):
"Return all of the names of all of the teams seen."
return list(self._team_series.keys())
def get_active_teams(self):
"Return the names of all teams which have releasable deliverables."
return self._active_teams
def get_deliverables(self, team, series):
"""Return a sequence of deliverable data for the team and series.