summaryrefslogtreecommitdiffstats
path: root/install/share
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 /install/share
parent86e156c3c5f331e3f169b941be2d9f72e7c8f000 (diff)
downloadfreeipa-7bec8a246d6712f749ec331f5bf066e3357c4ce7.tar.gz
freeipa-7bec8a246d6712f749ec331f5bf066e3357c4ce7.tar.xz
freeipa-7bec8a246d6712f749ec331f5bf066e3357c4ce7.zip
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 'install/share')
-rw-r--r--install/share/Makefile.am1
-rw-r--r--install/share/schema.d/Makefile.am16
-rw-r--r--install/share/schema.d/README14
3 files changed, 31 insertions, 0 deletions
diff --git a/install/share/Makefile.am b/install/share/Makefile.am
index cd1c164e3..d8845ee16 100644
--- a/install/share/Makefile.am
+++ b/install/share/Makefile.am
@@ -3,6 +3,7 @@ NULL =
SUBDIRS = \
advise \
profiles \
+ schema.d \
$(NULL)
appdir = $(IPA_DATA_DIR)
diff --git a/install/share/schema.d/Makefile.am b/install/share/schema.d/Makefile.am
new file mode 100644
index 000000000..0fef87ff8
--- /dev/null
+++ b/install/share/schema.d/Makefile.am
@@ -0,0 +1,16 @@
+NULL =
+
+SUBDIRS = \
+ $(NULL)
+
+appdir = $(IPA_DATA_DIR)/schema.d
+app_DATA = README \
+ $(NULL)
+
+EXTRA_DIST = \
+ $(app_DATA) \
+ $(NULL)
+
+MAINTAINERCLEANFILES = \
+ *~ \
+ Makefile.in
diff --git a/install/share/schema.d/README b/install/share/schema.d/README
new file mode 100644
index 000000000..19e3e6832
--- /dev/null
+++ b/install/share/schema.d/README
@@ -0,0 +1,14 @@
+This directory is indended to store schema files for 3rd-party plugins.
+
+Each schema file should be named NN-description.ldif where NN is a number 00..90.
+
+The schema files from this directory are merged together with the core IPA
+schema files during the run of ipa-server-upgrade utility. Therefore, they are
+also installed when upgrade happens within the process of ipa-server-install.
+
+The directory is installed as /usr/share/ipa/schema.d and is owned by a
+freeipa-server-common package. Therefore, a 3rd-party plugin would need to
+depend on the freeipa-server-common package if it delivers the schema file(s).
+
+You may place your schema files in a subdirectory too, the code that loads
+schema files processes recursively all subdirectories of schema.d.