diff options
| author | Simo Sorce <simo@redhat.com> | 2015-06-11 15:45:38 -0400 |
|---|---|---|
| committer | Jan Cholasta <jcholast@redhat.com> | 2015-10-15 14:24:33 +0200 |
| commit | d03619fff3a1eb7d21c2ba21f8867ae8018779b8 (patch) | |
| tree | 0b322eaaa8846d05191e7c551b691f2b80213469 /ipapython | |
| parent | 2cd0d20a2a454369488b77e841a9cce643b26d34 (diff) | |
| download | freeipa-d03619fff3a1eb7d21c2ba21f8867ae8018779b8.tar.gz freeipa-d03619fff3a1eb7d21c2ba21f8867ae8018779b8.tar.xz freeipa-d03619fff3a1eb7d21c2ba21f8867ae8018779b8.zip | |
Implement replica promotion functionality
This patch implements a new flag --promote for the ipa-replica-install command
that allows an administrative user to 'promote' an already joined client to
become a full ipa server.
The only credentials used are that of an administrator. This code relies on
ipa-custodia being available on the peer master as well as a number of other
patches to allow a computer account to request certificates for its services.
Therefore this feature is marked to work only with domain level 1 and above
servers.
Ticket: https://fedorahosted.org/freeipa/ticket/2888
Signed-off-by: Simo Sorce <simo@redhat.com>
Reviewed-By: Jan Cholasta <jcholast@redhat.com>
Diffstat (limited to 'ipapython')
| -rw-r--r-- | ipapython/install/cli.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/ipapython/install/cli.py b/ipapython/install/cli.py index a9efa74f3..0047eecb0 100644 --- a/ipapython/install/cli.py +++ b/ipapython/install/cli.py @@ -25,6 +25,7 @@ if six.PY3: def install_tool(configurable_class, command_name, log_file_name, positional_arguments=None, usage=None, debug_option=False, + use_private_ccache=True, uninstall_log_file_name=None, uninstall_positional_arguments=None, uninstall_usage=None): if (uninstall_log_file_name is not None or @@ -52,6 +53,7 @@ def install_tool(configurable_class, command_name, log_file_name, usage=usage, debug_option=debug_option, uninstall_kwargs=uninstall_kwargs, + use_private_ccache=use_private_ccache, ) ) @@ -76,6 +78,7 @@ class ConfigureTool(admintool.AdminTool): configurable_class = None debug_option = False positional_arguments = None + use_private_ccache = True @staticmethod def _transform(configurable_class): @@ -305,10 +308,12 @@ class ConfigureTool(admintool.AdminTool): signal.signal(signal.SIGTERM, self.__signal_handler) - # Use private ccache - with private_ccache(): + if self.use_private_ccache: + with private_ccache(): + super(ConfigureTool, self).run() + cfgr.run() + else: super(ConfigureTool, self).run() - cfgr.run() @staticmethod |
