]> git.pld-linux.org Git - projects/pld-ftp-admin.git/blame - bin/pfa-mvpkg
- added option to ignore the fact that a build isn't completed (src.builder
[projects/pld-ftp-admin.git] / bin / pfa-mvpkg
CommitLineData
514f66ab
MM
1#!/usr/bin/env python
2# vi: encoding=utf-8 ts=8 sts=4 sw=4 et
3
6ebc8df7 4import sys, os
2f949c90 5sys.path.insert(0, os.environ['HOME']+'/pld-ftp-admin/modules')
f053c9e6 6import ftptree
6ebc8df7 7from common import checkdir
5959a5e8 8import ftpio
514f66ab 9
f053c9e6
MM
10nocheckbuild=False
11if len(sys.argv) > 4 and sys.argv[1]=='-nb':
12 nocheckbuild=True
13 sys.argv=sys.argv[1:]
14
15if len(sys.argv) < 4:
514f66ab 16 print "Not enough parameters given"
f053c9e6
MM
17 print "move.py [options] src-tree dst-tree package [package2 package3 ...]"
18 print "\nOptions:"
19 print " -nb Do not check if builds are finished.\n"
514f66ab
MM
20 sys.exit(1)
21
6ebc8df7
MM
22checkdir(sys.argv[1])
23checkdir(sys.argv[2])
514f66ab 24
0a108b7f 25ftpio.connect('move')
514f66ab 26
0a108b7f 27if not ftpio.lock(sys.argv[1], True):
b74d18b8 28 print "%s tree already locked" % sys.argv[1]
0a108b7f
MM
29 sys.exit(1)
30
31if not ftpio.lock(sys.argv[2], True):
32 ftpio.unlock(sys.argv[1])
b74d18b8 33 print "%s tree already locked" % sys.argv[2]
0a108b7f
MM
34 sys.exit(1)
35
36try:
f053c9e6
MM
37 srctree=ftptree.FtpTree(sys.argv[1], loadall=True)
38 dsttree=ftptree.FtpTree(sys.argv[2])
39 if nocheckbuild:
40 srctree.do_checkbuild=False
0a108b7f
MM
41 srctree.mark4moving(sys.argv[3:])
42
43 srctree.movepkgs(dsttree)
44except ftptree.SomeError:
f053c9e6 45 # In case of problems we need to unlock the trees before exiting
0a108b7f
MM
46 ftpio.unlock(sys.argv[1])
47 ftpio.unlock(sys.argv[2])
48 sys.exit(1)
49
50ftpio.unlock(sys.argv[1])
51ftpio.unlock(sys.argv[2])
514f66ab 52
This page took 0.059076 seconds and 4 git commands to generate.