patman: Pass in maintainer dirs to avoid and import

Adjust the get_maintainer module to accept a list of directories to search
for the script. This avoids needing to import gitutil.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reported-by: Stefan Bosch <stefan_b@posteo.net>
This commit is contained in:
Simon Glass 2020-06-07 06:45:48 -06:00
parent 38a9d3b31a
commit 156e655372
2 changed files with 9 additions and 8 deletions

View File

@ -5,17 +5,16 @@
import os import os
from patman import command from patman import command
from patman import gitutil
def FindGetMaintainer(): def FindGetMaintainer(try_list):
"""Look for the get_maintainer.pl script. """Look for the get_maintainer.pl script.
Args:
try_list: List of directories to try for the get_maintainer.pl script
Returns: Returns:
If the script is found we'll return a path to it; else None. If the script is found we'll return a path to it; else None.
""" """
try_list = [
os.path.join(gitutil.GetTopLevel(), 'scripts'),
]
# Look in the list # Look in the list
for path in try_list: for path in try_list:
fname = os.path.join(path, 'get_maintainer.pl') fname = os.path.join(path, 'get_maintainer.pl')
@ -24,7 +23,7 @@ def FindGetMaintainer():
return None return None
def GetMaintainer(fname, verbose=False): def GetMaintainer(dir_list, fname, verbose=False):
"""Run get_maintainer.pl on a file if we find it. """Run get_maintainer.pl on a file if we find it.
We look for get_maintainer.pl in the 'scripts' directory at the top of We look for get_maintainer.pl in the 'scripts' directory at the top of
@ -32,12 +31,13 @@ def GetMaintainer(fname, verbose=False):
then we fail silently. then we fail silently.
Args: Args:
dir_list: List of directories to try for the get_maintainer.pl script
fname: Path to the patch file to run get_maintainer.pl on. fname: Path to the patch file to run get_maintainer.pl on.
Returns: Returns:
A list of email addresses to CC to. A list of email addresses to CC to.
""" """
get_maintainer = FindGetMaintainer() get_maintainer = FindGetMaintainer(dir_list)
if not get_maintainer: if not get_maintainer:
if verbose: if verbose:
print("WARNING: Couldn't find get_maintainer.pl") print("WARNING: Couldn't find get_maintainer.pl")

View File

@ -263,7 +263,8 @@ class Series(dict):
if type(add_maintainers) == type(cc): if type(add_maintainers) == type(cc):
cc += add_maintainers cc += add_maintainers
elif add_maintainers: elif add_maintainers:
cc += get_maintainer.GetMaintainer(commit.patch) dir_list = [os.path.join(gitutil.GetTopLevel(), 'scripts')]
cc += get_maintainer.GetMaintainer(dir_list, commit.patch)
for x in set(cc) & set(settings.bounces): for x in set(cc) & set(settings.bounces):
print(col.Color(col.YELLOW, 'Skipping "%s"' % x)) print(col.Color(col.YELLOW, 'Skipping "%s"' % x))
cc = set(cc) - set(settings.bounces) cc = set(cc) - set(settings.bounces)