Allow to check release approval for DPL teams

These teams are PTL-less and not necessary define their
release liaison in openstack/release/data/release_liaison.yaml.

The problem is that their release liaison approval is not
necessarily detected.

These changes allow to consider these release liaisons folks.

Furthermore, patch Id0d6eeaf66394806374781d1cf26c087a6e90f87,
from the similar script in project-config repository, also applied
here in this script to avoid exception in case of DPL teams.

Change-Id: Ieaf1eafc6a8e3ce443d73876e525f738e51dea67
This commit is contained in:
Hervé Beraud 2021-10-26 15:11:57 +02:00 committed by Előd Illés
parent c3d7c85484
commit 3dfdc3e59b

View File

@ -111,9 +111,20 @@ class GerritChange(object):
approved = False
break
# Fetch PTL and release liaisons
# Fetch release liaisons
liaisons = get_liaisons(team)
if 'email' in govteam['ptl']:
# Some teams follow the "distributed project lead" governance
# model so they are PTL-less but they have release liaisons
# defined. Fetch those liaisons.
if govteam.get('distributed', None):
distributed_ptl_liaisons = govteam['liaison']['release']
for liaison in distributed_ptl_liaisons:
liaisons.append(liaison['email'])
# Fetch PTL's email address (note: some teams may be PTL-less,
# so don't assume we have PTL info
if 'email' in govteam.get('ptl', {}):
liaisons.append(govteam['ptl']['email'])
LOG.debug('%s needs %s' % (deliv_file, liaisons))