summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Server/Plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/Bcfg2/Server/Plugins')
-rw-r--r--src/lib/Bcfg2/Server/Plugins/AWSTags.py2
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Bundler.py4
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Cfg/CfgCheetahGenerator.py4
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Cfg/__init__.py12
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Deps.py2
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Ldap.py2
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Metadata.py16
-rw-r--r--src/lib/Bcfg2/Server/Plugins/POSIXCompat.py2
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Packages/Pac.py2
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Packages/Pkgng.py4
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Packages/Source.py2
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Packages/Yum.py6
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Packages/YumHelper.py8
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Packages/__init__.py4
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Pkgmgr.py8
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Probes.py10
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Properties.py2
-rw-r--r--src/lib/Bcfg2/Server/Plugins/PuppetENC.py6
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Rules.py2
-rw-r--r--src/lib/Bcfg2/Server/Plugins/SSHbase.py8
-rw-r--r--src/lib/Bcfg2/Server/Plugins/TemplateHelper.py8
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Trigger.py2
22 files changed, 58 insertions, 58 deletions
diff --git a/src/lib/Bcfg2/Server/Plugins/AWSTags.py b/src/lib/Bcfg2/Server/Plugins/AWSTags.py
index 556805bde..d823a3986 100644
--- a/src/lib/Bcfg2/Server/Plugins/AWSTags.py
+++ b/src/lib/Bcfg2/Server/Plugins/AWSTags.py
@@ -26,7 +26,7 @@ class AWSTagPattern(object):
def get_groups(self, tags):
""" Get groups that apply to the given tag set """
- for key, value in tags.items():
+ for key, value in list(tags.items()):
name_match = self.name.search(key)
if name_match:
if self.value is not None:
diff --git a/src/lib/Bcfg2/Server/Plugins/Bundler.py b/src/lib/Bcfg2/Server/Plugins/Bundler.py
index 4f5a79465..bbdf62866 100644
--- a/src/lib/Bcfg2/Server/Plugins/Bundler.py
+++ b/src/lib/Bcfg2/Server/Plugins/Bundler.py
@@ -58,7 +58,7 @@ class Bundler(Plugin,
def HandleEvent(self, event):
XMLDirectoryBacked.HandleEvent(self, event)
self.bundles = dict([(b.bundle_name, b)
- for b in self.entries.values()])
+ for b in list(self.entries.values())])
def validate_structures(self, metadata, structures):
""" Translate <Path glob='...'/> entries into <Path name='...'/>
@@ -66,7 +66,7 @@ class Bundler(Plugin,
for struct in structures:
for pathglob in struct.xpath("//Path[@glob]"):
for plugin in self.core.plugins_by_type(Generator):
- for match in fnmatch.filter(plugin.Entries['Path'].keys(),
+ for match in fnmatch.filter(list(plugin.Entries['Path'].keys()),
pathglob.get("glob")):
lxml.etree.SubElement(pathglob.getparent(),
"Path", name=match)
diff --git a/src/lib/Bcfg2/Server/Plugins/Cfg/CfgCheetahGenerator.py b/src/lib/Bcfg2/Server/Plugins/Cfg/CfgCheetahGenerator.py
index 84309b5dd..2a452f345 100644
--- a/src/lib/Bcfg2/Server/Plugins/Cfg/CfgCheetahGenerator.py
+++ b/src/lib/Bcfg2/Server/Plugins/Cfg/CfgCheetahGenerator.py
@@ -50,9 +50,9 @@ class CfgCheetahGenerator(CfgGenerator):
def get_data(self, entry, metadata):
template = Template(self.data.decode(Bcfg2.Options.setup.encoding),
compilerSettings=self.settings)
- for key, val in get_template_data(
+ for key, val in list(get_template_data(
entry, metadata, self.name,
- default=DefaultCheetahDataProvider()).items():
+ default=DefaultCheetahDataProvider()).items()):
setattr(template, key, val)
return template.respond()
get_data.__doc__ = CfgGenerator.get_data.__doc__
diff --git a/src/lib/Bcfg2/Server/Plugins/Cfg/__init__.py b/src/lib/Bcfg2/Server/Plugins/Cfg/__init__.py
index 44d980967..e4013a347 100644
--- a/src/lib/Bcfg2/Server/Plugins/Cfg/__init__.py
+++ b/src/lib/Bcfg2/Server/Plugins/Cfg/__init__.py
@@ -10,7 +10,7 @@ import Bcfg2.Options
import Bcfg2.Server.Plugin
from Bcfg2.Server.Plugin import PluginExecutionError
# pylint: disable=W0622
-from Bcfg2.Compat import u_str, unicode, b64encode, any, walk_packages
+from Bcfg2.Compat import u_str, str, b64encode, any, walk_packages
# pylint: enable=W0622
try:
@@ -511,7 +511,7 @@ class CfgDefaultInfo(CfgInfo):
__init__.__doc__ = CfgInfo.__init__.__doc__.split(".. -----")[0]
def bind_info_to_entry(self, entry, _):
- for key, value in Bcfg2.Server.Plugin.default_path_metadata().items():
+ for key, value in list(Bcfg2.Server.Plugin.default_path_metadata().items()):
entry.attrib[key] = value
bind_info_to_entry.__doc__ = CfgInfo.bind_info_to_entry.__doc__
@@ -527,7 +527,7 @@ class CfgEntrySet(Bcfg2.Server.Plugin.EntrySet):
def set_debug(self, debug):
rv = Bcfg2.Server.Plugin.EntrySet.set_debug(self, debug)
- for entry in self.entries.values():
+ for entry in list(self.entries.values()):
entry.set_debug(debug)
return rv
@@ -648,7 +648,7 @@ class CfgEntrySet(Bcfg2.Server.Plugin.EntrySet):
data = b64encode(data)
else:
try:
- if not isinstance(data, unicode):
+ if not isinstance(data, str):
if not isinstance(data, str):
data = data.decode('utf-8')
data = u_str(data, Bcfg2.Options.setup.encoding)
@@ -688,7 +688,7 @@ class CfgEntrySet(Bcfg2.Server.Plugin.EntrySet):
:returns: list of Cfg handler classes
"""
rv = []
- for ent in self.entries.values():
+ for ent in list(self.entries.values()):
if (isinstance(ent, handler_type) and
(not ent.__specific__ or ent.specific.matches(metadata))):
rv.append(ent)
@@ -786,7 +786,7 @@ class CfgEntrySet(Bcfg2.Server.Plugin.EntrySet):
verifiers_by_class[cls] = [verifier]
else:
verifiers_by_class[cls].append(verifier)
- for verifiers in verifiers_by_class.values():
+ for verifiers in list(verifiers_by_class.values()):
verifier = self.best_matching(metadata, verifiers)
verifier.verify_entry(entry, metadata, data)
diff --git a/src/lib/Bcfg2/Server/Plugins/Deps.py b/src/lib/Bcfg2/Server/Plugins/Deps.py
index 1872e68af..7288698db 100644
--- a/src/lib/Bcfg2/Server/Plugins/Deps.py
+++ b/src/lib/Bcfg2/Server/Plugins/Deps.py
@@ -65,7 +65,7 @@ class Deps(Bcfg2.Server.Plugin.PrioDir,
# tuples of (PriorityStructFile, element) for each
# matching element and the structfile that contains it
matching = []
- for deps in self.entries.values():
+ for deps in list(self.entries.values()):
el = deps.find("/%s[name='%s']" % (entry.tag,
entry.get("name")))
if el:
diff --git a/src/lib/Bcfg2/Server/Plugins/Ldap.py b/src/lib/Bcfg2/Server/Plugins/Ldap.py
index 770419ba5..cb82d962e 100644
--- a/src/lib/Bcfg2/Server/Plugins/Ldap.py
+++ b/src/lib/Bcfg2/Server/Plugins/Ldap.py
@@ -210,7 +210,7 @@ class LdapConnection(Debuggable):
self.conn = ldap.initialize(self.get_uri())
if self.options is not None:
- for (option, value) in self.options.items():
+ for (option, value) in list(self.options.items()):
self.conn.set_option(option, value)
if self.binddn is not None and self.bindpw is not None:
diff --git a/src/lib/Bcfg2/Server/Plugins/Metadata.py b/src/lib/Bcfg2/Server/Plugins/Metadata.py
index b912d3725..bdefd4b45 100644
--- a/src/lib/Bcfg2/Server/Plugins/Metadata.py
+++ b/src/lib/Bcfg2/Server/Plugins/Metadata.py
@@ -959,7 +959,7 @@ class Metadata(Bcfg2.Server.Plugin.Metadata,
def HandleEvent(self, event):
"""Handle update events for data files."""
- for handles, event_handler in self.handlers.items():
+ for handles, event_handler in list(self.handlers.items()):
if handles(event):
# clear the entire cache when we get an event for any
# metadata file
@@ -968,7 +968,7 @@ class Metadata(Bcfg2.Server.Plugin.Metadata,
# clear out the list of category suppressions that
# have been warned about, since this may change when
# clients.xml or groups.xml changes.
- for group in self.groups.values():
+ for group in list(self.groups.values()):
group.warned = []
event_handler(event)
@@ -1120,7 +1120,7 @@ class Metadata(Bcfg2.Server.Plugin.Metadata,
self.groups[grpname].category):
categories[self.groups[grpname].category] = grpname
groups.update(newgroups)
- for grpname, predicates in self.negated_groups.items():
+ for grpname, predicates in list(self.negated_groups.items()):
if grpname not in groups:
continue
if any(p(client, groups, categories) for p in predicates):
@@ -1289,16 +1289,16 @@ class Metadata(Bcfg2.Server.Plugin.Metadata,
def get_all_group_names(self):
""" return a list of all group names """
all_groups = set()
- all_groups.update(self.groups.keys())
- all_groups.update(self.group_membership.keys())
- all_groups.update(self.negated_groups.keys())
- for grp in self.clientgroups.values():
+ all_groups.update(list(self.groups.keys()))
+ all_groups.update(list(self.group_membership.keys()))
+ all_groups.update(list(self.negated_groups.keys()))
+ for grp in list(self.clientgroups.values()):
all_groups.update(grp)
return all_groups
def get_all_groups_in_category(self, category):
""" return a list of names of groups in the given category """
- return set([g.name for g in self.groups.values()
+ return set([g.name for g in list(self.groups.values())
if g.category == category])
def get_client_names_by_profiles(self, profiles):
diff --git a/src/lib/Bcfg2/Server/Plugins/POSIXCompat.py b/src/lib/Bcfg2/Server/Plugins/POSIXCompat.py
index cf53c5866..1cd5e059e 100644
--- a/src/lib/Bcfg2/Server/Plugins/POSIXCompat.py
+++ b/src/lib/Bcfg2/Server/Plugins/POSIXCompat.py
@@ -24,5 +24,5 @@ class POSIXCompat(Bcfg2.Server.Plugin.Plugin,
for goal in goals:
for entry in goal.getchildren():
- if entry.tag == 'Path' and 'mode' in entry.keys():
+ if entry.tag == 'Path' and 'mode' in list(entry.keys()):
entry.set('perms', entry.get('mode'))
diff --git a/src/lib/Bcfg2/Server/Plugins/Packages/Pac.py b/src/lib/Bcfg2/Server/Plugins/Packages/Pac.py
index e3432c934..9d019b46a 100644
--- a/src/lib/Bcfg2/Server/Plugins/Packages/Pac.py
+++ b/src/lib/Bcfg2/Server/Plugins/Packages/Pac.py
@@ -160,7 +160,7 @@ class PacSource(Source):
pkg = parse_db_file(tar.extractfile(tarinfo))
packages[prefix].update(pkg)
- for pkg in packages.values():
+ for pkg in list(packages.values()):
pkgname = pkg['%NAME%'][0]
self.pkgnames.add(pkgname)
bdeps[barch][pkgname] = []
diff --git a/src/lib/Bcfg2/Server/Plugins/Packages/Pkgng.py b/src/lib/Bcfg2/Server/Plugins/Packages/Pkgng.py
index 5248ad896..230be2ccd 100644
--- a/src/lib/Bcfg2/Server/Plugins/Packages/Pkgng.py
+++ b/src/lib/Bcfg2/Server/Plugins/Packages/Pkgng.py
@@ -87,10 +87,10 @@ class PkgngSource(Source):
self.logger.error("Packages: Failed to read file %s" % fname)
raise
for line in packagesite.readlines():
- pkg = json.loads(unicode(line, errors='ignore'))
+ pkg = json.loads(str(line, errors='ignore'))
pkgname = pkg['name']
self.pkgnames.add(pkgname)
if 'deps' in pkg:
- bdeps[barch][pkgname] = pkg['deps'].keys()
+ bdeps[barch][pkgname] = list(pkg['deps'].keys())
self.process_files(bdeps, dict())
read_files.__doc__ = Source.read_files.__doc__
diff --git a/src/lib/Bcfg2/Server/Plugins/Packages/Source.py b/src/lib/Bcfg2/Server/Plugins/Packages/Source.py
index 574dbd851..d6529eb20 100644
--- a/src/lib/Bcfg2/Server/Plugins/Packages/Source.py
+++ b/src/lib/Bcfg2/Server/Plugins/Packages/Source.py
@@ -310,7 +310,7 @@ class Source(Debuggable): # pylint: disable=R0902
opts = xsource.findall("Options")
for el in opts:
repoopts = dict([(k, v)
- for k, v in el.attrib.items()
+ for k, v in list(el.attrib.items())
if k != "clientonly" and k != "serveronly"])
if el.get("clientonly", "false").lower() == "false":
self.server_options.update(repoopts)
diff --git a/src/lib/Bcfg2/Server/Plugins/Packages/Yum.py b/src/lib/Bcfg2/Server/Plugins/Packages/Yum.py
index acb11f1ab..6732f4179 100644
--- a/src/lib/Bcfg2/Server/Plugins/Packages/Yum.py
+++ b/src/lib/Bcfg2/Server/Plugins/Packages/Yum.py
@@ -405,7 +405,7 @@ class YumCollection(Collection):
mainopts['debuglevel'] = "2"
try:
- for opt, val in Bcfg2.Options.setup.yum_options.items():
+ for opt, val in list(Bcfg2.Options.setup.yum_options.items()):
if opt not in self.option_blacklist:
mainopts[opt] = val
except ConfigParser.NoSectionError:
@@ -486,7 +486,7 @@ class YumCollection(Collection):
opts = source.server_options
else:
opts = source.client_options
- for opt, val in opts.items():
+ for opt, val in list(opts.items()):
config.set(reponame, opt, val)
if raw:
@@ -805,7 +805,7 @@ class YumCollection(Collection):
packages[pkg[0]].append(pkg)
except KeyError:
packages[pkg[0]] = [pkg]
- for name, instances in packages.items():
+ for name, instances in list(packages.items()):
pkgattrs = dict(type=self.ptype,
origin='Packages',
name=name)
diff --git a/src/lib/Bcfg2/Server/Plugins/Packages/YumHelper.py b/src/lib/Bcfg2/Server/Plugins/Packages/YumHelper.py
index 89cc23090..93e8092b4 100644
--- a/src/lib/Bcfg2/Server/Plugins/Packages/YumHelper.py
+++ b/src/lib/Bcfg2/Server/Plugins/Packages/YumHelper.py
@@ -290,16 +290,16 @@ class HelperSubcommand(Bcfg2.Options.Subcommand):
except ValueError:
self.logger.error("Error decoding JSON input: %s" %
sys.exc_info()[1])
- print(json.dumps(self.fallback))
+ print((json.dumps(self.fallback)))
return 2
try:
- print(json.dumps(self._run(setup, data)))
+ print((json.dumps(self._run(setup, data))))
except: # pylint: disable=W0702
self.logger.error("Unexpected error running %s: %s" %
(self.__class__.__name__.lower(),
sys.exc_info()[1]), exc_info=1)
- print(json.dumps(self.fallback))
+ print((json.dumps(self.fallback)))
return 2
return 0
@@ -388,7 +388,7 @@ class CLI(Bcfg2.Options.CommandRegistry):
def __init__(self):
Bcfg2.Options.CommandRegistry.__init__(self)
- self.register_commands(globals().values(), parent=HelperSubcommand)
+ self.register_commands(list(globals().values()), parent=HelperSubcommand)
parser = Bcfg2.Options.get_parser("Bcfg2 yum helper",
components=[self])
parser.add_options(self.subcommand_options)
diff --git a/src/lib/Bcfg2/Server/Plugins/Packages/__init__.py b/src/lib/Bcfg2/Server/Plugins/Packages/__init__.py
index 1a9673891..eb8322ad6 100644
--- a/src/lib/Bcfg2/Server/Plugins/Packages/__init__.py
+++ b/src/lib/Bcfg2/Server/Plugins/Packages/__init__.py
@@ -166,7 +166,7 @@ class Packages(Bcfg2.Server.Plugin.Plugin,
def set_debug(self, debug):
rv = Bcfg2.Server.Plugin.Plugin.set_debug(self, debug)
self.sources.set_debug(debug)
- for collection in self.collections.values():
+ for collection in list(self.collections.values()):
collection.set_debug(debug)
return rv
set_debug.__doc__ = Bcfg2.Server.Plugin.Plugin.set_debug.__doc__
@@ -366,7 +366,7 @@ class Packages(Bcfg2.Server.Plugin.Plugin,
gkey = hash(tuple(groups))
if gkey not in gcache:
gcache[gkey] = collection.get_groups(groups)
- for pkgs in gcache[gkey].values():
+ for pkgs in list(gcache[gkey].values()):
base.update(pkgs)
# essential pkgs are those marked as such by the distribution
diff --git a/src/lib/Bcfg2/Server/Plugins/Pkgmgr.py b/src/lib/Bcfg2/Server/Plugins/Pkgmgr.py
index 7c6ab0ed7..436fdbcec 100644
--- a/src/lib/Bcfg2/Server/Plugins/Pkgmgr.py
+++ b/src/lib/Bcfg2/Server/Plugins/Pkgmgr.py
@@ -20,7 +20,7 @@ class FuzzyDict(dict):
if mdata:
return dict.__getitem__(self, mdata.groupdict()['name'])
else:
- print("got non-string key %s" % str(key))
+ print(("got non-string key %s" % str(key)))
return dict.__getitem__(self, key)
def __contains__(self, key):
@@ -29,7 +29,7 @@ class FuzzyDict(dict):
if mdata:
return dict.__contains__(self, mdata.groupdict()['name'])
else:
- print("got non-string key %s" % str(key))
+ print(("got non-string key %s" % str(key)))
return dict.__contains__(self, key)
def get(self, key, default=None):
@@ -66,7 +66,7 @@ class PNode(object):
pdict['Package'] = set()
for child in data.getchildren():
attrs = set(data.attrib.keys()).difference(
- child.attrib.keys() + ['name'])
+ list(child.attrib.keys()) + ['name'])
for attr in attrs:
try:
child.set(attr, data.get(attr))
@@ -284,7 +284,7 @@ class Pkgmgr(Bcfg2.Server.Plugin.PrioDir):
def HandlesEntry(self, entry, metadata):
return (
entry.tag == 'Package' and
- entry.get('name').split(':')[0] in self.Entries['Package'].keys())
+ entry.get('name').split(':')[0] in list(self.Entries['Package'].keys()))
def HandleEntry(self, entry, metadata):
self.BindEntry(entry, metadata)
diff --git a/src/lib/Bcfg2/Server/Plugins/Probes.py b/src/lib/Bcfg2/Server/Plugins/Probes.py
index 270bfa62d..1d9603798 100644
--- a/src/lib/Bcfg2/Server/Plugins/Probes.py
+++ b/src/lib/Bcfg2/Server/Plugins/Probes.py
@@ -10,7 +10,7 @@ import lxml.etree
import Bcfg2.Server
import Bcfg2.Server.Cache
import Bcfg2.Server.Plugin
-from Bcfg2.Compat import unicode, any # pylint: disable=W0622
+from Bcfg2.Compat import str, any # pylint: disable=W0622
import Bcfg2.Server.FileMonitor
from Bcfg2.Logger import Debuggable
from Bcfg2.Server.Statistics import track_statistics
@@ -178,7 +178,7 @@ class DBProbeStore(ProbeStore, Bcfg2.Server.Plugin.DatabaseBacked):
Bcfg2.Server.Cache.expire("Probes", "probedata", hostname)
self._datacache[hostname] = ClientProbeDataSet()
expire_metadata = False
- for probe, pdata in data.items():
+ for probe, pdata in list(data.items()):
self._datacache[hostname][probe] = pdata
try:
record, created = ProbesDataModel.objects.get_or_create(
@@ -196,7 +196,7 @@ class DBProbeStore(ProbeStore, Bcfg2.Server.Plugin.DatabaseBacked):
record.save()
expire_metadata = True
qset = ProbesDataModel.objects.filter(
- hostname=hostname).exclude(probe__in=data.keys())
+ hostname=hostname).exclude(probe__in=list(data.keys()))
if len(qset):
qset.delete()
expire_metadata = True
@@ -283,7 +283,7 @@ class XMLProbeStore(ProbeStore):
Bcfg2.Server.Cache.expire("Probes", "probedata", hostname)
self._datacache[hostname] = ClientProbeDataSet()
expire_metadata = False
- for probe, pdata in data.items():
+ for probe, pdata in list(data.items()):
olddata = self._datacache[hostname].get(probe, ProbeData(''))
self._datacache[hostname][probe] = pdata
expire_metadata |= olddata != data
@@ -308,7 +308,7 @@ class ProbeData(str): # pylint: disable=E0012,R0924
ProbeData objects as XML, JSON, or YAML data """
def __new__(cls, data):
# prevent double encoding utf-8 in python3
- if isinstance(data, unicode) and not isinstance(data, str):
+ if isinstance(data, str) and not isinstance(data, str):
return str.__new__(cls, data.encode('utf-8'))
else:
return str.__new__(cls, data)
diff --git a/src/lib/Bcfg2/Server/Plugins/Properties.py b/src/lib/Bcfg2/Server/Plugins/Properties.py
index e6549b714..2ea383249 100644
--- a/src/lib/Bcfg2/Server/Plugins/Properties.py
+++ b/src/lib/Bcfg2/Server/Plugins/Properties.py
@@ -288,7 +288,7 @@ class Properties(Bcfg2.Server.Plugin.Plugin,
def get_additional_data(self, metadata):
rv = dict()
- for fname, pfile in self.entries.items():
+ for fname, pfile in list(self.entries.items()):
rv[fname] = pfile.get_additional_data(metadata)
return rv
get_additional_data.__doc__ = \
diff --git a/src/lib/Bcfg2/Server/Plugins/PuppetENC.py b/src/lib/Bcfg2/Server/Plugins/PuppetENC.py
index e2d8a058f..c5795c69b 100644
--- a/src/lib/Bcfg2/Server/Plugins/PuppetENC.py
+++ b/src/lib/Bcfg2/Server/Plugins/PuppetENC.py
@@ -41,7 +41,7 @@ class PuppetENC(Bcfg2.Server.Plugin.Plugin,
def _run_encs(self, metadata):
""" Run all Puppet ENCs """
cache = dict(groups=[], params=dict())
- for enc in self.entries.keys():
+ for enc in list(self.entries.keys()):
epath = os.path.join(self.data, enc)
self.debug_log("PuppetENC: Running ENC %s for %s" %
(enc, metadata.hostname))
@@ -73,8 +73,8 @@ class PuppetENC(Bcfg2.Server.Plugin.Plugin,
cache['groups'].extend(groups)
else:
self.debug_log("ENC %s adding groups to %s: %s" %
- (enc, metadata.hostname, groups.keys()))
- for group, params in groups.items():
+ (enc, metadata.hostname, list(groups.keys())))
+ for group, params in list(groups.items()):
cache['groups'].append(group)
if params:
cache['params'].update(params)
diff --git a/src/lib/Bcfg2/Server/Plugins/Rules.py b/src/lib/Bcfg2/Server/Plugins/Rules.py
index cf659251c..776a905ca 100644
--- a/src/lib/Bcfg2/Server/Plugins/Rules.py
+++ b/src/lib/Bcfg2/Server/Plugins/Rules.py
@@ -29,7 +29,7 @@ class Rules(Bcfg2.Server.Plugin.PrioDir):
self._regex_cache = dict()
def HandlesEntry(self, entry, metadata):
- for src in self.entries.values():
+ for src in list(self.entries.values()):
for candidate in src.XMLMatch(metadata).xpath("//%s" % entry.tag):
if self._matches(entry, metadata, candidate):
return True
diff --git a/src/lib/Bcfg2/Server/Plugins/SSHbase.py b/src/lib/Bcfg2/Server/Plugins/SSHbase.py
index 08acc4d8d..ecdb6d9ed 100644
--- a/src/lib/Bcfg2/Server/Plugins/SSHbase.py
+++ b/src/lib/Bcfg2/Server/Plugins/SSHbase.py
@@ -226,7 +226,7 @@ class SSHbase(Bcfg2.Server.Plugin.Plugin,
if pubk.endswith('.pub')]
pubkeys.sort()
for pubkey in pubkeys:
- for entry in sorted(self.entries[pubkey].entries.values(),
+ for entry in sorted(list(self.entries[pubkey].entries.values()),
key=lambda e: (e.specific.hostname or
e.specific.group)):
specific = entry.specific
@@ -421,9 +421,9 @@ class SSHbase(Bcfg2.Server.Plugin.Plugin,
self.entries[entry.get('name')].bind_entry(entry, metadata)
is_bound = True
except Bcfg2.Server.Plugin.PluginExecutionError:
- print("Failed to bind %s: %s") % (
+ print(("Failed to bind %s: %s") % (
lxml.etree.tostring(entry),
- sys.exc_info()[1])
+ sys.exc_info()[1]))
def GenerateHostKeyPair(self, client, filename):
"""Generate new host key pair for client."""
@@ -497,7 +497,7 @@ class SSHbase(Bcfg2.Server.Plugin.Plugin,
try:
open(filename, 'w').write(entry['text'])
if log:
- print("Wrote file %s" % filename)
+ print(("Wrote file %s" % filename))
except KeyError:
self.logger.error("Failed to pull %s. This file does not "
"currently exist on the client" %
diff --git a/src/lib/Bcfg2/Server/Plugins/TemplateHelper.py b/src/lib/Bcfg2/Server/Plugins/TemplateHelper.py
index ff67571fa..030f4d74a 100644
--- a/src/lib/Bcfg2/Server/Plugins/TemplateHelper.py
+++ b/src/lib/Bcfg2/Server/Plugins/TemplateHelper.py
@@ -31,9 +31,9 @@ class HelperModule(Debuggable):
self.defaults = []
default_prov = DefaultTemplateDataProvider()
- self.reserved_defaults = default_prov.get_template_data(
+ self.reserved_defaults = list(default_prov.get_template_data(
lxml.etree.Element("Path", name="/dummy"),
- None, None).keys() + ["path"]
+ None, None).keys()) + ["path"]
def HandleEvent(self, event=None):
""" HandleEvent is called whenever the FAM registers an event.
@@ -119,12 +119,12 @@ class TemplateHelper(Plugin, Connector, DirectoryBacked, TemplateDataProvider):
def get_additional_data(self, _):
return dict([(h._module_name, h) # pylint: disable=W0212
- for h in self.entries.values()])
+ for h in list(self.entries.values())])
def get_template_data(self, *_):
rv = dict()
source = dict()
- for helper in self.entries.values():
+ for helper in list(self.entries.values()):
for key in helper.defaults:
if key not in rv:
rv[key] = getattr(helper, key)
diff --git a/src/lib/Bcfg2/Server/Plugins/Trigger.py b/src/lib/Bcfg2/Server/Plugins/Trigger.py
index 12672de7d..807b196d7 100644
--- a/src/lib/Bcfg2/Server/Plugins/Trigger.py
+++ b/src/lib/Bcfg2/Server/Plugins/Trigger.py
@@ -46,6 +46,6 @@ class Trigger(Bcfg2.Server.Plugin.Plugin,
def end_client_run(self, metadata):
args = [metadata.hostname, '-p', metadata.profile, '-g',
':'.join([g for g in metadata.groups])]
- for notifier in self.entries.keys():
+ for notifier in list(self.entries.keys()):
npath = os.path.join(self.data, notifier)
self.async_run([npath] + args)