Skip to content

Installation of latest Rabbit (3.7) fails on EL7 due to erlang 20 dependency #788

@tobixen

Description

@tobixen

Affected Puppet, Ruby, OS and module versions/distributions

  • Puppet: 5.5.12
  • Ruby: ruby 2.0.0p648
  • Distribution: EL7 (CentOS7)
  • Module version: master (7613f08)

How to reproduce (e.g Puppet code you use)

rabbitmq::repos_ensure is set to true in hieradata, except for that I'm doing a plain
"include rabbitmq"

What are you seeing

It seems like the 3.7-version of rabbitmq requires a newer erlang than what comes out of the box with EL7. I believe this can be fixed by setting up the correct repository for newer erlang as well.

Error: Execution of '/usr/bin/yum -d 0 -e 0 -y install rabbitmq-server' returned 1: Error: Package: rabbitmq-server-3.7.14-1.el7.noarch (rabbitmq_rabbitmq-server)
           Requires: erlang >= 20.3
           Available: erlang-R16B-03.18.el7.x86_64 (epel)
               erlang = R16B-03.18.el7
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest
Error: /Stage[main]/Rabbitmq::Install/Package[rabbitmq-server]/ensure: change from 'purged' to 'present' failed: Execution of '/usr/bin/yum -d 0 -e 0 -y install rabbitmq-server' returned 1: Error: Package: rabbitmq-server-3.7.14-1.el7.noarch (rabbitmq_rabbitmq-server)
           Requires: erlang >= 20.3
           Available: erlang-R16B-03.18.el7.x86_64 (epel)
               erlang = R16B-03.18.el7
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

What behaviour did you expect instead

I did expect the puppet module to organize the latest erlang version for me as well.

Output log

Notice: /Stage[main]/Rabbitmq::Repo::Rhel/Yumrepo[rabbitmq]/ensure: created
Info: Yumrepo[rabbitmq](provider=inifile): changing mode of /etc/yum.repos.d/rabbitmq_rabbitmq-server.repo from 600 to 644
Notice: /Stage[main]/Rabbitmq::Repo::Rhel/Exec[rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc]/returns: executed successfully
(...)
Notice: /Stage[main]/Rabbitmq::Config/File[/etc/rabbitmq]: Dependency Package[rabbitmq-server] has failures: true

Any additional information you'd like to impart

  • Without setting rabbitmq::repos_ensure to true, rabbitmq gets up and running, but on version 3.3.5.
  • I tried setting up the repos for erlang and rabbitmq outside this module, then I got rabbit 3.7 installed, though it did not want to start due to a permission problem with /var/lib/rabbitmq/.erlang.cookie

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions