pld-ftp-admin: scripts/from-incoming.py - avoid using rpm symbol, collides ...
glen
glen at pld-linux.org
Fri Jun 12 00:51:03 CEST 2009
Author: glen Date: Thu Jun 11 22:51:03 2009 GMT
Module: pld-ftp-admin Tag: HEAD
---- Log message:
- avoid using rpm symbol, collides with python-rpm
---- Files affected:
pld-ftp-admin/scripts:
from-incoming.py (1.19 -> 1.20)
---- Diffs:
================================================================
Index: pld-ftp-admin/scripts/from-incoming.py
diff -u pld-ftp-admin/scripts/from-incoming.py:1.19 pld-ftp-admin/scripts/from-incoming.py:1.20
--- pld-ftp-admin/scripts/from-incoming.py:1.19 Thu Jun 11 23:57:44 2009
+++ pld-ftp-admin/scripts/from-incoming.py Fri Jun 12 00:50:58 2009
@@ -4,12 +4,12 @@
import sys, os, stat, time
sys.path.insert(0, os.environ['HOME']+'/pld-ftp-admin/modules')
from config import incoming_dir, default_to, ftp_archs
+from config import value as cval
import config
from common import noarchcachedir, tmpdir, fileexists
from baseftptree import BaseFtpTree, BasePkg
-cval = config.value
+from ftptree import FtpTree, Pkg
import ftpio
-import rpm
def rm(file):
os.remove(file)
@@ -17,11 +17,6 @@
def mv(src, dst):
os.rename(src, dst + '/' + src.split('/')[-1])
-def pkg_contents(pkg):
- print "pkg: %s" % pkg
- # hardcoded tree name
- maintree = BaseFtpTree("PLD")
-
# duplicate code in ftptree.py
def is_debuginfo(nvr):
"""
@@ -49,13 +44,13 @@
else:
return content[:-4]
-def send_noarch_msg(files_differ, reqs_differ, pkg, rpm, arch):
+def send_noarch_msg(files_differ, reqs_differ, pkg, rpmfile, arch):
req_email=pkg.build[pkg.lastbid].requester_email
req_bid=pkg.lastbid
cc_list=[]
if 'logs_list' in cval:
cc_list.append(cval['logs_list'])
- m_subject="Noarch error: %s files differ among builders" % rpm
+ m_subject="Noarch error: %s files differ among builders" % rpmfile
bids=pkg.build.keys()
if len(bids)>1:
for bid in bids:
@@ -74,13 +69,13 @@
""" % (cval['xpldbuilder'], req_bid, req_bid, m_subject)
sm = os.popen("/usr/sbin/sendmail -t", "w")
-
+
sm.write(msg)
if files_differ:
f=open("%s/files.diff" % tmpdir, 'r')
sm.write("Difference between %s (currently in %s) and %s FILES\n" %
- (pkg.noarch_arch[rpm], `ftptree`, arch)),
+ (pkg.noarch_arch[rpmfile], `ftptree`, arch)),
for line in f.readlines(True)[2:]:
sm.write(line)
f.close()
@@ -90,41 +85,41 @@
if reqs_differ:
f=open("%s/reqs.diff" % tmpdir, 'r')
sm.write("Difference between %s (currently in %s) and %s REQS\n" %
- (pkg.noarch_arch[rpm], `ftptree`, arch)),
+ (pkg.noarch_arch[rpmfile], `ftptree`, arch)),
for line in f.readlines(True)[2:]:
sm.write(line)
f.close()
sm.close()
-def move_noarch(f, arch, rpm, dstpkg):
- if dstpkg.noarch_arch.has_key(rpm):
+def move_noarch(f, arch, rpmfile, dstpkg):
+ if dstpkg.noarch_arch.has_key(rpmfile):
os.system("rpm -qlp %s | LC_ALL=C sort > %s/files.new" %
- (incoming_dir + arch + '/' + rpm, tmpdir))
+ (incoming_dir + arch + '/' + rpmfile, tmpdir))
os.system("rpm -qRp %s | LC_ALL=C sort | uniq > %s/reqs.new" %
- (incoming_dir + arch + '/' + rpm, tmpdir))
+ (incoming_dir + arch + '/' + rpmfile, tmpdir))
files_differ = False
reqs_differ = False
if os.system("diff -u %s/%s.filelist %s/files.new > %s/files.diff" %
- (noarchcachedir, rpm, tmpdir, tmpdir)):
+ (noarchcachedir, rpmfile, tmpdir, tmpdir)):
files_differ = True
if os.system("diff -u %s/%s.reqlist %s/reqs.new > %s/reqs.diff" %
- (noarchcachedir, rpm, tmpdir, tmpdir)):
+ (noarchcachedir, rpmfile, tmpdir, tmpdir)):
reqs_differ = True
if files_differ or reqs_differ:
- send_noarch_msg(files_differ, reqs_differ, dstpkg, rpm, arch)
+ send_noarch_msg(files_differ, reqs_differ, dstpkg, rpmfile, arch)
- rm(incoming_dir + arch + '/' + rpm)
+ rm(incoming_dir + arch + '/' + rpmfile)
else:
os.system("rpm -qlp %s > %s/%s.filelist" %
- (incoming_dir + arch + '/' + rpm, noarchcachedir, rpm))
- os.system("rpm -qRp %s |sort|uniq > %s/%s.reqlist" %
- (incoming_dir + arch + '/' + rpm, noarchcachedir, rpm))
- f.write("file:noarch:%s\ninfo:noarch_arch:%s:%s\n" % (rpm, rpm, arch))
- mv(incoming_dir + arch + '/' + rpm, default_to + 'noarch/RPMS')
+ (incoming_dir + arch + '/' + rpmfile, noarchcachedir, rpmfile))
+ os.system("rpm -qRp %s |sort|uniq > %s/%s.reqlist" %
+ (incoming_dir + arch + '/' + rpmfile, noarchcachedir, rpmfile))
+ f.write("file:noarch:%s\ninfo:noarch_arch:%s:%s\n" % (rpmfile, rpmfile, arch))
+ mv(incoming_dir + arch + '/' + rpmfile, default_to + 'noarch/RPMS')
# main()
try:
@@ -156,17 +151,15 @@
f.close()
else:
mv(incoming_dir + 'SRPMS/' + srpm, default_to + 'SRPMS/RPMS')
-
+
f = open(default_to + 'SRPMS/.metadata/' + srpm + '.info', 'w')
f.write(content)
f.close()
rm(incoming_dir + 'SRPMS/' + uploadinfo)
-
-
for arch in ftp_archs:
- for uploadinfo in findfiles(incoming_dir+arch):
+ for uploadinfo in findfiles(incoming_dir + arch):
content = getcontent(incoming_dir + arch + '/' + uploadinfo)
if not content:
print "%s not finished uploading" % uploadinfo
@@ -182,25 +175,25 @@
if dstpkg.files.has_key(arch):
ftpio.log("files from %s for arch %s already present in %s; removing newer files" % (`srcpkg`, arch, ftptree))
- for rpm in srcpkg.files['ARCH']:
+ for rpmfile in srcpkg.files['ARCH']:
try:
- rm(incoming_dir + arch + '/'+rpm)
+ rm(incoming_dir + arch + '/'+rpmfile)
except OSError, e:
- l = "Removing %s problem: %s" % (incoming_dir + arch + '/' + rpm, e)
+ l = "Removing %s problem: %s" % (incoming_dir + arch + '/' + rpmfile, e)
ftpio.log(l)
print l
rm(incoming_dir + arch + '/' + uploadinfo)
continue
f = open(default_to + 'SRPMS/.metadata/' + srpm + '.info', 'a')
- for rpm in srcpkg.files['ARCH']:
- if rpm[-11:] == '.noarch.rpm' and config.separate_noarch:
- move_noarch(f, arch, rpm, dstpkg)
+ for rpmfile in srcpkg.files['ARCH']:
+ if rpmfile[-11:] == '.noarch.rpm' and config.separate_noarch:
+ move_noarch(f, arch, rpmfile, dstpkg)
else:
- f.write("file:%s:%s\n" % (arch, rpm))
- srcfile = incoming_dir + arch + '/' + rpm
+ f.write("file:%s:%s\n" % (arch, rpmfile))
+ srcfile = incoming_dir + arch + '/' + rpmfile
- if is_debuginfo(rpm):
+ if is_debuginfo(rpmfile):
dstfile = default_to + arch + '/debuginfo'
else:
dstfile = default_to + arch + '/RPMS'
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/pld-ftp-admin/scripts/from-incoming.py?r1=1.19&r2=1.20&f=u
More information about the pld-cvs-commit
mailing list