From 1d2ebc225d4b98c4786a523cff33054d2809123e Mon Sep 17 00:00:00 2001 From: James Troup Date: Tue, 16 Apr 2002 14:47:19 +0000 Subject: [PATCH] add new function to check for missing .tar.gz in .dsc's --- tea | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/tea b/tea index 1d4c62df..37834324 100755 --- a/tea +++ b/tea @@ -2,7 +2,7 @@ # Sanity check the database # Copyright (C) 2000, 2001 James Troup -# $Id: tea,v 1.16 2002-02-12 23:14:58 troup Exp $ +# $Id: tea,v 1.17 2002-04-16 14:47:19 troup Exp $ # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -222,6 +222,35 @@ def check_timestamps(): ################################################################################ +def check_missing_tar_gz_in_dsc(): + count = 0; + + q = projectB.query("SELECT l.path, f.filename FROM files f, location l WHERE f.location = l.id AND f.filename ~ '.dsc$'") + for i in q.getresult(): + filename = os.path.abspath(i[0] + i[1]); + try: + # NB: don't enforce .dsc syntax + dsc = utils.parse_changes(filename, 0); + except: + utils.fubar("error parsing .dsc file '%s'." % (filename)); + dsc_files = utils.build_file_list(dsc, 1); + has_tar = 0; + for file in dsc_files.keys(): + m = utils.re_issource.match(file); + if not m: + utils.fubar("%s not recognised as source." % (file)); + type = m.group(3); + if type == "orig.tar.gz" or type == "tar.gz": + has_tar = 1; + if not has_tar: + utils.warn("%s has no .tar.gz in the .dsc file." % (file)); + count = count + 1; + + if count: + utils.warn("Found %s invalid .dsc files." % (count)); + +################################################################################ + def main (): global Cnf, projectB, db_files, waste, excluded; @@ -236,7 +265,8 @@ def main (): #check_override(); #check_dscs(); #check_files(); - check_timestamps(); + #check_timestamps(); + check_missing_tar_gz_in_dsc(); ####################################################################################### -- 2.39.5