scripts/contrib/verify-homepage.py: add a script to verify HOMEPAGE
cover scripts/contrib/verify-homepage.py: add a script to verify HOMEPAGE
The following changes since commit 3c7b5ec1cae6186a64e0be2c05b64b05add08c97:
syslinux: fix isohybird overflows on 32 bit system (2014-06-24 19:54:12 +0100)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib chonglu/verifyhomepage
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=chonglu/verifyhomepage
Chong Lu (1):
scripts/contrib/verify-homepage.py: add a script to verify HOMEPAGE
scripts/contrib/verify-homepage.py | 63 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100755 scripts/contrib/verify-homepage.py
Signature · 1 line
1.9.1
PATCH 1/1 scripts/contrib/verify-homepage.py: add a script to verify HOMEPAGE
Add a script to verify all the recipes' HOMEPAGE.
[YOCTO #5689]
--- scripts/contrib/verify-homepage.py | 63 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100755 scripts/contrib/verify-homepage.py
scripts/contrib/verify-homepage.py new file +63 -0
@@ -0,0 +1,63 @@ +#!/usr/bin/env python + +# This script is used for verify HOMEPAGE. +# The result is influenced by network environment, since the timeout of connect url is 5 seconds as default. + +import sys +import os +import subprocess +import urllib2 + +def search_bitbakepath(): + bitbakepath = "" + + # Search path to bitbake lib dir in order to load bb modules + if os.path.exists(os.path.join(os.path.dirname(sys.argv[0]), '../../bitbake/lib/bb')): + bitbakepath = os.path.join(os.path.dirname(sys.argv[0]), '../../bitbake/lib') + bitbakepath = os.path.abspath(bitbakepath) + else: + # Look for bitbake/bin dir in PATH + for pth in os.environ['PATH'].split(':'): + if os.path.exists(os.path.join(pth, '../lib/bb')): + bitbakepath = os.path.abspath(os.path.join(pth, '../lib')) + break + if not bitbakepath: + sys.stderr.write("Unable to find bitbake by searching parent directory of this script or PATH\n") + sys.exit(1) + return bitbakepath + +# For importing the following modules +sys.path.insert(0, search_bitbakepath()) +import bb.tinfoil + +def wgetHomepage(pn, homepage): + result = subprocess.call('wget ' + '-q -T 5 -t 1 --spider ' + homepage, shell = True) + if result: + bb.warn("Failed to verify HOMEPAGE (%s) of %s" % (homepage, pn)) + return 1 + else: + return 0 + +def verifyHomepage(bbhandler): + pkg_pn = bbhandler.cooker.recipecache.pkg_pn + pnlist = sorted(pkg_pn) + count = 0 + for pn in pnlist: + fn = pkg_pn[pn].pop() + data = bb.cache.Cache.loadDataFull(fn, bbhandler.cooker.collection.get_file_appends(fn), bbhandler.config_data) + homepage = data.getVar("HOMEPAGE") + if homepage: + try: + urllib2.urlopen(homepage, timeout=5) + except Exception: + count = count + wgetHomepage(pn, homepage) + return count + +if __name__=='__main__': + failcount = 0 + bbhandler = bb.tinfoil.Tinfoil() + bbhandler.prepare() + print "Start to verify HOMEPAGE:" + failcount = verifyHomepage(bbhandler) + print "finish to verify HOMEPAGE." + print "Summary: %s failed" % failcount
Signature · 1 line
1.9.1
ping
Quoted 16 lines · Chong Lu
The following changes since commit
3c7b5ec1cae6186a64e0be2c05b64b05add08c97:syslinux: fix isohybird overflows on 32 bit system (2014-06-24 19:54:12 +0100)
are available in the git repository at:
git://git.pokylinux.org/poky-contribchonglu/verifyhomepage
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=chonglu/verifyhomepageChong Lu (1):
scripts/contrib/verify-homepage.py: add a script to verify HOMEPAGEscripts/contrib/verify-homepage.py | 63 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+)create mode 100755
scripts/contrib/verify-homepage.py