~abentley/bzrtools/bzrtools.dev

« back to all changes in this revision

Viewing changes to shelf.py

Move main() into shelf.py, make it choose shelfve/unshelve based on $0

Show diffs side-by-side

added added

removed removed

Lines of Context:
6
6
import string
7
7
import tty, termios
8
8
 
9
 
def parse_args(args):
10
 
    if len(args) == 2 and args[1] == '--bzr-usage':
11
 
        print '\n'
12
 
        return True
13
 
    elif len(args) == 2 and args[1] == '--bzr-help':
14
 
        print 'Shelve a patch, you can get it back later with unshelve.'
15
 
        return True
16
 
    elif len(args) == 1:
17
 
        pass
18
 
    else:
19
 
        raise Exception("Don't understand args %s" % args)
20
 
 
21
 
    return False
 
9
def main(args):
 
10
    name = os.path.basename(args.pop(0))
 
11
 
 
12
    if name not in ['shelve', 'unshelve']:
 
13
        raise Exception("Unknown command name '%s'" % name)
 
14
 
 
15
    if len(args) > 0:
 
16
        if args[0] == '--bzr-usage':
 
17
            print '\n'
 
18
            return 0
 
19
        elif args[0] == '--bzr-help':
 
20
            print 'Shelve a patch, you can get it back later with unshelve.'
 
21
            return 0
 
22
        else:
 
23
            raise Exception("Don't understand args %s" % args)
 
24
 
 
25
    print 'running', name
 
26
 
 
27
    if eval(name + "()"):
 
28
        return 0
 
29
 
 
30
    return 1
22
31
 
23
32
def unshelve():
24
33
    root = run_bzr('root')[0].strip()