[OE-core] [PATCH v2] insane: add sanity checks to SRC_URI
Martin Jansa
martin.jansa at gmail.com
Wed May 22 15:48:19 UTC 2019
Can we add an option to skip this with INSANE_SKIP?
It looks like QARECIPETEST doesn't use INSANE_SKIP or I don't see how.
Removing src-uri-bad from ERROR_QA/WARN_QA for some recipes works as well,
is it worth adding INSANE_SKIP for consistency with other checks or not?
On Sat, May 18, 2019 at 1:37 AM Ross Burton <ross.burton at intel.com> wrote:
> The SRC_URI almost definitely shouldn't be using ${PN}, and GitHub
> */archive/*
> tarballs are dynamically generated so the checksums will change over time.
>
> Detect both of these, and emit a QA warning if found.
>
> Signed-off-by: Ross Burton <ross.burton at intel.com>
> ---
> meta/classes/insane.bbclass | 13 ++++++++++++-
> 1 file changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
> index 9ca5aefe544..59bb8be5470 100644
> --- a/meta/classes/insane.bbclass
> +++ b/meta/classes/insane.bbclass
> @@ -25,7 +25,7 @@ QA_SANE = "True"
> WARN_QA ?= "ldflags useless-rpaths rpaths staticdev libdir
> xorg-driver-abi \
> textrel already-stripped incompatible-license files-invalid \
> installed-vs-shipped compile-host-path install-host-path \
> - pn-overrides infodir build-deps \
> + pn-overrides infodir build-deps src-uri-bad \
> unknown-configure-option symlink-to-sysroot multilib \
> invalid-packageconfig host-user-contaminated uppercase-pn
> patch-fuzz \
> "
> @@ -898,6 +898,17 @@ def package_qa_check_host_user(path, name, d, elf,
> messages):
> return False
> return True
>
> +QARECIPETEST[src-uri-bad] = "package_qa_check_src_uri"
> +def package_qa_check_src_uri(pn, d, messages):
> + import re
> +
> + if "${PN}" in d.getVar("SRC_URI", False):
> + package_qa_handle_error("src-uri-bad", "%s: SRC_URI uses PN not
> BPN" % pn, d)
> +
> + pn = d.getVar("SRC_URI")
> + if re.search(r"github\.com/.+/.+/archive/.+", pn):
> + package_qa_handle_error("src-uri-bad", "%s: SRC_URI uses unstable
> GitHub archives" % pn, d)
> +
>
> # The PACKAGE FUNC to scan each package
> python do_package_qa () {
> --
> 2.20.1 (Apple Git-117)
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20190522/deeacd74/attachment.html>
More information about the Openembedded-core
mailing list