mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-02-17 22:49:02 +00:00
buildman: Correct logic for missing maintainers
An orphaned board should produce a warning, as should a missing name for the maintainer (when '-' is provided). Add these cases. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
1aaaafadcc
commit
9a7cc8121f
2 changed files with 26 additions and 6 deletions
|
@ -341,11 +341,15 @@ class MaintainersDatabase:
|
|||
str: Maintainers of the board. If the board has two or more
|
||||
maintainers, they are separated with colons.
|
||||
"""
|
||||
if not target in self.database:
|
||||
self.warnings.append(f"WARNING: no maintainers for '{target}'")
|
||||
return ''
|
||||
entry = self.database.get(target)
|
||||
if entry:
|
||||
status, maint_list = entry
|
||||
if not status.startswith('Orphan'):
|
||||
if len(maint_list) > 1 or (maint_list and maint_list[0] != '-'):
|
||||
return ':'.join(maint_list)
|
||||
|
||||
return ':'.join(self.database[target][1])
|
||||
self.warnings.append(f"WARNING: no maintainers for '{target}'")
|
||||
return ''
|
||||
|
||||
def parse_file(self, srcdir, fname):
|
||||
"""Parse a MAINTAINERS file.
|
||||
|
|
|
@ -923,13 +923,29 @@ Active aarch64 armv8 - armltd total_compute board2
|
|||
'WARNING: orphaned defconfig in boards/board0/MAINTAINERS ending at line 4',
|
||||
], warnings)
|
||||
|
||||
# Remove the maintainer line (M:) from a file (this should be fine)
|
||||
# Mark a board as orphaned - this should give a warning
|
||||
lines = ['S: Orphaned' if line.startswith('S') else line
|
||||
for line in orig_data.splitlines(keepends=True)]
|
||||
tools.write_file(main, ''.join(lines), binary=False)
|
||||
params_list, warnings = self._boards.build_board_list(config_dir, src)
|
||||
self.assertEquals(2, len(params_list))
|
||||
self.assertEquals(["WARNING: no maintainers for 'board0'"], warnings)
|
||||
|
||||
# Change the maintainer to '-' - this should give a warning
|
||||
lines = ['M: -' if line.startswith('M') else line
|
||||
for line in orig_data.splitlines(keepends=True)]
|
||||
tools.write_file(main, ''.join(lines), binary=False)
|
||||
params_list, warnings = self._boards.build_board_list(config_dir, src)
|
||||
self.assertEquals(2, len(params_list))
|
||||
self.assertEquals(["WARNING: -: unknown status for 'board0'"], warnings)
|
||||
|
||||
# Remove the maintainer line (M:) from a file
|
||||
lines = [line for line in orig_data.splitlines(keepends=True)
|
||||
if not line.startswith('M:')]
|
||||
tools.write_file(main, ''.join(lines), binary=False)
|
||||
params_list, warnings = self._boards.build_board_list(config_dir, src)
|
||||
self.assertEquals(2, len(params_list))
|
||||
self.assertFalse(warnings)
|
||||
self.assertEquals(["WARNING: no maintainers for 'board0'"], warnings)
|
||||
|
||||
# Move the contents of the second file into this one, removing the
|
||||
# second file, to check multiple records in a single file.
|
||||
|
|
Loading…
Add table
Reference in a new issue