Closed Iristyle closed 9 years ago
I don't like checking for definitions because that's like saying that the language is not idempotent in its declarations, even though the declarations may be identical. I'm not sure of the solution though; possibly I could try to realize the curl package resource, but that would require fixes to both redis and riak, to depend on some 'internet fetching mechanism'...
Closing since I don't have a good solution that is generic: suggestions are welcome and then this issue can be re-opened.
Recommend you go with the "depend on some 'internet fetching mechanism'" approach and include a class that can handle that and mark the dependency in your Modulefile.
I actually just did this today with a different module and used maestrodev/wget.
@ghoneycutt That's true. I could also use my own 'httpfile' resource, I guess.
Alright, I am reopening this issue, aiming to use my own 'httpfile' to be extended with hashing md5 and sha1 (not just sha2).
Would recommend that httpfile be its own module and that the riak module would include that one. Interested in checking out your module and how it is different from @maestrodev's :)
It's been a while since this was reported, so I wanted to re-affirm that this is still a problem. maestrodev/wget is a good option for replacing the homebrew one in this module.
I did a little looking, and apparently it's pretty common for packages to end up being accidentally redeclared.
From my Puppet console output
I'm using https://github.com/logicalparadox/puppet-redis to install Redis.
In my Puppet file, I'm installing Redis first, then Riak.
Now, if I reorder how my packages are called in my Puppet script to install Riak first and then Redis, it works just fine.
If you look at the
init.pp
for Redis https://github.com/logicalparadox/puppet-redis/blob/master/manifests/init.pp#L6It has the code to prevent the re-declaration.
So I think that this is all that needs to be added to this package as well...but I'm not a Puppet guy ;0
BTW - This is a demo / Vagrant box and not a real production box -- definitely wouldn't run servers with Riak and Redis on them ;0