8 dirs = ['/home/services/ftp/pld/dists/3.0/PLD/x32/RPMS',
9 '/home/services/ftp/pld/dists/3.0/PLD/i686/RPMS',
10 '/home/services/ftp/pld/dists/3.0/PLD/x86_64/RPMS',
11 '/home/services/ftp/pld/dists/3.0/ready/x32/RPMS',
12 '/home/services/ftp/pld/dists/3.0/ready/i686/RPMS',
13 '/home/services/ftp/pld/dists/3.0/ready/x86_64/RPMS',
14 '/home/services/ftp/pld/dists/3.0/test/x32/RPMS',
15 '/home/services/ftp/pld/dists/3.0/test/i686/RPMS',
16 '/home/services/ftp/pld/dists/3.0/test/x86_64/RPMS']
18 #dirs = ['/home/services/ftp/pld/dists/3.0/test/x86_64/RPMS']
20 outname = "/home/pld/admins/th/www/name-srcname.txt"
22 re_rpm = re.compile(r'.*\.rpm$')
23 re_nvr = re.compile('^(.*)-([^-]*)-([^-]*)\.rpm$')
29 for file in os.listdir(dir):
30 if not re_rpm.match(file):
33 rpm_file = os.path.join(dir, file)
35 fdno = os.open(rpm_file, os.O_RDONLY)
37 hdr = ts.hdrFromFdno(fdno)
39 print "hdrFromFdno: %s: %s" % (rpm_file, e)
44 name = hdr[rpm.RPMTAG_NAME]
45 sourcerpm = hdr[rpm.RPMTAG_SOURCERPM]
46 m = re_nvr.match(sourcerpm)
48 print "%s: doesn't match src.rpm file name" % (sourcerpm)
53 f = open(outname + ".tmp", "w")
54 for (pkg, spkg) in pkgs.iteritems():
55 f.write("%s:%s\n" % (pkg, spkg))
57 os.chmod(outname + ".tmp", 0644)
58 os.rename(outname + ".tmp", outname)