freeipa/ipaserver/install/ipa_server_install.py
Rob Crittenden b96906156b
Improve console logging for ipa-server-install
The server installation and uninstallation overlaps both the
server and client installers. The output could be confusing
with a server uninstall finishing with the message:

The ipa-client-install command was successful

This was in part due to the fact that the server was not
configured with a console format and verbose was False which
meant that no logger messages were displayed at all.

In order to suppress client installation errors and avoid
confusion add a list of errors to ignore. If a server install
was not successful and hadn't gotten far enough to do the
client install then we shouldn't complain loudly about it.

https://pagure.io/freeipa/issue/6760

Signed-off-by: Rob Crittenden <rcritten@redhat.com>
Reviewed-By: Stanislav Laznicka <slaznick@redhat.com>
Reviewed-By: Christian Heimes <cheimes@redhat.com>
2018-06-20 08:38:03 +02:00

52 lines
1.4 KiB
Python

#
# Copyright (C) 2015 FreeIPA Contributors see COPYING for license
#
from __future__ import absolute_import
from ipapython.install import cli
from ipapython.install.core import extend_knob
from ipaplatform.paths import paths
from ipaserver.install.server import ServerMasterInstall
class CompatServerMasterInstall(ServerMasterInstall):
all_ip_addresses = False
nisdomain = None
no_nisdomain = False
no_sudo = False
request_cert = False
dm_password = extend_knob(
ServerMasterInstall.dm_password, # pylint: disable=no-member
cli_names=['--ds-password', '-p'],
)
admin_password = ServerMasterInstall.admin_password
admin_password = extend_knob(
admin_password,
# pylint: disable=no-member
cli_names=list(admin_password.cli_names) + ['-a'],
)
ip_addresses = extend_knob(
ServerMasterInstall.ip_addresses, # pylint: disable=no-member
description="Master Server IP Address. This option can be used "
"multiple times",
)
ServerInstall = cli.install_tool(
CompatServerMasterInstall,
command_name='ipa-server-install',
log_file_name=paths.IPASERVER_INSTALL_LOG,
console_format='%(message)s',
debug_option=True,
verbose=True,
uninstall_log_file_name=paths.IPASERVER_UNINSTALL_LOG,
)
def run():
ServerInstall.run_cli()