summaryrefslogtreecommitdiffstats
path: root/base/deploy/src/scriptlets
diff options
context:
space:
mode:
authorEndi Sukma Dewata <edewata@redhat.com>2013-02-21 19:47:35 -0500
committerEndi Sukma Dewata <edewata@redhat.com>2013-03-07 17:51:32 -0500
commitc87a65024177ed67cd4ec0f7d533d973f8e1f971 (patch)
treedcceb0a14d514c62773ee07a1fcb09e787dae6e4 /base/deploy/src/scriptlets
parentb18a44db98f19c4d9b9d8d586d2bd1772a5d9f41 (diff)
downloadpki-c87a65024177ed67cd4ec0f7d533d973f8e1f971.tar.gz
pki-c87a65024177ed67cd4ec0f7d533d973f8e1f971.tar.xz
pki-c87a65024177ed67cd4ec0f7d533d973f8e1f971.zip
Added security domain info validation.
The installer script has been modified to validate security domain info in both interactive and silent installation. A basic Python API has been added to access the REST interface. Ticket #473
Diffstat (limited to 'base/deploy/src/scriptlets')
-rw-r--r--base/deploy/src/scriptlets/pkilogging.py40
-rw-r--r--base/deploy/src/scriptlets/pkiparser.py23
2 files changed, 39 insertions, 24 deletions
diff --git a/base/deploy/src/scriptlets/pkilogging.py b/base/deploy/src/scriptlets/pkilogging.py
index 3c146a12c..319616145 100644
--- a/base/deploy/src/scriptlets/pkilogging.py
+++ b/base/deploy/src/scriptlets/pkilogging.py
@@ -43,42 +43,34 @@ def format(dict):
return pp.pformat(new_dict)
# PKI Deployment Logging Functions
-def enable_pki_logger(log_dir, log_name, log_level, console_log_level, logger):
+def enable_pki_logger(log_dir, log_name, log_level, console_log_level, name):
if not os.path.isdir(log_dir):
try:
os.makedirs(log_dir)
except OSError:
return OSError
- # Establish 'file' logger using 'basicConfig()'
- logging.LoggerAdapter(logging.getLogger(''), {'indent' : ''})
- logging.basicConfig(level=log_level,
- format='%(asctime)s %(name)-12s ' +\
- '%(levelname)-8s ' +\
- '%(indent)s%(message)s',
- datefmt='%Y-%m-%d %H:%M:%S',
- filename=log_dir + "/" + log_name,
- filemode='w')
+ # Configure logger
+ logger = logging.getLogger(name)
+ logger.setLevel(log_level)
- # Establish 'console' logger
+ # Configure console handler
console = logging.StreamHandler()
- logging.LoggerAdapter(console, {'indent' : ''})
console.setLevel(console_log_level)
console_format = logging.Formatter('%(name)-12s: ' +\
'%(levelname)-8s ' +\
'%(indent)s%(message)s')
console.setFormatter(console_format)
- logging.getLogger('').addHandler(console)
+ logger.addHandler(console)
- # Establish 'file' logger
-# file = logging.FileHandler(log_dir + "/" + log_name, 'w')
-# logging.LoggerAdapter(file, {'indent' : ''})
-# file.setLevel(log_level)
-# file_format = logging.Formatter('%(asctime)s %(name)-12s: ' +\
-# '%(levelname)-8s ' +\
-# '%(indent)s%(message)s',
-# '%Y-%m-%d %H:%M:%S')
-# file.setFormatter(file_format)
-# logging.getLogger('').addHandler(file)
+ # Configure file handler
+ file = logging.FileHandler(log_dir + "/" + log_name, 'w')
+ file.setLevel(log_level)
+ file_format = logging.Formatter('%(asctime)s %(name)-12s: ' +\
+ '%(levelname)-8s ' +\
+ '%(indent)s%(message)s',
+ '%Y-%m-%d %H:%M:%S')
+ file.setFormatter(file_format)
+ logger.addHandler(file)
- return logging.getLogger(logger)
+ return logger
diff --git a/base/deploy/src/scriptlets/pkiparser.py b/base/deploy/src/scriptlets/pkiparser.py
index eee56ca3e..32a3da154 100644
--- a/base/deploy/src/scriptlets/pkiparser.py
+++ b/base/deploy/src/scriptlets/pkiparser.py
@@ -38,6 +38,9 @@ import pkilogging
import pkiconfig as config
import pkimessages as log
+import pki.account
+import pki.client
+import pki.system
class PKIConfigParser:
@@ -391,6 +394,26 @@ class PKIConfigParser:
def ds_close(self):
self.ds_connection.unbind_s()
+ def sd_connect(self):
+ self.sd_connection = pki.client.PKIConnection(
+ protocol='https',
+ hostname=config.pki_master_dict['pki_security_domain_hostname'],
+ port=config.pki_master_dict['pki_security_domain_https_port'],
+ subsystem='ca')
+
+ def sd_get_info(self):
+ sd = pki.system.SecurityDomainClient(self.sd_connection)
+ return sd.getSecurityDomainInfo()
+
+ def sd_authenticate(self):
+ self.sd_connection.authenticate(
+ config.pki_master_dict['pki_security_domain_user'],
+ config.pki_master_dict['pki_security_domain_password'])
+
+ account = pki.account.AccountClient(self.sd_connection)
+ account.login()
+ account.logout()
+
def compose_pki_master_dictionary(self):
"Create a single master PKI dictionary from the sectional dictionaries"
try: