]>
Commit | Line | Data |
---|---|---|
9b00920e MM |
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') | |
492b6398 | 6 | import ftptree |
9b00920e | 7 | from common import checkdir |
0a108b7f | 8 | import ftpio |
9b00920e | 9 | |
f053c9e6 | 10 | if len(sys.argv) < 4: |
749b120d | 11 | print "ERR: not enough parameters given" |
f053c9e6 | 12 | print "test-move.py src-tree dst-tree package [package2 package3 ...]" |
9b00920e MM |
13 | sys.exit(1) |
14 | ||
15 | checkdir(sys.argv[1]) | |
16 | checkdir(sys.argv[2]) | |
17 | ||
0a108b7f MM |
18 | ftpio.connect('test-move') |
19 | ||
20 | if not ftpio.lock(sys.argv[1], True): | |
749b120d | 21 | print "ERR: %s tree already locked" % sys.argv[1] |
0a108b7f MM |
22 | sys.exit(1) |
23 | ||
24 | if not ftpio.lock(sys.argv[2], True): | |
25 | ftpio.unlock(sys.argv[1]) | |
749b120d | 26 | print "ERR: %s tree already locked" % sys.argv[2] |
0a108b7f MM |
27 | sys.exit(1) |
28 | ||
492b6398 MM |
29 | try: |
30 | srctree=ftptree.FtpTree(sys.argv[1], loadall=True) | |
31 | dsttree=ftptree.FtpTree(sys.argv[2]) | |
32 | srctree.mark4moving(sys.argv[3:]) | |
33 | except ftptree.SomeError: | |
34 | # In case of problems we need to unlock the trees before exiting | |
35 | ftpio.unlock(sys.argv[1]) | |
36 | ftpio.unlock(sys.argv[2]) | |
37 | sys.exit(1) | |
9b00920e | 38 | |
492b6398 | 39 | # We don't 'try' as in move.py cause this function doesn't force exit |
9b00920e MM |
40 | srctree.testmove(dsttree) |
41 | ||
0a108b7f MM |
42 | ftpio.unlock(sys.argv[1]) |
43 | ftpio.unlock(sys.argv[2]) | |
44 |