summaryrefslogtreecommitdiffstats
path: root/ipaserver/install/ipa_restore.py
diff options
context:
space:
mode:
authorPetr Viktorin <pviktori@redhat.com>2014-11-10 13:29:58 +0100
committerJan Cholasta <jcholast@redhat.com>2014-11-11 09:54:29 +0000
commita8e2a242bec1ce68d6b14be27e1b5b8d94f0deb9 (patch)
tree8eb6bc9a1634671a61c6ca6bc8ee7bc20043fa06 /ipaserver/install/ipa_restore.py
parent82c3c2b242c3f2b8113c2021cf4d17cab54c2a86 (diff)
downloadfreeipa-a8e2a242bec1ce68d6b14be27e1b5b8d94f0deb9.tar.gz
freeipa-a8e2a242bec1ce68d6b14be27e1b5b8d94f0deb9.tar.xz
freeipa-a8e2a242bec1ce68d6b14be27e1b5b8d94f0deb9.zip
ipa-restore: Don't crash if AD trust is not installed
https://fedorahosted.org/freeipa/ticket/4668 Reviewed-By: Jan Cholasta <jcholast@redhat.com>
Diffstat (limited to 'ipaserver/install/ipa_restore.py')
-rw-r--r--ipaserver/install/ipa_restore.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/ipaserver/install/ipa_restore.py b/ipaserver/install/ipa_restore.py
index 7898de0f6..cfe3dff9f 100644
--- a/ipaserver/install/ipa_restore.py
+++ b/ipaserver/install/ipa_restore.py
@@ -37,13 +37,17 @@ from ipaserver.install.replication import (wait_for_task, ReplicationManager,
get_cs_replication_manager)
from ipaserver.install import installutils
from ipaserver.install import httpinstance
-from ipaserver.install import adtrustinstance
from ipapython import ipaldap
import ipapython.errors
from ipaplatform.tasks import tasks
from ipaplatform import services
from ipaplatform.paths import paths
+try:
+ from ipaserver.install import adtrustinstance
+except ImportError:
+ adtrustinstance = None
+
def recursive_chown(path, uid, gid):
'''
@@ -645,7 +649,12 @@ class Restore(admintool.AdminTool):
def restore_selinux_booleans(self):
bools = dict(httpinstance.SELINUX_BOOLEAN_SETTINGS)
if 'ADTRUST' in self.backup_services:
- bools.update(adtrustinstance.SELINUX_BOOLEAN_SETTINGS)
+ if adtrustinstance:
+ bools.update(adtrustinstance.SELINUX_BOOLEAN_SETTINGS)
+ else:
+ self.log.error(
+ 'The AD trust package was not found, '
+ 'not setting SELinux booleans.')
try:
tasks.set_selinux_booleans(bools)
except ipapython.errors.SetseboolError as e: