From: Alexander Kanavin Date: Thu, 27 Jul 2023 14:36:11 +0000 (+0200) Subject: insane.bbclass: add a RECIPE_MAINTAINER check (oe-core recipes only) X-Git-Tag: lucaceresoli/bug-15201-perf-libtraceevent-missing~246 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=675dff0e37666c1cffa10a83f6f1f67d5fadd204;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git insane.bbclass: add a RECIPE_MAINTAINER check (oe-core recipes only) Absent maintainer entries are as well a frequent source of friction, as they are checked only in selftest, and so aren't revealed until autobuilder runs. The selftest is retained as it also checks for obsolete entries in maintainers.inc (not possible to do in insane class). Signed-off-by: Alexander Kanavin Signed-off-by: Alexandre Belloni Signed-off-by: Richard Purdie --- diff --git a/meta/classes-global/insane.bbclass b/meta/classes-global/insane.bbclass index 78506c30b1e..960dfc8924a 100644 --- a/meta/classes-global/insane.bbclass +++ b/meta/classes-global/insane.bbclass @@ -50,7 +50,7 @@ ERROR_QA ?= "dev-so debug-deps dev-deps debug-files arch pkgconfig la \ # Add usrmerge QA check based on distro feature ERROR_QA:append = "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', ' usrmerge', '', d)}" ERROR_QA:append:layer-core = " patch-status" -WARN_QA:append:layer-core = " missing-metadata" +WARN_QA:append:layer-core = " missing-metadata missing-maintainer" FAKEROOT_QA = "host-user-contaminated" FAKEROOT_QA[doc] = "QA tests which need to run under fakeroot. If any \ @@ -1485,7 +1485,16 @@ python do_recipe_qa() { else: oe.qa.handle_error("missing-metadata", "Recipe {} in {} does not contain a HOMEPAGE. Please add an entry.".format(pn, fn), d) + def test_missing_maintainer(d): + fn = d.getVar("FILE") + pn = d.getVar("PN") + if pn.endswith("-native") or pn.startswith("nativesdk-") or "packagegroup-" in pn or "core-image-ptest-" in pn: + return + if not d.getVar('RECIPE_MAINTAINER'): + oe.qa.handle_error("missing-maintainer", "Recipe {} in {} does not have an assigned maintainer. Please add an entry into meta/conf/distro/include/maintainers.inc.".format(pn, fn), d) + test_missing_metadata(d) + test_missing_maintainer(d) oe.qa.exit_if_errors(d) }