X-Git-Url: http://git.cascardo.info/?p=cascardo%2Fipsilon.git;a=blobdiff_plain;f=ipsilon%2Finstall%2Fipsilon-server-install;h=56b0dd1b8a828ba31608b06ff5d7570a012086d9;hp=307f1e40b7fa6b8b00ee043e33342f86ab7ea86e;hb=3fd51fe0d4593cdc39c28f11deafe27845f25584;hpb=7ad204c13898245cdea5acfa90be83e767276994 diff --git a/ipsilon/install/ipsilon-server-install b/ipsilon/install/ipsilon-server-install index 307f1e4..56b0dd1 100755 --- a/ipsilon/install/ipsilon-server-install +++ b/ipsilon/install/ipsilon-server-install @@ -109,12 +109,12 @@ def install(plugins, args): 'sysuser': args['system_user'], 'ipsilondir': BINDIR, 'staticdir': STATICDIR, - 'admindb': args['database_url'] % { + 'admindb': args['admin_dburi'] or args['database_url'] % { 'datadir': args['data_dir'], 'dbname': 'adminconfig'}, - 'usersdb': args['database_url'] % { + 'usersdb': args['users_dburi'] or args['database_url'] % { 'datadir': args['data_dir'], 'dbname': 'userprefs'}, - 'transdb': args['database_url'] % { - 'datadir': args['data_dir'], 'dbname': 'transactions'}, + 'transdb': args['transaction_dburi'] or args['database_url'] % + {'datadir': args['data_dir'], 'dbname': 'transactions'}, 'secure': "False" if args['secure'] == "no" else "True", 'debugging': "True" if args['server_debugging'] else "False"} # Testing database sessions @@ -128,7 +128,7 @@ def install(plugins, args): else: confopts['sessopt'] = 'path' confopts['sessval'] = os.path.join(args['data_dir'], 'sessions') - # Whetehr to disable security (for testing) + # Whether to disable security (for testing) if args['secure'] == 'no': confopts['secure'] = "False" confopts['sslrequiressl'] = "" @@ -325,6 +325,13 @@ def parse_args(plugins): help="Uninstall the server and all data") parser.add_argument('--yes', action='store_true', help="Always answer yes") + parser.add_argument('--admin-dburi', + help='Configuration database URI (override template)') + parser.add_argument('--users-dburi', + help='User configuration database URI (override ' + 'template)') + parser.add_argument('--transaction-dburi', + help='Transaction database URI (override template)') lms = [] @@ -347,6 +354,11 @@ def parse_args(plugins): if len(args['hostname'].split('.')) < 2: raise ConfigurationError('Hostname: %s is not a FQDN') + for plugin_group in plugins: + for plugin_name in plugins[plugin_group]: + plugin = plugins[plugin_group][plugin_name] + plugin.validate_args(args) + try: pwd.getpwnam(args['system_user']) except KeyError: