commit: d0530210fad7fefead404d07c0af4b57c8f35fca
Author: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 23 02:40:01 2014 +0000
Commit: Brian Dolbec <brian.dolbec <AT> gmail <DOT> com>
CommitDate: Tue Dec 23 02:48:33 2014 +0000
URL:
http://sources.gentoo.org/gitweb/?p=proj/gentoo-keys.git;a=commit;h=d0530210
gkeys/config.py: Fix the config defaults to do % substitution for the defaults
If it did not find and loada valid config file, the defaults did not have the %
subtitution applied.
The logger calls were not using the logger setting in the config. So I changed
that
---
gkeys/gkeys/base.py | 2 +-
gkeys/gkeys/config.py | 17 +++++++++++------
2 files changed, 12 insertions(+), 7 deletions(-)
diff --git a/gkeys/gkeys/base.py b/gkeys/gkeys/base.py
index 95142f9..a5e3bfa 100644
--- a/gkeys/gkeys/base.py
+++ b/gkeys/gkeys/base.py
@@ -203,7 +203,7 @@ class CliBase(object):
logger = set_logger('gkeys', self.config['logdir'], args.debug,
dirmode=int(self.config.get_key('permissions', 'directories'),0),
filemask=int(self.config.get_key('permissions', 'files'),0))
- config.logger = logger
+ self.config.logger = logger
fileops.logger = logger
seed.logger = logger
lib.logger = logger
diff --git a/gkeys/gkeys/config.py b/gkeys/gkeys/config.py
index 775ea1f..e6789ff 100644
--- a/gkeys/gkeys/config.py
+++ b/gkeys/gkeys/config.py
@@ -13,6 +13,8 @@
import os
import sys
+from collections import OrderedDict
+
# py3.2
if sys.hexversion >= 0x30200f0:
import configparser as ConfigParser
@@ -27,7 +29,6 @@ from pyGPG.config import GPGConfig
from gkeys import log
from gkeys.utils import path
-logger = log.logger
# establish the eprefix, initially set so eprefixify can
@@ -60,7 +61,9 @@ class GKeysConfig(GPGConfig):
""" Class initialiser """
GPGConfig.__init__(self)
+ self.logger = None
self.root = root or ''
+ self.defaults = OrderedDict(self.defaults)
if config:
self.defaults['config'] = config
self.defaults['configdir'] = os.path.dirname(config)
@@ -115,6 +118,8 @@ class GKeysConfig(GPGConfig):
# fix the config path
self.defaults['config'] = self.defaults['config'] \
% {'configdir': self.defaults['configdir']}
+ for key in self.defaults:
+ self.defaults[key] = self._sub_(self.defaults[key])
defaults = self.get_defaults()
# remove some defaults from being entered into the configparser
for key in ['gpg_defaults', 'only_usable', 'refetch', 'tasks']:
@@ -130,8 +135,8 @@ class GKeysConfig(GPGConfig):
def _get_(self, key, subkey=None):
if subkey:
if self.configparser and self.configparser.has_option(key, subkey):
- if logger:
- logger.debug("Found %s in configparser... %s"
+ if self.logger:
+ self.logger.debug("Found %s in configparser... %s"
% (key, str(self.configparser.get(key, subkey))))
return self._sub_(self.configparser.get(key, subkey))
#print("CONFIG: key, subkey", key, subkey)
@@ -142,10 +147,10 @@ class GKeysConfig(GPGConfig):
else:
return super(GKeysConfig, self)._get_(key, subkey)
elif self.configparser and self.configparser.has_option('DEFAULT',
key):
- if logger:
- logger.debug("Found %s in configparser... %s"
+ if self.logger:
+ self.logger.debug("Found %s in configparser... %s"
% (key, str(self.configparser.get('DEFAULT', key))))
- #logger.debug("type(key)= %s"
+ #self.logger.debug("type(key)= %s"
# % str(type(self.configparser.get('DEFAULT', key))))
return self.configparser.get('DEFAULT', key)
else: