From 044213c789c4f1ee214da3d70f02352b1aaa8673 Mon Sep 17 00:00:00 2001 From: "Chris St. Pierre" Date: Wed, 24 Apr 2013 15:44:06 -0400 Subject: Fixing unit tests --- src/lib/Bcfg2/Server/Admin/Viz.py | 21 +++++++++++---------- src/lib/Bcfg2/Server/Admin/__init__.py | 4 ++-- src/lib/Bcfg2/Server/Core.py | 13 +++++++------ src/lib/Bcfg2/Server/Plugin/helpers.py | 7 ++++--- .../Server/Plugins/Cfg/CfgPrivateKeyCreator.py | 5 +++-- src/lib/Bcfg2/Server/Plugins/Packages/Yum.py | 1 + src/lib/Bcfg2/Server/Plugins/Rules.py | 4 ++-- src/lib/Bcfg2/Server/Plugins/__init__.py | 4 ---- src/lib/Bcfg2/Server/Statistics.py | 1 + src/lib/Bcfg2/Server/__init__.py | 8 -------- src/lib/Bcfg2/Utils.py | 3 ++- 11 files changed, 33 insertions(+), 38 deletions(-) (limited to 'src/lib') diff --git a/src/lib/Bcfg2/Server/Admin/Viz.py b/src/lib/Bcfg2/Server/Admin/Viz.py index cdd8fd0cb..a29fdaceb 100644 --- a/src/lib/Bcfg2/Server/Admin/Viz.py +++ b/src/lib/Bcfg2/Server/Admin/Viz.py @@ -4,6 +4,7 @@ import getopt import Bcfg2.Server.Admin from Bcfg2.Utils import Executor + class Viz(Bcfg2.Server.Admin.MetadataCore): """ Produce graphviz diagrams of metadata structures """ __usage__ = ("[options]\n\n" @@ -79,16 +80,16 @@ class Viz(Bcfg2.Server.Admin.MetadataCore): self.metadata.viz(hosts, bundles, key, only_client, self.colors)] if key: - idata.extend([ - "\tsubgraph cluster_key {", - '\tstyle="filled";', - '\tcolor="lightblue";', - '\tBundle [ shape="septagon" ];', - '\tGroup [shape="ellipse"];', - '\tProfile [style="bold", shape="ellipse"];', - '\tHblock [label="Host1|Host2|Host3",shape="record"];', - '\tlabel="Key";', - "\t}"]) + idata.extend( + ["\tsubgraph cluster_key {", + '\tstyle="filled";', + '\tcolor="lightblue";', + '\tBundle [ shape="septagon" ];', + '\tGroup [shape="ellipse"];', + '\tProfile [style="bold", shape="ellipse"];', + '\tHblock [label="Host1|Host2|Host3",shape="record"];', + '\tlabel="Key";', + "\t}"]) idata.append("}") try: result = exc.run(cmd, inputdata=idata) diff --git a/src/lib/Bcfg2/Server/Admin/__init__.py b/src/lib/Bcfg2/Server/Admin/__init__.py index 3fbdf8fa8..d317cc03b 100644 --- a/src/lib/Bcfg2/Server/Admin/__init__.py +++ b/src/lib/Bcfg2/Server/Admin/__init__.py @@ -116,10 +116,10 @@ class MetadataCore(Mode): Mode.__init__(self) if self.__plugin_whitelist__ is not None: self.setup['plugins'] = [p for p in self.setup['plugins'] - if p in self.__plugin_whitelist__] + if p in self.__plugin_whitelist__] elif self.__plugin_blacklist__ is not None: self.setup['plugins'] = [p for p in self.setup['plugins'] - if p not in self.__plugin_blacklist__] + if p not in self.__plugin_blacklist__] # admin modes don't need to watch for changes. one shot is fine here. self.setup['filemonitor'] = 'pseudo' diff --git a/src/lib/Bcfg2/Server/Core.py b/src/lib/Bcfg2/Server/Core.py index b0cb4cc87..e356a0b4d 100644 --- a/src/lib/Bcfg2/Server/Core.py +++ b/src/lib/Bcfg2/Server/Core.py @@ -492,9 +492,10 @@ class BaseCore(object): self.logger.error("%s: Error invoking hook %s: %s" % (plugin, hook, err)) finally: - Bcfg2.Server.Statistics.stats.add_value("%s:client_run_hook:%s" % - (self.__class__.__name__, hook), - time.time() - start) + Bcfg2.Server.Statistics.stats.add_value( + "%s:client_run_hook:%s" % + (self.__class__.__name__, hook), + time.time() - start) @Bcfg2.Server.Statistics.track_statistics() def validate_structures(self, metadata, data): @@ -665,9 +666,9 @@ class BaseCore(object): (entry.tag, entry.get('name'))) finally: Bcfg2.Server.Statistics.stats.add_value("%s:Bind:%s" % - (self.__class__.__name__, - entry.tag), - time.time() - start) + (self.__class__.__name__, + entry.tag), + time.time() - start) def BuildConfiguration(self, client): """ Build the complete configuration for a client. diff --git a/src/lib/Bcfg2/Server/Plugin/helpers.py b/src/lib/Bcfg2/Server/Plugin/helpers.py index e5ea5188a..ade14b865 100644 --- a/src/lib/Bcfg2/Server/Plugin/helpers.py +++ b/src/lib/Bcfg2/Server/Plugin/helpers.py @@ -6,7 +6,6 @@ import sys import copy import glob import genshi -import logging import operator import lxml.etree import Bcfg2.Server @@ -30,6 +29,7 @@ try: except ImportError: HAS_DJANGO = False + class track_statistics(object): # pylint: disable=C0103 """ Decorator that tracks execution time for the given :class:`Plugin` method with :mod:`Bcfg2.Statistics` for reporting @@ -1221,7 +1221,7 @@ class Specificity(CmpMixin): return "".join(rv) -class SpecificData(object): +class SpecificData(Debuggable): """ A file that is specific to certain clients, groups, or all clients. """ @@ -1237,6 +1237,7 @@ class SpecificData(object): :param encoding: The encoding to use for data in this file :type encoding: string """ + Debuggable.__init__(self) self.name = name self.specific = specific self.data = None @@ -1258,7 +1259,7 @@ class SpecificData(object): except UnicodeDecodeError: self.data = open(self.name, mode='rb').read() except: # pylint: disable=W0201 - LOGGER.error("Failed to read file %s" % self.name) + self.logger.error("Failed to read file %s" % self.name) class EntrySet(Debuggable): diff --git a/src/lib/Bcfg2/Server/Plugins/Cfg/CfgPrivateKeyCreator.py b/src/lib/Bcfg2/Server/Plugins/Cfg/CfgPrivateKeyCreator.py index 735f23a1c..862726788 100644 --- a/src/lib/Bcfg2/Server/Plugins/Cfg/CfgPrivateKeyCreator.py +++ b/src/lib/Bcfg2/Server/Plugins/Cfg/CfgPrivateKeyCreator.py @@ -51,7 +51,7 @@ class CfgPrivateKeyCreator(CfgCreator, StructFile): if (HAS_CRYPTO and self.setup.cfp.has_section("sshkeys") and self.setup.cfp.has_option("sshkeys", "passphrase")): - return Bcfg2.Encrypption.get_passphrases()[ + return Bcfg2.Server.Encryption.get_passphrases()[ self.setup.cfp.get("sshkeys", "passphrase")] return None @@ -196,7 +196,8 @@ class CfgPrivateKeyCreator(CfgCreator, StructFile): privkey = open(filename).read() if HAS_CRYPTO and self.passphrase: self.debug_log("Cfg: Encrypting key data at %s" % filename) - privkey = ssl_encrypt(privkey, self.passphrase) + privkey = Bcfg2.Server.Encryption.ssl_encrypt(privkey, + self.passphrase) specificity['ext'] = '.crypt' self.write_data(privkey, **specificity) diff --git a/src/lib/Bcfg2/Server/Plugins/Packages/Yum.py b/src/lib/Bcfg2/Server/Plugins/Packages/Yum.py index ab96d3f59..b544eb47e 100644 --- a/src/lib/Bcfg2/Server/Plugins/Packages/Yum.py +++ b/src/lib/Bcfg2/Server/Plugins/Packages/Yum.py @@ -105,6 +105,7 @@ FL = '{http://linux.duke.edu/metadata/filelists}' PULPSERVER = None PULPCONFIG = None + def _setup_pulp(): """ Connect to a Pulp server and pass authentication credentials. This only needs to be called once, but multiple calls won't hurt diff --git a/src/lib/Bcfg2/Server/Plugins/Rules.py b/src/lib/Bcfg2/Server/Plugins/Rules.py index fb294972c..3d4e8671d 100644 --- a/src/lib/Bcfg2/Server/Plugins/Rules.py +++ b/src/lib/Bcfg2/Server/Plugins/Rules.py @@ -25,8 +25,8 @@ class Rules(Bcfg2.Server.Plugin.PrioDir): candidate): return True elif (entry.tag == "Path" and - entry.get('name').rstrip("/") == \ - candidate.get("name").rstrip("/")): + entry.get('name').rstrip("/") == + candidate.get("name").rstrip("/")): # special case for Path tags: # http://trac.mcs.anl.gov/projects/bcfg2/ticket/967 return True diff --git a/src/lib/Bcfg2/Server/Plugins/__init__.py b/src/lib/Bcfg2/Server/Plugins/__init__.py index ad51cf368..fdb20ed0a 100644 --- a/src/lib/Bcfg2/Server/Plugins/__init__.py +++ b/src/lib/Bcfg2/Server/Plugins/__init__.py @@ -1,5 +1 @@ """Imports for Bcfg2.Server.Plugins.""" - -from Bcfg2.Compat import walk_packages - -__all__ = [m[1] for m in walk_packages(path=__path__)] diff --git a/src/lib/Bcfg2/Server/Statistics.py b/src/lib/Bcfg2/Server/Statistics.py index dfb698b61..e34135d4b 100644 --- a/src/lib/Bcfg2/Server/Statistics.py +++ b/src/lib/Bcfg2/Server/Statistics.py @@ -5,6 +5,7 @@ server core. This data is exposed by import time from Bcfg2.Compat import wraps + class Statistic(object): """ A single named statistic, tracking minimum, maximum, and average execution time, and number of invocations. """ diff --git a/src/lib/Bcfg2/Server/__init__.py b/src/lib/Bcfg2/Server/__init__.py index 6bd0ff9eb..bf8d0191d 100644 --- a/src/lib/Bcfg2/Server/__init__.py +++ b/src/lib/Bcfg2/Server/__init__.py @@ -1,14 +1,6 @@ """This is the set of modules for Bcfg2.Server.""" import lxml.etree -from Bcfg2.Compat import walk_packages - -<<<<<<< HEAD -__all__ = ["Admin", "Core", "FileMonitor", "Plugin", "Plugins", - "Reports", "XMLParser", "XI", "XI_NAMESPACE"] -======= -__all__ = [m[1] for m in walk_packages(path=__path__)] ->>>>>>> maint XI = 'http://www.w3.org/2001/XInclude' XI_NAMESPACE = '{%s}' % XI diff --git a/src/lib/Bcfg2/Utils.py b/src/lib/Bcfg2/Utils.py index ef88a1a36..68282331e 100644 --- a/src/lib/Bcfg2/Utils.py +++ b/src/lib/Bcfg2/Utils.py @@ -246,7 +246,8 @@ class Executor(object): self.logger.debug('< %s' % line) for line in stderr.splitlines(): # pylint: disable=E1103 self.logger.info(line) - return ExecutorResult(stdout, stderr, proc.wait()) + return ExecutorResult(stdout, stderr, + proc.wait()) # pylint: disable=E1101 finally: if timeout is not None: timer.cancel() -- cgit v1.2.3-1-g7c22