Setting tag util-vserver-pl-0.4-29
[util-vserver-pl.git] / python / disklimit
1 #!/bin/env python
2
3 import vserver, sys, os, re, getopt
4
5 def usage():
6     print """
7 Usage:
8
9 %s [OPTION]... [COMMAND] [ARGUMENT]...
10
11 Options:
12
13
14 Commands:
15         set slice space
16                 Set max disk limit for a slice
17
18         get slice
19                 Get current disk limit for slice
20 """ % (sys.argv[0])
21
22     sys.exit(1)
23     
24 def get(argv):
25     slicename = argv[0]
26     vs = vserver.VServer(slicename)
27     limit = vs.get_disklimit()
28     return "%s %d limit" % (slicename,limit)
29
30 def set(argv):
31     slicename = argv[0]
32     vs = vserver.VServer(slicename)
33     oldlimit = vs.get_disklimit()
34     newlimit = int(argv[1])
35     if newlimit >= oldlimit:
36         vs.set_disklimit(newlimit)
37     return None
38
39 def main():
40     functions = {"get":get, "set":set}
41     argv = sys.argv[1:]
42     if len(argv):
43             func = functions.get(argv[0],usage)
44             result = func(argv[1:])
45             if result <> None:
46                 print result
47             sys.exit(0)
48
49     # no command given
50     usage()
51
52
53 if __name__ == '__main__':
54     main()