Bug 1448058 - openldap schema directory is hard to depend on
Summary: openldap schema directory is hard to depend on
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: openldap
Version: 28
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Matus Honek
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1553431 1553432
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-05-04 13:02 UTC by Petr Menšík
Modified: 2018-10-11 09:16 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2018-10-11 09:16:30 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Petr Menšík 2017-05-04 13:02:34 UTC
Description of problem:
Several packages add schema files into /etc/openldap/schema. They add usually single file into that directory. Many packages do not have proper dependency or own that directory.

Version-Release number of selected component (if applicable):
openldap-2.4.44-10.fc25.x86_64

How reproducible:
always

Steps to Reproduce:
1. repoquery -qf /etc/openldap/schema/
2. repoquery -ql bind-sdb openldap-servers samba | grep /etc/openldap/schema
3. repoquery -qf '/etc/openldap/schema/*.schema'

Actual results:
#1
samba-2:4.5.8-1.fc25.x86_64
openldap-servers-0:2.4.44-10.fc25.x86_64
bind-sdb-32:9.10.4-4.P8.fc25.x86_64
bind-sdb-32:9.10.4-2.P3.fc25.x86_64
openldap-servers-0:2.4.44-2.fc25.x86_64
samba-2:4.5.0-3.fc25.x86_64

#2
/etc/openldap/schema
/etc/openldap/schema/dnszone.schema
/etc/openldap/schema
/etc/openldap/schema/collective.ldif
/etc/openldap/schema/collective.schema
/etc/openldap/schema/corba.ldif
/etc/openldap/schema/corba.schema
/etc/openldap/schema/core.ldif
/etc/openldap/schema/core.schema
/etc/openldap/schema/cosine.ldif
/etc/openldap/schema/cosine.schema
/etc/openldap/schema/duaconf.ldif
/etc/openldap/schema/duaconf.schema
/etc/openldap/schema/dyngroup.ldif
/etc/openldap/schema/dyngroup.schema
/etc/openldap/schema/inetorgperson.ldif
/etc/openldap/schema/inetorgperson.schema
/etc/openldap/schema/java.ldif
/etc/openldap/schema/java.schema
/etc/openldap/schema/misc.ldif
/etc/openldap/schema/misc.schema
/etc/openldap/schema/nis.ldif
/etc/openldap/schema/nis.schema
/etc/openldap/schema/openldap.ldif
/etc/openldap/schema/openldap.schema
/etc/openldap/schema/pmi.ldif
/etc/openldap/schema/pmi.schema
/etc/openldap/schema/ppolicy.ldif
/etc/openldap/schema/ppolicy.schema
/etc/openldap/schema
/etc/openldap/schema/samba.schema

#3
fedfs-utils-python-0:0.10.5-4.fc25.noarch
perdition-ldap-0:2.1-6.fc24.i686
openldap-servers-0:2.4.44-10.fc25.x86_64
samba-2:4.5.8-1.fc25.x86_64
perdition-ldap-0:2.1-6.fc24.x86_64
bind-sdb-32:9.10.4-4.P8.fc25.x86_64
perdition-ldap-0:2.1-7.fc25.i686
dhcp-server-12:4.3.5-1.fc25.x86_64
bind-sdb-32:9.10.4-2.P3.fc25.x86_64
perdition-ldap-0:2.1-7.fc25.x86_64
openldap-servers-0:2.4.44-2.fc25.x86_64
samba-2:4.5.0-3.fc25.x86_64


Expected results:
/etc/openldap/schema is provided only by single package.
Other packages would depend on it as required by Packaging guidelines.

Additional info:
I think the best option would be to move empty /etc/openldap/schema directory into openldap package. Most of packages depend on ldap library anyway. All other packages would not have to depend on openldap-servers package when still would not have to own that directory themselves. Some packages add schema into directory not owned at all.

I think rawhide is better place for a change, but I will leave change of it to you.

Comment 1 Matus Honek 2017-08-03 13:00:07 UTC
Hi Petr,

I believe this section [1] of Packaging Guidelines fits our case. Mostly, packages do not need actual server but they want to provide a schema in case user installs the server, in which case they only need to be able to place the schema file somewhere and hence need to own the directory. In case they actually need the OpenLDAP server they should depend on it, instead. Do you agree?

Could you please provide a link to the exact case in the Packaging Guidelines that backs your statement in 'Expected results'?

Also, please note that schema files are required only for LDAP servers (e.g. OpenLDAP server or 389DS), and not the LDAP libraries (libldap in openldap package) which are depended on much more often.

Thanks.

[1] https://fedoraproject.org/wiki/Packaging:Guidelines#The_directory_is_owned_by_a_package_which_is_not_required_for_your_package_to_function

Comment 2 Jan Kurik 2017-08-15 08:10:52 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 27 development cycle.
Changing version to '27'.

Comment 4 Fedora End Of Life 2018-02-20 15:25:28 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 28 development cycle.
Changing version to '28'.

Comment 5 Matus Honek 2018-03-08 21:06:33 UTC
Current status review.

Correct packages:
- packages providing both the dir and a file: openldap-servers, samba, bind-sdb
- packages depending on the package: bdii, migrationtools, nordugrid-arc-*
- dead packages: fedfs-utils-python

Incorrect packages:
- packages providing only a file: perdition-ldap (bug 1553431), dhcp-server (bug 1553432)

Comment 6 Matus Honek 2018-10-11 09:16:30 UTC
Both "Incorrect packages", as in comment 5, have fixed the issue. Thus, closing as CURRENTRELEASE. See the related bugs for the actual NVRs in which they were fixed.


Note You need to log in before you can comment on or make changes to this bug.