utils/get-developers: implement a -v action for DEVELOPERS file validation
Commit "45aabcddc5 utils/get-developers: really make it callable from elsewhere than the toplevel directory" had a unforeseen side-effect: the fact that check-developers with no arguments used to validate the syntax of the DEVELOPERS no longer works. Indeed, the parse_developers() call was moved *after* the check that verifies if at least one action is passed. Due to this, the check-DEVELOPERS verification in Gitlab CI, which invokes get-developers without argument to validate the DEVELOPERS file... no longer does anything useful. In order to fix this, we introduce an explicit action in get-developers to request the validation of the DEVELOPERS file. The implementation is trivial, as the validation is already done by calling parse_developers(), but at least now we have an action that does "nothing", except execute until the validation is done. This is also much more explicit than "invoke get-developers without arguments to just do validation". The initial investigation of the issue was done by Ricardo Martincoski <ricardo.martincoski@gmail.com> and reported at https://patchwork.ozlabs.org/project/buildroot/patch/20220528014832.289907-1-ricardo.martincoski@gmail.com/, but we have chosen to introduce a separate -v option rather than making the validation part of the existing -c action, which serves a different purpose. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
parent
dc000bd1a6
commit
47f359a615
@ -45,5 +45,6 @@ the +DEVELOPERS+ file for various tasks:
|
||||
list the ones that are not handled by any developer. The purpose of
|
||||
this option is to help completing the +DEVELOPERS+ file.
|
||||
|
||||
- When using without any arguments, it validates the integrity of the
|
||||
DEVELOPERS file and will note WARNINGS for items that don't match.
|
||||
- When using the +-v+ command line option, it validates the integrity
|
||||
of the DEVELOPERS file and will note WARNINGS for items that don't
|
||||
match.
|
||||
|
@ -19,6 +19,8 @@ def parse_args():
|
||||
const=True, help='list files not handled by any developer')
|
||||
parser.add_argument('-e', dest='email', action='store_const',
|
||||
const=True, help='only list affected developer email addresses')
|
||||
parser.add_argument('-v', dest='validate', action='store_const',
|
||||
const=True, help='validate syntax of DEVELOPERS file')
|
||||
return parser.parse_args()
|
||||
|
||||
|
||||
@ -35,6 +37,8 @@ def __main__():
|
||||
action += 1
|
||||
if args.check:
|
||||
action += 1
|
||||
if args.validate:
|
||||
action += 1
|
||||
if len(args.patches) != 0:
|
||||
action += 1
|
||||
if action > 1:
|
||||
@ -48,6 +52,12 @@ def __main__():
|
||||
if devs is None:
|
||||
sys.exit(1)
|
||||
|
||||
# Validation is done by parse_developers() above and we error out
|
||||
# if the validation didn't work, so if we reach here, it means
|
||||
# validation passed, so we can simply bail out in success.
|
||||
if args.validate:
|
||||
return
|
||||
|
||||
# Handle the check action
|
||||
if args.check:
|
||||
files = getdeveloperlib.check_developers(devs)
|
||||
|
Loading…
Reference in New Issue
Block a user