summaryrefslogtreecommitdiffstats
path: root/ipaserver/install/server
diff options
context:
space:
mode:
authorAlexander Bokovoy <abokovoy@redhat.com>2016-08-05 13:04:19 +0300
committerMartin Basti <mbasti@redhat.com>2016-08-19 15:34:26 +0200
commit7bec8a246d6712f749ec331f5bf066e3357c4ce7 (patch)
treecbb73e447ed63c87c47112e6594b141bf2f74ac1 /ipaserver/install/server
parent86e156c3c5f331e3f169b941be2d9f72e7c8f000 (diff)
support schema files from third-party plugins
Allow upgrade process to include schema files from third-party plugins installed in /usr/share/ipa/schema.d/*.schema. The directory /usr/shar/eipa/schema.d is owned by the server-common subpackage and therefore third-party plugins should depend on freeipa-server-common (ipa-server-common) package in their package dependencies. Resolves: https://fedorahosted.org/freeipa/ticket/5864 Reviewed-By: Martin Basti <mbasti@redhat.com>
Diffstat (limited to 'ipaserver/install/server')
-rw-r--r--ipaserver/install/server/upgrade.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/ipaserver/install/server/upgrade.py b/ipaserver/install/server/upgrade.py
index fbe49bbdc..aec84dc5f 100644
--- a/ipaserver/install/server/upgrade.py
+++ b/ipaserver/install/server/upgrade.py
@@ -1818,6 +1818,9 @@ def upgrade():
realm = api.env.realm
schema_files = [os.path.join(ipautil.SHARE_DIR, f) for f
in dsinstance.ALL_SCHEMA_FILES]
+
+ schema_files.extend(dsinstance.get_all_external_schema_files(
+ paths.EXTERNAL_SCHEMA_DIR))
data_upgrade = IPAUpgrade(realm, schema_files=schema_files)
try: