basho-labs/riak-chef-cookbook

RedHat package installs are currently broken

Closed this issue · 8 comments

The Riak cookbook depends on yum < 3, while Erlang depends on yum ~> 3.0. This results in an unresolvable solution constraint.

Can you please provide some details around your environment? (Redhat version, Chef version, method of applying your Chef run (solo, server))

For the cookbook's test suite, including the yum < 3.0 constraint resolves the dependencies (Berkshelf) like this:

"erlang": {
  "locked_version": "1.4.2"
},

. . .

"yum": {
  "locked_version": "2.4.4"
},

RHEL 6.5, Chef 11.8.2, Chef server.

I've got a couple cookbooks in my base-server role that require Yum v3. Also, I'm not running Berkshelf, so any dependency resolution provided there was not applied. This was just the result of a "knife cookbook site install riak" after the base-server role had already been applied.

I might recommend pinning the Erlang version restrictions in metadata.rb as well.

Here are the available solution constraints on a fresh run:

Error message: Unable to satisfy constraints on package yum due to solution constraint (riak >= 0.0.0).
Solution constraints that may result in a constraint on yum:
[(riak = 2.4.5) -> (erlang = 1.4.2) -> (yum ~> 3.0.0)],
[(riak = 2.4.5) -> (erlang = 1.4.2) -> (yum-epel = 0.2.0) -> (yum ~> 3.0.0)],
[(riak = 2.4.5) -> (erlang = 1.4.2) -> (yum-erlang_solutions = 0.2.0) -> (yum ~> 3.0.0)],
[(riak = 2.4.5) -> (git = 2.9.0) -> (runit = 1.2.0) -> (yum >= 0.0.0)],
[(riak = 2.4.5) -> (git = 2.9.0) -> (runit = 1.4.6) -> (yum < 3.0.0)],
[(riak = 2.4.5) -> (git = 2.9.0) -> (runit = 1.5.8) -> (yum ~> 3.0.0)],
[(riak = 2.4.5) -> (git = 2.9.0) -> (runit = 1.5.8) -> (yum-epel = 0.2.0) -> (yum ~> 3.0.0)],
[(riak = 2.4.5) -> (git = 2.9.0) -> (yum ~> 3.0.0)],
[(riak = 2.4.5) -> (git = 2.9.0) -> (yum-epel = 0.2.0) -> (yum ~> 3.0.0)],
[(riak = 2.4.5) -> (yum < 3.0.0)]

Would you be able to test the revised constraints in this branch? https://github.com/basho/riak-chef-cookbook/tree/hc-yum-constraint

It now prompts for the appropriate, downgraded cookbook dependency versions, but I’ve still got local cookbooks that depend on Yum >3. I’ll see what I can do about that, but I’m not sure the rework feasible in my environment.

On February 24, 2014 at 10:32:36 AM, Hector Castro (notifications@github.com) wrote:

Would you be able to test the revised constraints in this branch? https://github.com/basho/riak-chef-cookbook/tree/hc-yum-constraint


Reply to this email directly or view it on GitHub.

When run in isolation, this cookbook installs fine, so I think the dependency issues are resolved.

On February 24, 2014 at 10:32:36 AM, Hector Castro (notifications@github.com) wrote:

Would you be able to test the revised constraints in this branch? https://github.com/basho/riak-chef-cookbook/tree/hc-yum-constraint


Reply to this email directly or view it on GitHub.

@rpunt Thanks a lot for helping identify and resolve this issue.

@rpunt yum > 3.0 support has now been merged (before the Riak 2.0 release): #115