]> git.pld-linux.org Git - projects/pld-ftp-admin.git/blob - bin/pfa-mvpkg
- ARGH
[projects/pld-ftp-admin.git] / bin / pfa-mvpkg
1 #!/usr/bin/env python
2 # vi: encoding=utf-8 ts=8 sts=4 sw=4 et
3
4 import sys, os
5 sys.path.insert(0, os.environ['HOME']+'/pld-ftp-admin/modules')
6 from ftptree import FtpTree
7 from common import checkdir
8 import ftpio
9
10 if len(sys.argv) < 3:
11     print "Not enough parameters given"
12     print "move.py src-tree dst-tree [package1, package2, ...]"
13     sys.exit(1)
14
15 checkdir(sys.argv[1])
16 checkdir(sys.argv[2])
17
18 ftpio.connect('move')
19
20 if not ftpio.lock(sys.argv[1], True):
21     print "%s tree already locked" % sys.argv[1]
22     sys.exit(1)
23
24 if not ftpio.lock(sys.argv[2], True):
25     ftpio.unlock(sys.argv[1])
26     print "%s tree already locked" % sys.argv[2]
27     sys.exit(1)
28
29 try:
30     srctree=FtpTree(sys.argv[1], loadall=True)
31     dsttree=FtpTree(sys.argv[2])
32     srctree.mark4moving(sys.argv[3:])
33
34     srctree.movepkgs(dsttree)
35 except ftptree.SomeError:
36     # In case of problems we need to unlock the tree before exiting
37     ftpio.unlock(sys.argv[1])
38     ftpio.unlock(sys.argv[2])
39     sys.exit(1)
40
41 ftpio.unlock(sys.argv[1])
42 ftpio.unlock(sys.argv[2])
43
This page took 0.034664 seconds and 4 git commands to generate.