projects
/
cascardo
/
ipsilon.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use python logging in install / log cherrypy at right severity
[cascardo/ipsilon.git]
/
ipsilon
/
install
/
ipsilon-server-install
diff --git
a/ipsilon/install/ipsilon-server-install
b/ipsilon/install/ipsilon-server-install
index
5ab163b
..
eeb87dd
100755
(executable)
--- a/
ipsilon/install/ipsilon-server-install
+++ b/
ipsilon/install/ipsilon-server-install
@@
-40,7
+40,7
@@
TEMPLATES = '/usr/share/ipsilon/templates/install'
CONFDIR = '/etc/ipsilon'
DATADIR = '/var/lib/ipsilon'
HTTPDCONFD = '/etc/httpd/conf.d'
CONFDIR = '/etc/ipsilon'
DATADIR = '/var/lib/ipsilon'
HTTPDCONFD = '/etc/httpd/conf.d'
-BINDIR = '/usr/
sbin
'
+BINDIR = '/usr/
libexec
'
STATICDIR = '/usr/share/ipsilon'
WSGI_SOCKET_PREFIX = None
STATICDIR = '/usr/share/ipsilon'
WSGI_SOCKET_PREFIX = None
@@
-79,7
+79,15
@@
def openlogs():
lh = logging.StreamHandler(sys.stderr)
formatter = logging.Formatter('[%(asctime)s] %(message)s')
lh.setFormatter(formatter)
lh = logging.StreamHandler(sys.stderr)
formatter = logging.Formatter('[%(asctime)s] %(message)s')
lh.setFormatter(formatter)
+ lh.setLevel(logging.DEBUG)
logger.addHandler(lh)
logger.addHandler(lh)
+ logger.propagate = False
+ ch = logging.StreamHandler(sys.stdout)
+ formatter = logging.Formatter('%(message)s')
+ ch.setFormatter(formatter)
+ ch.setLevel(logging.INFO)
+ logger.addHandler(ch)
+ cherrypy.log.error_log.setLevel(logging.DEBUG)
def install(plugins, args):
def install(plugins, args):
@@
-178,25
+186,28
@@
def install(plugins, args):
for plugin_name in plugins['Environment Helpers']:
plugin = plugins['Environment Helpers'][plugin_name]
if plugin.configure_server(args) == False:
for plugin_name in plugins['Environment Helpers']:
plugin = plugins['Environment Helpers'][plugin_name]
if plugin.configure_server(args) == False:
- print 'Configuration of environment helper %s failed' % plugin_name
+ logger.info('Configuration of environment helper %s failed' % plugin_name)
logger.info('Configuring login managers')
for plugin_name in args['lm_order']:
logger.info('Configuring login managers')
for plugin_name in args['lm_order']:
- plugin = plugins['Login Managers'][plugin_name]
+ try:
+ plugin = plugins['Login Managers'][plugin_name]
+ except KeyError:
+ sys.exit('Login provider %s not installed' % plugin_name)
if plugin.configure(args) == False:
if plugin.configure(args) == False:
- print 'Configuration of login manager %s failed' % plugin_name
+ logger.info('Configuration of login manager %s failed' % plugin_name)
logger.info('Configuring Info provider')
for plugin_name in plugins['Info Provider']:
plugin = plugins['Info Provider'][plugin_name]
if plugin.configure(args) == False:
logger.info('Configuring Info provider')
for plugin_name in plugins['Info Provider']:
plugin = plugins['Info Provider'][plugin_name]
if plugin.configure(args) == False:
- print 'Configuration of info provider %s failed' % plugin_name
+ logger.info('Configuration of info provider %s failed' % plugin_name)
logger.info('Configuring Authentication Providers')
for plugin_name in plugins['Auth Providers']:
plugin = plugins['Auth Providers'][plugin_name]
if plugin.configure(args) == False:
logger.info('Configuring Authentication Providers')
for plugin_name in plugins['Auth Providers']:
plugin = plugins['Auth Providers'][plugin_name]
if plugin.configure(args) == False:
- print 'Configuration of auth provider %s failed' % plugin_name
+ logger.info('Configuration of auth provider %s failed' % plugin_name)
# Fixup permissions so only the ipsilon user can read these files
files.fix_user_dirs(instance_conf, opts['system_user'])
# Fixup permissions so only the ipsilon user can read these files
files.fix_user_dirs(instance_conf, opts['system_user'])
@@
-232,25
+243,25
@@
def uninstall(plugins, args):
for plugin_name in plugins['Environment Helpers']:
plugin = plugins['Environment Helpers'][plugin_name]
if plugin.unconfigure(args) == False:
for plugin_name in plugins['Environment Helpers']:
plugin = plugins['Environment Helpers'][plugin_name]
if plugin.unconfigure(args) == False:
- print 'Removal of environment helper %s failed' % plugin_name
+ logger.info('Removal of environment helper %s failed' % plugin_name)
logger.info('Removing login managers')
logger.info('Removing login managers')
- for plugin_name in
args['lm_order
']:
+ for plugin_name in
plugins['Login Managers
']:
plugin = plugins['Login Managers'][plugin_name]
if plugin.unconfigure(args) == False:
plugin = plugins['Login Managers'][plugin_name]
if plugin.unconfigure(args) == False:
- print 'Removal of login manager %s failed' % plugin_name
+ logger.info('Removal of login manager %s failed' % plugin_name)
logger.info('Removing Info providers')
for plugin_name in plugins['Info Provider']:
plugin = plugins['Info Provider'][plugin_name]
if plugin.unconfigure(args) == False:
logger.info('Removing Info providers')
for plugin_name in plugins['Info Provider']:
plugin = plugins['Info Provider'][plugin_name]
if plugin.unconfigure(args) == False:
- print 'Removal of info provider %s failed' % plugin_name
+ logger.info('Removal of info provider %s failed' % plugin_name)
logger.info('Removing Authentication Providers')
for plugin_name in plugins['Auth Providers']:
plugin = plugins['Auth Providers'][plugin_name]
if plugin.unconfigure(args) == False:
logger.info('Removing Authentication Providers')
for plugin_name in plugins['Auth Providers']:
plugin = plugins['Auth Providers'][plugin_name]
if plugin.unconfigure(args) == False:
- print 'Removal of auth provider %s failed' % plugin_name
+ logger.info('Removal of auth provider %s failed' % plugin_name)
logger.info('Removing httpd configuration')
os.remove(httpd_conf)
logger.info('Removing httpd configuration')
os.remove(httpd_conf)
@@
-351,6
+362,9
@@
def parse_args(plugins):
if not args['hostname']:
args['hostname'] = socket.getfqdn()
if not args['hostname']:
args['hostname'] = socket.getfqdn()
+ if args['uninstall']:
+ return args
+
if len(args['hostname'].split('.')) < 2:
raise ConfigurationError('Hostname: %s is not a FQDN')
if len(args['hostname'].split('.')) < 2:
raise ConfigurationError('Hostname: %s is not a FQDN')
@@
-373,12
+387,7
@@
def parse_args(plugins):
args['lm_order'] = args['lm_order'].split(',')
if len(args['lm_order']) == 0:
args['lm_order'] = args['lm_order'].split(',')
if len(args['lm_order']) == 0:
- #force the basic pam provider if nothing else is selected
- if 'pam' not in args:
- parser.print_help()
- sys.exit(-1)
- args['lm_order'] = ['pam']
- args['pam'] = 'yes'
+ sys.exit('No login plugins are enabled.')
#FIXME: check instance is only alphanums
#FIXME: check instance is only alphanums
@@
-394,13
+403,13
@@
if __name__ == '__main__':
logger.setLevel(logging.DEBUG)
logger.setLevel(logging.DEBUG)
- logger.
info('In
tallation arguments:')
+ logger.
debug('Ins
tallation arguments:')
for k in sorted(opts.iterkeys()):
for k in sorted(opts.iterkeys()):
- logger.
info
('%s: %s', k, opts[k])
+ logger.
debug
('%s: %s', k, opts[k])
if 'uninstall' in opts and opts['uninstall'] is True:
if not os.path.exists(os.path.join(CONFDIR, opts['instance'])):
if 'uninstall' in opts and opts['uninstall'] is True:
if not os.path.exists(os.path.join(CONFDIR, opts['instance'])):
- print 'Instance %s could not be found' % opts['instance']
+ logger.info('Instance %s could not be found' % opts['instance'])
sys.exit(0)
uninstall(fplugins, opts)
else:
sys.exit(0)
uninstall(fplugins, opts)
else:
@@
-408,10
+417,10
@@
if __name__ == '__main__':
except Exception, e: # pylint: disable=broad-except
logger.exception(e)
if 'uninstall' in opts and opts['uninstall'] is True:
except Exception, e: # pylint: disable=broad-except
logger.exception(e)
if 'uninstall' in opts and opts['uninstall'] is True:
- print 'Uninstallation aborted.'
+ logger.info('Uninstallation aborted.')
else:
else:
- print 'Installation aborted.'
- print 'See log file %s for details' % LOGFILE
+ logger.info('Installation aborted.')
+ logger.info('See log file %s for details' % LOGFILE)
out = 1
except SystemExit:
out = 1
out = 1
except SystemExit:
out = 1
@@
-419,8
+428,8
@@
if __name__ == '__main__':
finally:
if out == 0:
if 'uninstall' in opts and opts['uninstall'] is True:
finally:
if out == 0:
if 'uninstall' in opts and opts['uninstall'] is True:
- print 'Uninstallation complete.'
+ logger.info('Uninstallation complete.')
else:
else:
- print 'Installation complete.'
- print 'Please restart HTTPD to enable the IdP instance.'
+ logger.info('Installation complete.')
+ logger.info('Please restart HTTPD to enable the IdP instance.')
sys.exit(out)
sys.exit(out)