Project

General

Profile

Actions

User story #2284

closed

rudder-inventory-ldap package should depend on any syslog, not just rsyslog

Added by Nicolas PERRON about 12 years ago. Updated almost 5 years ago.

Status:
Rejected
Priority:
5
Assignee:
-
Category:
Packaging
UX impact:
Suggestion strength:
User visibility:
Effort required:
Name check:
Fix check:
Regression:

Description

rsyslog is requires from rudder-inventory-ldap for Debian and SLES but rudder-reports needs rsyslog 4 or later on SLES.

Could it be possible to require rsyslog 4 or later only on rudder-inventory-ldap for both Debian and SLES ?
Or should be rsyslog 4 or later requires on rudder-reports too for both Debian and SLES?

Actions #1

Updated by Jonathan CLARKE about 12 years ago

  • Target version changed from 2.4.0~alpha5 to 2.4.0~alpha6
Actions #2

Updated by Jonathan CLARKE almost 12 years ago

  • Target version changed from 2.4.0~alpha6 to 2.4.0~alpha7

rudder-inventory-ldap does not require rsyslog "really". However, slapd (OpenLDAP server) can only log to a syslog server, so it needs a syslog server. So, ideally, the dependency for rudder-inventory-ldap should be changed to say "I require a syslog server". The version doesn't matter. Can you check if the rsyslog/syslog-ng/syslog packages "Provide" a virtual package we could use instead? For SLES, Debian, Ubuntu and RHEL, of course :)

rudder-reports needs rsyslog, actually *r*syslog, not any old syslog, because we have a specific configuration for it. This is where the version dependency is important. This should be clarified via a comment in the packaging.

Actions #3

Updated by Nicolas PERRON almost 12 years ago

  • Target version changed from 2.4.0~alpha7 to 2.3.7
Actions #4

Updated by Nicolas PERRON almost 12 years ago

  • Status changed from New to Discussion

I'm not sure to understand what is demanded.
rsyslog is different from syslog-ng and there is no virtual package which contains one or the another.

There are rsyslog package which is common to Debian, Ubuntu and RHEL but not SLES and syslog-ng which is common to all of them.

Actions #5

Updated by Jonathan CLARKE almost 12 years ago

  • Priority changed from 3 to 5

Nicolas PERRON wrote:

I'm not sure to understand what is demanded.

Nothing is demanded, you have reported a bug which isn't a bug, so I'm trying to explain to you why things are the way they are :)

rsyslog is different from syslog-ng and there is no virtual package which contains one or the another.

This is not true, you obviously haven't checked. In case you're not aware, virtual packages are implemented by debian/control having a "Provides: " line, like here: http://anonscm.debian.org/gitweb/?p=collab-maint/rsyslog.git;a=blob;f=debian/control;h=70182d5f9e9062e3e8fa40094ceddb37a1bc89ba;hb=refs/heads/master#l25. All syslog packages and Debian (and therefore surely on Ubuntu) probably provide this virtual package. Please check.

As rudder-inventory-ldap only needs "a" syslog daemon, it is sufficient for this package to depend on system-log-daemon. You may have to adapt the package to install syslog configuration correctly for rsyslog and/or syslog-ng, though.

There are rsyslog package which is common to Debian, Ubuntu and RHEL but not SLES and syslog-ng which is common to all of them.

Similarly to deb packages, RPM packages can "provide" virtual packages. Please check what is available in the spec files of rsyslog/syslog-ng/syslog on SLES and RHEL!

Actions #6

Updated by Nicolas PERRON almost 12 years ago

Jonathan CLARKE wrote:

Nicolas PERRON wrote:

I'm not sure to understand what is demanded.

Nothing is demanded, you have reported a bug which isn't a bug, so I'm trying to explain to you why things are the way they are :)

rsyslog is different from syslog-ng and there is no virtual package which contains one or the another.

This is not true, you obviously haven't checked. In case you're not aware, virtual packages are implemented by debian/control having a "Provides: " line, like here: http://anonscm.debian.org/gitweb/?p=collab-maint/rsyslog.git;a=blob;f=debian/control;h=70182d5f9e9062e3e8fa40094ceddb37a1bc89ba;hb=refs/heads/master#l25. All syslog packages and Debian (and therefore surely on Ubuntu) probably provide this virtual package. Please check.

As rudder-inventory-ldap only needs "a" syslog daemon, it is sufficient for this package to depend on system-log-daemon. You may have to adapt the package to install syslog configuration correctly for rsyslog and/or syslog-ng, though.

There are rsyslog package which is common to Debian, Ubuntu and RHEL but not SLES and syslog-ng which is common to all of them.

Similarly to deb packages, RPM packages can "provide" virtual packages. Please check what is available in the spec files of rsyslog/syslog-ng/syslog on SLES and RHEL!

Ok, i see that "rsyslog" Provides "syslog" (https://github.com/Normation/rudder-packages/blob/branches/rudder/2.3/rsyslog-suse/SPECS/rsyslog.spec#L57). syslog seems to be a meta-package (http://rpmfind.net//linux/RPM/opensuse/factory/x86_64/syslogd-1.4.1-758.1.x86_64.html which install sylogd).

So this is correct to use "rsyslog" but shouldn't we use "syslog" which is more generic for all packages which requires "a" syslog daemon ?
Besides, on rudder-reports, Debian dependences doesn't requires "rsyslog" at all (https://github.com/Normation/rudder-packages/blob/branches/rudder/2.3/rudder-reports/debian/control#L11), we should repair this at least.

Actions #7

Updated by Jonathan CLARKE almost 12 years ago

  • Target version changed from 2.3.7 to 2.4.0~alpha7

Nicolas PERRON wrote:

As rudder-inventory-ldap only needs "a" syslog daemon, it is sufficient for this package to depend on system-log-daemon. You may have to adapt the package to install syslog configuration correctly for rsyslog and/or syslog-ng, though.

Similarly to deb packages, RPM packages can "provide" virtual packages. Please check what is available in the spec files of rsyslog/syslog-ng/syslog on SLES and RHEL!

Ok, i see that "rsyslog" Provides "syslog" (https://github.com/Normation/rudder-packages/blob/branches/rudder/2.3/rsyslog-suse/SPECS/rsyslog.spec#L57). syslog seems to be a meta-package (http://rpmfind.net//linux/RPM/opensuse/factory/x86_64/syslogd-1.4.1-758.1.x86_64.html which install sylogd).

So this is correct to use "rsyslog" but shouldn't we use "syslog" which is more generic for all packages which requires "a" syslog daemon ?

That sounds good, for RPMs. Please check (and provide links) that the default rsyslog/syslog-ng/syslogd packages for RHEL/CentOS 5, 6 and SLES 10, 11 all "provide" syslog too. Our rsyslog-suse packages is just one case to check.

Do you agree for the "system-log-daemon" for debian packages? What about providing the correct configuration for each one? I think this is quite a complicated task, and the benefits seem few since all our target OSes use rsyslog by default... so let's keep this at low priority for now. If anyone wants to jump in, patches welcome :)

Besides, on rudder-reports, Debian dependences doesn't requires "rsyslog" at all (https://github.com/Normation/rudder-packages/blob/branches/rudder/2.3/rudder-reports/debian/control#L11), we should repair this at least.

Yes, but this is for lenny compatibility. The rsyslog version included in lenny is too old for our needs (see http://packages.debian.org/search?keywords=rsyslog) so we don't depend on it, but have a system technique to install it from backports on lenny (see https://github.com/Normation/rudder-techniques/blob/master/techniques/system/distributePolicy/1.0/rsyslogConf.st#L62). However, these promises don't specify a version either, which is probably bad.

So, two options:
  1. Give up lenny support for the server. This seems acceptable to me for 2.4 onwards, since lenny is no longer maintained.
  2. Leave the dependencies as is, but add the version requirement to the system technique.

I think 1 will be fine, if you agree please create a new ticket about dropping lenny support and implement (including doc updates, removing Jenkins tasks and this issue).

Actions #8

Updated by Jonathan CLARKE almost 12 years ago

  • Tracker changed from Architecture to User story
  • Subject changed from rsyslog dependencies aren't consistent to rudder-inventory-ldap package should depend on any syslog, not just rsyslog
  • Target version changed from 2.4.0~alpha7 to Ideas (not version specific)

This is by no means urgent, and not required in upcoming versions.

Actions #9

Updated by Jonathan CLARKE over 11 years ago

  • Assignee deleted (Nicolas PERRON)
Actions #10

Updated by Jonathan CLARKE about 11 years ago

  • Project changed from Rudder to 34
  • Category deleted (11)
Actions #11

Updated by Benoît PECCATTE about 9 years ago

  • Project changed from 34 to Rudder
  • Category set to Packaging
Actions #12

Updated by Alexis Mousset almost 5 years ago

  • Status changed from Discussion to Rejected

The ldap package has been merged into the webapp in 5.1, closing.

Actions

Also available in: Atom PDF