diff options
author | Simo Sorce <simo@redhat.com> | 2014-04-28 13:58:51 -0400 |
---|---|---|
committer | Simo Sorce <simo@redhat.com> | 2014-05-01 21:05:47 -0400 |
commit | aaed708431955d4cc01e82f003c9d35851073510 (patch) | |
tree | 766f730d49469ab09cd26271d37e178f942d5578 /ipsilon/install | |
parent | f139821010d71a07e011b257132b4acbc872a21b (diff) | |
download | ipsilon-aaed708431955d4cc01e82f003c9d35851073510.tar.gz ipsilon-aaed708431955d4cc01e82f003c9d35851073510.tar.xz ipsilon-aaed708431955d4cc01e82f003c9d35851073510.zip |
Add Environment Helpers installer framework
Environment helpers are meta-plugins that allow to set ipsilon in
well defined environments.
For example when ipsilon is install in a FreeIPA or AD domains and
authentication methods, cetificate, keytabs etc, can be pre-configured
and deployed at the same time the server is installed with minimal
effort and wellknown methods.
These are run before any of the other plugins as they can chage the
configuration option for any of the plugins, enable or disable plugins,
or pre-configure some elements.
Signed-off-by: Simo Sorce <simo@redhat.com>
Diffstat (limited to 'ipsilon/install')
-rwxr-xr-x | ipsilon/install/ipsilon-server-install | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/ipsilon/install/ipsilon-server-install b/ipsilon/install/ipsilon-server-install index d9e4585..ce78aba 100755 --- a/ipsilon/install/ipsilon-server-install +++ b/ipsilon/install/ipsilon-server-install @@ -19,6 +19,7 @@ from ipsilon.login.common import LoginMgrsInstall from ipsilon.providers.common import ProvidersInstall +from ipsilon.helpers.common import EnvHelpersInstall from ipsilon.util.data import Store from ipsilon.tools import files import argparse @@ -125,6 +126,11 @@ def install(plugins, args): db = Store() db.save_user_preferences(args['admin_user'], {'is_admin': 1}) + logger.info('Configuring environment helpers') + for plugin_name in plugins['Environment Helpers']: + plugin = plugins['Environment Helpers'][plugin_name] + plugin.configure_server(args) + logger.info('Configuring login managers') for plugin_name in args['lm_order']: plugin = plugins['Login Managers'][plugin_name] @@ -150,6 +156,7 @@ def uninstall(plugins, args): def find_plugins(): plugins = { + 'Environment Helpers': EnvHelpersInstall().plugins, 'Login Managers': LoginMgrsInstall().plugins, 'Auth Providers': ProvidersInstall().plugins } @@ -170,8 +177,6 @@ def parse_args(plugins): help="User account used to run the server") parser.add_argument('--admin-user', default='admin', help="User account that is assigned admin privileges") - parser.add_argument('--ipa', choices=['yes', 'no'], default='yes', - help='Detect and use an IPA server for authentication') parser.add_argument('--uninstall', action='store_true', help="Uninstall the server and all data") |