From: S.Çağlar Onur Date: Wed, 4 Aug 2010 18:25:35 +0000 (-0400) Subject: return None for minion only setups to solve following exception; X-Git-Tag: v0.28~12 X-Git-Url: https://pwan.org/git/?a=commitdiff_plain;h=f6ee54c2457bec39c869d9526d47e977e87c702c;p=certmaster.git return None for minion only setups to solve following exception; 2010-07-19 18:21:24,406 - ERROR - Exception occured: Traceback (most recent call last): File "/usr/lib/python2.5/site-packages/func/minion/server.py", line 196, in __call__ rc = self.__method(*args) File "/usr/lib/python2.5/site-packages/func/minion/modules/func_module.py", line 43, in wrapper return fn(*args) File "/usr/lib/python2.5/site-packages/func/minion/modules/overlord.py", line 36, in map_minions cm = certmaster.CertMaster() File "/usr/lib/python2.5/site-packages/certmaster/certmaster.py", line 79, in __init__ self.cacert = certs.retrieve_cert_from_file(self.ca_cert_file) File "/usr/lib/python2.5/site-packages/certmaster/certs.py", line 86, in retrieve_cert_from_file fo = open(certfile, 'r') IOError: [Errno 2] No such file or directory: '/etc/pki/certmaster/ca/certmaster.crt' --- diff --git a/certmaster/certmaster.py b/certmaster/certmaster.py index b0a216b..981efd8 100644 --- a/certmaster/certmaster.py +++ b/certmaster/certmaster.py @@ -64,6 +64,10 @@ class CertMaster(object): self.logger = logger.Logger().logger self.audit_logger = logger.AuditLogger() + # if ca_key_file exists and ca_cert_file is missing == minion only setup + if os.path.exists(self.ca_key_file) and not os.path.exists(self.ca_cert_file): + return + try: if not os.path.exists(self.cfg.cadir): os.makedirs(self.cfg.cadir)