Giter Club home page Giter Club logo

Comments (5)

kvisle avatar kvisle commented on June 20, 2024

To put this issue into context;

  • Enabling the plugin through puppet wasn't possible with the module before #909 were fixed (so, this is OK)
  • Changing any of the default behavior is as far as I can tell not possible (unless through some secret undocumented way) with the classic configuration format.

from puppet-rabbitmq.

wyardley avatar wyardley commented on June 20, 2024

Is it working now that #909 is resolved, or is any additional fix needed?

from puppet-rabbitmq.

kvisle avatar kvisle commented on June 20, 2024

Enabling the plugin works (rabbitmq_plugin {'prometheus': ensure => present; } -> fine)

(I want to add that there's a none-zero chance that I've somehow overlooked something with the below claims, but I haven't found a way around this)

Configuring the plugin is another matter. Let's say I want to change the TCP-port the prometheus endpoint listen on. Using the sysctl-format config file, I would do: prometheus.tcp.port = 31337 -- but I can't find a way to change the defaults of this plugin with the classic (and long deprecated) format.

This issue may be a duplicate of #829 at this point -- but it should be mentioned that upstream documentation is either incomplete when it comes to the classic format, or some features there are missing altogether.

from puppet-rabbitmq.

wyardley avatar wyardley commented on June 20, 2024

Dropping support for, say, <= 3.7 (which has now been around since ~ 2017) would probably simplify a number of things (for example, the availability of json formatted output, version being available without rabbitmq already being started / running), etc.

This could go along with breaking changes as proposed in #845 etc.

I have very little time / energy (or incentive) to do anything that big or structural with this module, but will be happy to advise or help in some small ways if someone wants to start taking this on. The new config file format seems more readable, and in some ways would presumably be easier to manage via Puppet as well.

It would probably take some work, in particular, reworking both unit and integration tests, and it will be most easy for someone who can get the integration tests working well locally. In short, it's going to take someone with some fairly good experience with Puppet and its internals (including types / providers), as well as recent experience using Rabbitmq, and some time to spare, to really make the kind of improvements in this module that needs to be made.

I would have assumed that it would be possible to configure it with the old config format, but it also seems non-obvious how to line up the old / new style directives (and maybe it's just not possible?)

from puppet-rabbitmq.

niek1992 avatar niek1992 commented on June 20, 2024

Ran into this same issue as @kvisle, not sure if the problem still exists, but what i did was use the newer 'sysctl' config format (rabbitmq.conf) and fill it with .erb file that contains the stuff i want to change. Configured rabbitmq-env.conf to have ADVANCED_CONFIG_FILE and CONFIG_FILE to point to their respective files. This way the original config can stay put and i can configure Prometheus.tcp.port via Puppet.

Still need to figure out how i can configure rabbitmq class to not touch rabbitmq.config as that's being set when you use the rabbitmq class. I can change the used .erb template but that won't help me afaik.

from puppet-rabbitmq.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.