aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@intel.com>2019-05-17 16:37:43 -0700
committerMartin Jansa <Martin.Jansa@gmail.com>2019-05-20 13:46:43 +0000
commit977dc55541c861fa2a5410bdad7bc2e8483c1045 (patch)
tree9b738b6180117a1a6e9cc2f1ef1c905869066744
parentc373bb62f60df7702144626dc9179b4b3fa82196 (diff)
downloadopenembedded-core-contrib-jansa/master.tar.gz
openembedded-core-contrib-jansa/master.tar.bz2
openembedded-core-contrib-jansa/master.zip
insane: add sanity checks to SRC_URIjansa/master
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@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/insane.bbclass13
1 files changed, 12 insertions, 1 deletions
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index a9be88e816..fdc20c41a5 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 \
"
@@ -892,6 +892,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 () {