]> TLD Linux GIT Repositories - tld-ftp-admin.git/blobdiff - wwwbin/clean-dups.py
- tldized
[tld-ftp-admin.git] / wwwbin / clean-dups.py
diff --git a/wwwbin/clean-dups.py b/wwwbin/clean-dups.py
deleted file mode 100755 (executable)
index 003b538..0000000
+++ /dev/null
@@ -1,127 +0,0 @@
-#!/usr/bin/python
-# arekm, 2008
-# remove 
-
-import os
-import re
-import time
-import rpm
-import sys
-
-re_rpm = re.compile(r'.*\.rpm$')
-re_nvr = re.compile('^(.*)-([^-]*)-([^-]*)\.rpm$')
-dir = '/home/pld/admins/th/ftp/test/SRPMS/RPMS'
-
-ignore = re.compile('^(kernel-.*)$')
-#|\
-#crash-.*|\
-#dahdi-linux-.*|\
-#e1000e-.*|\
-#igb-.*|\
-#ipset-.*|\
-#iscsitarget-.*|\
-#ixgbe-.*|\
-#kernel-net-wl-.*|\
-#lin_tape-.*|\
-#linux-fusion-.*|\
-#linuxrdac-.*|\
-#lirc-.*|\
-#lttng-modules-.*|\
-#madwifi-ng-.*|\
-#nvidiabl-.*|\
-#open-vm-tools-.*|\
-#openvswitch-.*|\
-#r8168-.*|\
-#spl-.*|\
-#tpm_emulator-.*|\
-#VirtualBox-.*|\
-#vpb-driver-.*|\
-#xorg-driver-video-fglrx-.*|\
-#xorg-driver-video-fglrx-legacy-.*|\
-#xorg-driver-video-nvidia-.*|\
-#xorg-driver-video-nvidia-legacy3-.*|\
-#xorg-driver-video-nvidia-legacy-304xx-.*|\
-#xtables-addons-.*)$')
-
-ts = rpm.TransactionSet("", (rpm.RPMVSF_NOHDRCHK or rpm.RPMVSF_NEEDPAYLOAD))
-
-def compare(f1, f2):
-       try:
-               fd1 = os.open(os.path.join(dir, f1), os.O_RDONLY)
-       except Exception, e:
-               print e
-               # ignore non-files
-               return 0
-       try:
-               fd2 = os.open(os.path.join(dir, f2), os.O_RDONLY)
-       except Exception, e:
-               print e
-               # ignore non-files
-               return 0
-       try:
-               h1 = ts.hdrFromFdno(fd1)
-       except Exception, e:
-               print "hdrFromFdno for %s failed: %s" % (f1, e)
-               os.close(fd1)
-               os.close(fd2)
-               return 0
-
-       try:
-               h2 = ts.hdrFromFdno(fd2)
-       except Exception, e:
-               print "hdrFromFdno for %s failed: %s" % (f2, e)
-               os.close(fd1)
-               os.close(fd2)
-               return 0
-
-       os.close(fd1)
-       os.close(fd2)
-
-       l1 = rpm.versionCompare(h1, h2)
-       l2 = rpm.versionCompare(h2, h1)
-
-       if l1 > 0 and l2 > 0:
-               return 0
-
-       return -l1
-
-
-def find_old(files):
-       return sorted(files, compare)
-
-files = {}
-dupes = {}
-
-for file in os.listdir(dir):
-       if not re_rpm.match(file):
-               continue
-
-       if ignore.match(file):
-               continue
-
-       m = re_nvr.match(file)
-       if not m:
-               print "problem with: %s" % file
-               sys.exit(1)
-
-       if len(sys.argv) == 0:
-               p = os.path.join(dir, file)
-               mtime = os.stat(p).st_mtime
-               if mtime > time.time() - 3*86400:
-                       continue
-
-       name = m.group(1)
-
-       if files.has_key(name):
-               if dupes.has_key(name):
-                       dupes[name].append(file)
-               else:
-                       dupes[name] = [ files[name] ]
-                       dupes[name].append(file)
-       else:
-               files[name] = file
-
-for i in dupes.iterkeys():
-       for old in find_old(dupes[i])[1:]:
-               print "removing: %s" % old
-               os.system("/home/pld/admins/th/pld-ftp-admin/scripts/remove.py test %s" % old)