Project

General

Profile

Actions

Bug #4290

closed

Rudder server cannot be installed on CentOS and Red Hat 6.5 since dependency 'jre' does not exist anymore

Added by Nicolas CHARLES almost 11 years ago. Updated almost 9 years ago.

Status:
Released
Priority:
1 (highest)
Category:
Packaging
Target version:
Severity:
UX impact:
User visibility:
Effort required:
Priority:
Name check:
Fix check:
Regression:

Description

Users have problems installing Rudder 2.8.1 on Centos, with the following error:

---> Package rudder-jetty.noarch 1398866025:2.8.1.release-1.EL.6 will be installed
--> Processing Dependency: jre7 for package: 1398866025:rudder-jetty-2.8.1.release-1.EL.6.noarch
--> Finished Dependency Resolution
Error: Package: 1398866025:rudder-jetty-2.8.1.release-1.EL.6.noarch (Rudder_2.8)
           Requires: jre7

A more complete error log is there:
http://pastebin.com/cjR90f51


Related issues 1 (0 open1 closed)

Related to Rudder - Bug #2941: The dependencies on Java are not correct on CentOS6.3ReleasedJonathan CLARKE2012-10-04Actions
Actions #1

Updated by François ARMAND almost 11 years ago

  • Target version set to 2.8.2
Actions #2

Updated by François ARMAND almost 11 years ago

Matthieu, could you look to that one and also check for how long it does not work ?

Actions #4

Updated by Matthieu CERDA almost 11 years ago

It seems RedHat removed a Provides: statement a bit too quickly, see https://bugzilla.redhat.com/show_bug.cgi?id=1030634.

Even if jre7/java7 comes back, it seems we should not rely on it and use "java" instead

Actions #5

Updated by Matthieu CERDA almost 11 years ago

  • Status changed from 8 to In progress
  • Target version changed from 2.8.2 to 2.4.13

This impacts 2.4 onwards.

Correcting.

Actions #6

Updated by Matthieu CERDA almost 11 years ago

I have no mean with RPM to create as in Debian conditionnal dependencies, the best approach I have here is to depend on jre / java and ONLY for el6 depend directly on java-1.7.0-openjdk

Actions #7

Updated by Matthieu CERDA almost 11 years ago

(Note: there is no macro available to discriminate minor versions of el6 ... The best I got is rhel = 6 or something else, nothing like rhel = 6.5. Thus, I can only act based on major OS versions.

What I intend to do is:

%if 0%{?rhel}  == 6
Requires: java-1.7.0-openjdk       
%else
Requires: jre >= 1.6
%endif

Actions #8

Updated by Matthieu CERDA almost 11 years ago

  • Status changed from In progress to Pending technical review
  • Assignee changed from Matthieu CERDA to François ARMAND
  • % Done changed from 0 to 100
  • Pull Request set to https://github.com/Normation/rudder-packages/pull/202

PR ready

Actions #9

Updated by Matthieu CERDA almost 11 years ago

Notes to clarify: Contrary to SLES, EL does not provide any OS version level as a RPM macro, as seen in the output of rpm --showrc:

# SLES 11 SP1:
rpm --showrc|grep 11
-14: suse_version    1110 <= This is a SLES 11 SP 1
# RHEL/CentOS 6.5
-14: centos    6
-14: centos_ver    6
-14: dist    .EL.6
-14: distribution    .EL.6
-14: rhel    6

As you can see, EL does not consider minor versions relevant, as packaging and versions are normally consistent on all of them. What we got here is what I felt to be an issue in both our packaging, that uses a temporary virtual package from EL6 and RedHat that savagely nerfed the virtual package on 6.5 without thinking of people using it.

Thus, I have no other choice than providing three Requires:
  • A future proof one, jre >= 1.7 for EL7 onwards
  • A "best effort" one, java-1.7.0-openjdk for EL6 (the same package for all EL6, as packaging is consistent for packages on major versions
  • A SLES / other RPMs one, jre >= 1.6, principally to match the JRE's provided by Oracle and NEVER the 1.5 ones provided by IBM on SuSE SLES.
Actions #10

Updated by François ARMAND almost 11 years ago

I'm validating that one. The logic is OK, the package name seems ok based on what I found on the net.

And basically, without that correction, Rudder can't be installed on RHEL (any one).

So let's merge it.

Actions #11

Updated by Matthieu CERDA almost 11 years ago

  • Status changed from Pending technical review to Pending release

Applied in changeset commit:f4b421b1f52da350e0905c2d0a527639e126b7fa.

Actions #12

Updated by Anonymous almost 11 years ago

Applied in changeset commit:e7f7db1b12ea617fd28247e95358ae11d8b3d0f1.

Actions #13

Updated by Vincent MEMBRÉ almost 11 years ago

  • Target version changed from 2.4.13 to 2.6.10

Since we will not make any more releases of 2.4 version, moving all those issues to 2.6

Actions #14

Updated by Vincent MEMBRÉ almost 11 years ago

  • Subject changed from Dependency error on CentOS on JRE for rudder-jetty to Rudder server cannot be installed on Centos 6.5 since dependency 'jre' is not existing anymore
Actions #15

Updated by Vincent MEMBRÉ almost 11 years ago

  • Subject changed from Rudder server cannot be installed on Centos 6.5 since dependency 'jre' is not existing anymore to Rudder server cannot be installed on CentOS and Red Hat 6.5 since dependency 'jre' does not exist anymore
Actions #16

Updated by Vincent MEMBRÉ almost 11 years ago

  • Status changed from Pending release to Released

This bug has been fixed in Rudder 2.6.10 which was released today.
Check out:

Actions #17

Updated by Benoît PECCATTE over 9 years ago

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

Updated by Benoît PECCATTE almost 9 years ago

  • Target version changed from 2.6.10 to 2.4.12
Actions

Also available in: Atom PDF