summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPetr Vobornik <pvoborni@redhat.com>2017-04-26 18:47:53 +0200
committerTomas Krizek <tkrizek@redhat.com>2017-04-28 14:56:02 +0200
commit3a4c8e39c3e38ec651cfcbb3cac59e0e92e04fe0 (patch)
tree975ab9911ced8faee63f12a3f4dc1bda37fb8fb9
parentb4e447fa6fc7d659ae6a3b6285d4ddda0baa0be4 (diff)
downloadfreeipa-3a4c8e39c3e38ec651cfcbb3cac59e0e92e04fe0.tar.gz
freeipa-3a4c8e39c3e38ec651cfcbb3cac59e0e92e04fe0.tar.xz
freeipa-3a4c8e39c3e38ec651cfcbb3cac59e0e92e04fe0.zip
restore: restart/reload gssproxy after restore
So that gssproxy picks up new configuration and therefore related usages like authentication of CLI against server works https://pagure.io/freeipa/issue/6902 Reviewed-By: Tomas Krizek <tkrizek@redhat.com>
-rw-r--r--ipaplatform/base/services.py21
-rw-r--r--ipaserver/install/ipa_restore.py3
2 files changed, 21 insertions, 3 deletions
diff --git a/ipaplatform/base/services.py b/ipaplatform/base/services.py
index 068b9723c..fca6298fc 100644
--- a/ipaplatform/base/services.py
+++ b/ipaplatform/base/services.py
@@ -154,6 +154,10 @@ class PlatformService(object):
return
+ def reload_or_restart(self, instance_name="", capture_output=True,
+ wait=True):
+ return
+
def restart(self, instance_name="", capture_output=True, wait=True):
return
@@ -298,14 +302,25 @@ class SystemdService(PlatformService):
instance_name,
update_service_list=update_service_list)
- def restart(self, instance_name="", capture_output=True, wait=True):
- ipautil.run([paths.SYSTEMCTL, "restart",
- self.service_instance(instance_name)],
+ def _restart_base(self, instance_name, operation, capture_output=True,
+ wait=False):
+
+ ipautil.run([paths.SYSTEMCTL, operation,
+ self.service_instance(instance_name)],
skip_output=not capture_output)
if wait and self.is_running(instance_name):
self.wait_for_open_ports(self.service_instance(instance_name))
+ def reload_or_restart(self, instance_name="", capture_output=True,
+ wait=True):
+ self._restart_base(instance_name, "reload-or-restart",
+ capture_output, wait)
+
+ def restart(self, instance_name="", capture_output=True, wait=True):
+ self._restart_base(instance_name, "restart",
+ capture_output, wait)
+
def is_running(self, instance_name="", wait=True):
instance = self.service_instance(instance_name, 'is-active')
diff --git a/ipaserver/install/ipa_restore.py b/ipaserver/install/ipa_restore.py
index 378c013b6..96fc493c7 100644
--- a/ipaserver/install/ipa_restore.py
+++ b/ipaserver/install/ipa_restore.py
@@ -401,6 +401,9 @@ class Restore(admintool.AdminTool):
services.knownservices.pki_tomcatd.enable()
services.knownservices.pki_tomcatd.disable()
+ self.log.info('Restarting GSS-proxy')
+ gssproxy = services.service('gssproxy', api)
+ gssproxy.reload_or_restart()
self.log.info('Starting IPA services')
run(['ipactl', 'start'])
self.log.info('Restarting SSSD')