def system(self, cmd):
if not self.noscripts and cmd:
logger.log('conf_files: running command %s' % cmd)
- return os.system(cmd)
+ return tools.fork_as(None, os.system, cmd)
else: return 0
def update_conf_file(self, cf_rec):
if dest == '/etc/proper/propd.conf': return
err_cmd = cf_rec['error_cmd']
mode = string.atoi(cf_rec['file_permissions'], base=8)
- uid = pwd.getpwnam(cf_rec['file_owner'])[2]
- gid = grp.getgrnam(cf_rec['file_group'])[2]
+ try:
+ uid = pwd.getpwnam(cf_rec['file_owner'])[2]
+ except:
+ logger.log('conf_files: cannot find user %s -- %s not updated'%(cf_rec['file_owner'],dest))
+ return
+ try:
+ gid = grp.getgrnam(cf_rec['file_group'])[2]
+ except:
+ logger.log('conf_files: cannot find group %s -- %s not updated'%(cf_rec['file_group'],dest))
+ return
url = 'https://%s/%s' % (self.config.PLC_BOOT_HOST, cf_rec['source'])
try:
contents = curlwrapper.retrieve(url, self.config.cacert)