I was glancing at some of the new modules (e.g. the 'rabbit_*' stuff)
and I noticed the 'requirements' in the DOCUMENTATION string are empty.
In other words, it would seem to me that the module is self-sufficient,
which it isn't: it needs the rabbitmqctl program.
I then checked get_url, which I originally wrote, and therein it says:
requirements: [ urllib2, urlparse ]
which is cool, but I find no further use of 'requirements' when we
generate the docs, which is NOT cool; mea culpa!
If you agree, I think we should require 'requirements' so that
people know what the module needs to run, and I'll take it upon myself
to munge that into the doc generators.
-JP
+1, It'd be even nicer if the requirements specified where they are
needed. i.e. is it required on the target or on the manager machine?
Jimmy.
+1, It'd be even nicer if the requirements specified where they are
needed. i.e. is it required on the target or on the manager machine?
Good catch! Maybe
requirements_manager: [ a,b ]
requirements_host: [c, d]
-JP
The reason I didn’t add any requirements to the rabbitmq* modules was because I thought it would be implied since that utility comes with RabbitMQ itself and therefore would be installed with the host you are managing. I am fine with being explicit about it and will add the information.
I am fine with being explicit about it and will add the information.
Just to clarify, I wasn't picking on *you*, Chris.
-JP
+1, I got burned the other day because I forgot to install the requirements for the apt-repository module.
Oddly, the docstring for that module, says it requires python-apt, and the unstructured notes at the bottom say that it requires python-software-properties.
Not backward compatible, JP.
requirements: # managed node requirements
control_requirements: # control machine requirements
perhaps. Make it so!
Not backward compatible, JP.
Point.
requirements: # managed node requirements
control_requirements: # control machine requirements
perhaps. Make it so!
Your wish, is my pull-request. It will be done!
-JP
I know, it was a good example. It was something I did think about though.
I’ve just configured and installed rabbit and used your modules. I wouldn’t (and didn’t) expect it to auto install rabbitmq-server.
I’m using the normal apt package distribution, but there have been cases in the past where we needed to install a specific version of rabbitmq, so I would leave the choice of installation to the user.
or maybe if its installed then the requirements are satisfied and it does nothing.