summaryrefslogtreecommitdiffstats
path: root/src/lib/Server/Admin/Bundle.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/Server/Admin/Bundle.py')
-rw-r--r--src/lib/Server/Admin/Bundle.py50
1 files changed, 26 insertions, 24 deletions
diff --git a/src/lib/Server/Admin/Bundle.py b/src/lib/Server/Admin/Bundle.py
index 96a7ba59d..9b2a71783 100644
--- a/src/lib/Server/Admin/Bundle.py
+++ b/src/lib/Server/Admin/Bundle.py
@@ -6,11 +6,11 @@ import Bcfg2.Server.Admin
import Bcfg2.Options
from Bcfg2.Server.Plugins.Metadata import MetadataConsistencyError
+
class Bundle(Bcfg2.Server.Admin.MetadataCore):
__shorthelp__ = "Create or delete bundle entries"
- __longhelp__ = (__shorthelp__ + #"\n\nbcfg2-admin bundle add <bundle> "
- #"\n\nbcfg2-admin bundle del <bundle>"
- "\n\nbcfg2-admin bundle list-xml"
+ # TODO: add/del functions
+ __longhelp__ = (__shorthelp__ + "\n\nbcfg2-admin bundle list-xml"
"\nbcfg2-admin bundle list-genshi"
"\nbcfg2-admin bundle show\n")
__usage__ = ("bcfg2-admin bundle [options] [add|del] [group]")
@@ -21,7 +21,7 @@ class Bundle(Bcfg2.Server.Admin.MetadataCore):
def __call__(self, args):
Bcfg2.Server.Admin.MetadataCore.__call__(self, args)
- reg='((?:[a-z][a-z\\.\\d\\-]+)\\.(?:[a-z][a-z\\-]+))(?![\\w\\.])'
+ reg = '((?:[a-z][a-z\\.\\d\\-]+)\\.(?:[a-z][a-z\\-]+))(?![\\w\\.])'
# Get all bundles out of the Bundle/ directory
opts = {'repo': Bcfg2.Options.SERVER_REPOSITORY}
@@ -38,31 +38,31 @@ class Bundle(Bcfg2.Server.Admin.MetadataCore):
# try:
# self.metadata.add_bundle(args[1])
# except MetadataConsistencyError:
-# print "Error in adding bundle."
+# print("Error in adding bundle.")
# raise SystemExit(1)
# elif args[0] in ['delete', 'remove', 'del', 'rm']:
# try:
# self.metadata.remove_bundle(args[1])
# except MetadataConsistencyError:
-# print "Error in deleting bundle."
+# print("Error in deleting bundle.")
# raise SystemExit(1)
# Lists all available xml bundles
elif args[0] in ['list-xml', 'ls-xml']:
bundle_name = []
for bundle_path in xml_list:
- rg = re.compile(reg,re.IGNORECASE|re.DOTALL)
+ rg = re.compile(reg, re.IGNORECASE | re.DOTALL)
bundle_name.append(rg.search(bundle_path).group(1))
for bundle in bundle_name:
- print bundle.split('.')[0]
+ print(bundle.split('.')[0])
# Lists all available genshi bundles
elif args[0] in ['list-genshi', 'ls-gen']:
bundle_name = []
for bundle_path in genshi_list:
- rg = re.compile(reg,re.IGNORECASE|re.DOTALL)
+ rg = re.compile(reg, re.IGNORECASE | re.DOTALL)
bundle_name.append(rg.search(bundle_path).group(1))
for bundle in bundle_name:
- print bundle.split('.')[0]
- # Shows a list of all available bundles and prints bundle
+ print(bundle.split('.')[0])
+ # Shows a list of all available bundles and prints bundle
# details after the user choose one bundle.
# FIXME: Add support for detailed output of genshi bundles
# FIXME: This functionality is almost identical with
@@ -71,32 +71,34 @@ class Bundle(Bcfg2.Server.Admin.MetadataCore):
bundle_name = []
bundle_list = xml_list + genshi_list
for bundle_path in bundle_list:
- rg = re.compile(reg,re.IGNORECASE|re.DOTALL)
+ rg = re.compile(reg, re.IGNORECASE | re.DOTALL)
bundle_name.append(rg.search(bundle_path).group(1))
text = "Available bundles (Number of bundles: %s)" % \
(len(bundle_list))
- print text
- print "%s" % (len(text) * "-")
+ print(text)
+ print("%s" % (len(text) * "-"))
for i in range(len(bundle_list)):
- print "[%i]\t%s" % (i, bundle_name[i])
- print "Enter the line number of a bundle for details:",
- lineno = raw_input()
+ print("[%i]\t%s" % (i, bundle_name[i]))
+ try:
+ lineno = raw_input("Enter the line number of a bundle for details: ")
+ except NameError:
+ lineno = input("Enter the line number of a bundle for details: ")
if int(lineno) >= int(len(bundle_list)):
- print "No line with this number."
+ print("No line with this number.")
else:
if '%s/Bundler/%s' % \
(repo, bundle_name[int(lineno)]) in genshi_list:
- print "Detailed output for *.genshi bundles is not supported."
+ print("Detailed output for *.genshi bundles is not supported.")
else:
- print 'Details for the "%s" bundle:' % \
- (bundle_name[int(lineno)].split('.')[0])
+ print('Details for the "%s" bundle:' % \
+ (bundle_name[int(lineno)].split('.')[0]))
tree = lxml.etree.parse(bundle_list[int(lineno)])
#Prints bundle content
- #print lxml.etree.tostring(tree)
+ #print(lxml.etree.tostring(tree))
names = ['Action', 'Package', 'Path', 'Service']
for name in names:
for node in tree.findall("//" + name):
- print "%s:\t%s" % (name, node.attrib["name"])
+ print("%s:\t%s" % (name, node.attrib["name"]))
else:
- print "No command specified"
+ print("No command specified")
raise SystemExit(1)