-
Notifications
You must be signed in to change notification settings - Fork 5
/
metaleuca-describe-system-groups
executable file
·68 lines (54 loc) · 1.92 KB
/
metaleuca-describe-system-groups
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#!/usr/bin/python -tt
# Copyright 2013 Eucalyptus Systems, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import re
import sys
import xmlrpclib
import resource_manager
from resource_manager import *
from optparse import OptionParser
def cb(option, opt_str, value, parser):
args=[]
for arg in parser.rargs:
if arg[0] != "-":
args.append(arg)
else:
del parser.rargs[:len(args)]
break
if getattr(parser.values, option.dest):
args.extend(getattr(parser.values, option.dest))
setattr(parser.values, option.dest, args)
def main():
print "METALEUCA DESCRIBE SYSTEM GROUPS"
parser = OptionParser()
parser.add_option("-g", "--group", action="callback", callback=cb, dest="group", help="group names")
parser.add_option("-f", "--freed", action="store_true", dest="freed", default=False, help="display only freed")
(options, args) = parser.parse_args()
rmanager = ResourceManager();
group_str = ""
if options.group is None:
group_str = "_ALL"
else:
for group in options.group:
group_str += group + " "
group_str = group_str.rstrip(" ")
group_list = group_str.split(" ")
for group in group_list:
if options.freed is True:
print rmanager.display_only_freed_group_by_name(group)
else:
print rmanager.display_group_by_name(group)
if __name__ == "__main__":
main()
exit