>From 9f1d948bf3bd61f45e737c2b67cb4ae28cae9184 Mon Sep 17 00:00:00 2001 From: Henning Garus Date: Tue, 1 Sep 2009 23:54:47 +0200 Subject: [PATCH 1/2] check_packages.py: Allow multiple abs-trees By parsing multiple abs trees we can add any when parsing the other trees, checking any standalone doesn't make much sense. Signed-off-by: Henning Garus --- cron-jobs/check_archlinux/check_packages.py | 32 ++++++++++++++------------ cron-jobs/integrity-check | 2 +- 2 files changed, 18 insertions(+), 16 deletions(-) diff --git a/cron-jobs/check_archlinux/check_packages.py b/cron-jobs/check_archlinux/check_packages.py index f2a9601..e4798a0 100755 --- a/cron-jobs/check_archlinux/check_packages.py +++ b/cron-jobs/check_archlinux/check_packages.py @@ -51,10 +51,11 @@ class Depend: self.mod = mod def parse_pkgbuilds(repos,arch): - for repo in repos: - data = commands.getoutput(os.path.dirname(sys.argv[0]) + '/parse_pkgbuilds.sh ' - + arch + ' ' + absroot + '/' + repo) - parse_data(repo,data) + for absroot in absroots: + for repo in repos: + data = commands.getoutput(os.path.dirname(sys.argv[0]) + '/parse_pkgbuilds.sh ' + + arch + ' ' + absroot + '/' + repo) + parse_data(repo,data) def parse_data(repo,data): attrname = None @@ -332,9 +333,9 @@ def print_usage(): print "Usage: ./check_packages.py [OPTION]" print "" print "Options:" - print " --abs-tree= Check the specified tree (default : /var/abs)" + print " --abs-tree= Check the specified tree(s) (default : /var/abs)" print " --repos= Check the specified repos (default : core,extra)" - print " --arch= Check the specified arch (default : i686)" + print " --arch= Check the specified arch (default : i686)" print " -h, --help Show this help and exit" print "" print "Examples:" @@ -345,7 +346,7 @@ def print_usage(): print "" ## Default path to the abs root directory -absroot = "/var/abs" +absroots = ["/var/abs"] ## Default list of repos to check repos = ['core', 'extra'] ## Default arch @@ -359,7 +360,7 @@ except getopt.GetoptError: if opts != []: for o, a in opts: if o in ("--abs-tree"): - absroot = a + absroot = a.split(',') elif o in ("--repos"): repos = a.split(",") elif o in ("--arch"): @@ -371,14 +372,15 @@ if opts != []: print_usage() sys.exit() -if not os.path.isdir(absroot): - print "Error : the abs tree " + absroot + " does not exist" - sys.exit() -for repo in repos: - repopath = absroot + "/" + repo - if not os.path.isdir(repopath): - print "Error : the repository " + repo + " does not exist in " + absroot +for absroot in absroots: + if not os.path.isdir(absroot): + print "Error : the abs tree " + absroot + " does not exist" sys.exit() + for repo in repos: + repopath = absroot + "/" + repo + if not os.path.isdir(repopath): + print "Error : the repository " + repo + " does not exist in " + absroot + sys.exit() # repos which need to be loaded loadrepos = set([]) for repo in repos: diff --git a/cron-jobs/integrity-check b/cron-jobs/integrity-check index 0b59064..b3185ec 100755 --- a/cron-jobs/integrity-check +++ b/cron-jobs/integrity-check @@ -9,5 +9,5 @@ fi $basedir/check_archlinux/check_packages.py \ --repos="$1" \ - --abs-tree="/srv/abs/rsync/$2" --arch="$2" |\ + --abs-tree="/srv/abs/rsync/$2,/srv/abs/rsync/any" --arch="$2" |\ $basedir/devlist-mailer "Integrity Check $2: $1" "$3" -- 1.6.4.1