Changeset 1264
- Timestamp:
- 12/22/06 11:17:58 (6 years ago)
- File:
-
- 1 edited
-
ccsd/trunk/crcnetd/_utils/ccsd_cfengine.py (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
ccsd/trunk/crcnetd/_utils/ccsd_cfengine.py
r1263 r1264 28 28 import os 29 29 import os.path 30 import shutil 30 31 from stat import * 31 32 import svn.core as core … … 1162 1163 "".join(output)) 1163 1164 1165 def checkCfengineKeys(): 1166 """Ensures that CFengine keys for the server exist""" 1167 session = getSessionE(ADMIN_SESSION_ID) 1168 1169 # Check for existing changeset 1170 commit = 0 1171 if session.changeset == 0: 1172 session.begin("Creating CFengine policy server keys") 1173 commit = 1 1174 1175 policy_ip = getIP(config_get_required("network", "server_name")) 1176 1177 try: 1178 # Determine directories to store things in 1179 workdir = session.revision.getWorkingDir() 1180 cfkeydir = "%s/ppkeys" % (workdir) 1181 ensureDirExists(cfkeydir) 1182 1183 # Check if the policy server keys exist 1184 key = "%s/root-%s" % (cfkeydir, policy_ip) 1185 if not os.path.exists("%s.pub" % key) or \ 1186 not os.path.exists("%s.priv" % key): 1187 # Generate the keys 1188 genCfKey(cfkeydir, policy_ip) 1189 log_info("Created CFengine keys for policy server (%s)" % \ 1190 policy_ip) 1191 1192 # Check if the policy server keys are linked to localhost 1193 if not os.path.exists("%s/localhost.pub" % cfkeydir) or \ 1194 not os.path.exists("%s/localhost.priv" % cfkeydir): 1195 # Copy policy server keys to here, using shutil rather than 1196 # svn as the policy server keys may have been created above 1197 # and not checked in yet. 1198 shutil.copy("%s.pub" % key, 1199 "%s/localhost.pub" % cfkeydir) 1200 shutil.copy("%s.priv" % key, 1201 "%s/localhost.priv" % cfkeydir) 1202 log_info("Copied CFengine policy server keys for localhost") 1203 1204 except: 1205 log_error("Failed to setup CFengine keys for policy server", 1206 sys.exc_info()) 1207 # Rollback any changes 1208 if commit == 1: 1209 session.rollback() 1210 return False 1211 1212 # Commit changeset if necessary 1213 if commit==1: 1214 session.commit() 1215 1216 return True 1217 1164 1218 def getActiveRevision(hostname=None): 1165 1219 """Returns the active revision for the cfengine input directory … … 2678 2732 initTemplates() 2679 2733 2734 # Ensure that CFengine keys exists for this server 2735 checkCfengineKeys() 2736 2680 2737 # Register Cfengine Resource Server 2681 2738 registerResource("cfengine", cfserver)
Note: See TracChangeset
for help on using the changeset viewer.
