]> git.pld-linux.org Git - projects/pld-ftp-admin.git/blobdiff - bin/pfa-mvpkg
- start all error strings with 'ERR:'
[projects/pld-ftp-admin.git] / bin / pfa-mvpkg
index cc295a4ff2960c30c77e116db47d7a8a42519990..eb331aa0c1776b822ec93ccbe7b1fc1edf7f39ba 100644 (file)
@@ -6,6 +6,9 @@ sys.path.insert(0, os.environ['HOME']+'/pld-ftp-admin/modules')
 import ftptree
 from common import checkdir
 import ftpio
+from mailer import Message
+import config
+cval=config.value
 
 nocheckbuild=False
 if len(sys.argv) > 4 and sys.argv[1]=='-nb':
@@ -13,7 +16,7 @@ if len(sys.argv) > 4 and sys.argv[1]=='-nb':
     sys.argv=sys.argv[1:]
 
 if len(sys.argv) < 4:
-    print "Not enough parameters given"
+    print "ERR: not enough parameters given"
     print "move.py [options] src-tree dst-tree package [package2 package3 ...]"
     print "\nOptions:"
     print "      -nb    Do not check if builds are finished.\n"
@@ -25,12 +28,12 @@ checkdir(sys.argv[2])
 ftpio.connect('move')
 
 if not ftpio.lock(sys.argv[1], True):
-    print "%s tree already locked" % sys.argv[1]
+    print "ERR: %s tree already locked" % sys.argv[1]
     sys.exit(1)
 
 if not ftpio.lock(sys.argv[2], True):
     ftpio.unlock(sys.argv[1])
-    print "%s tree already locked" % sys.argv[2]
+    print "ERR: %s tree already locked" % sys.argv[2]
     sys.exit(1)
 
 try:
@@ -50,3 +53,30 @@ except ftptree.SomeError:
 ftpio.unlock(sys.argv[1])
 ftpio.unlock(sys.argv[2])
 
+if 'logs_list' not in cval:
+    sys.exit(0)
+
+print 'Sending mail notification...',
+
+pkgs={}
+
+for pkg in srctree.marked4moving:
+    requesters=[]
+    for bid in pkg.build.keys():
+        if pkg.build[bid].requester not in requesters:
+            requesters.append(pkg.build[bid].requester)
+    pkgs[pkg.name]=requesters
+
+m=Message()
+m.set_headers(to=cval['logs_list'], subject='MOVED: %s => %s... %d packages' %
+                                    (sys.argv[1], sys.argv[2], len(pkgs)))
+m.write(('SrcTree: %s                               DstTree: %s\n' +
+       'Amount: %d\n\n---- Moved:\n\n') % (sys.argv[1], sys.argv[2], len(pkgs)))
+
+for name in sorted(pkgs.keys()):
+    m.write_line('%s ---- %s' % (name, ', '.join(pkgs[name])))
+
+m.send()
+
+print 'done.'
+
This page took 0.033299 seconds and 4 git commands to generate.