noxdafox / rabbitmq-cloudwatch-exporter

RabbitMQ Plugin for publishing cluster metrics to AWS CloudWatch
Mozilla Public License 2.0
42 stars 9 forks source link

Duplicate and dependency errors #35

Closed falcocoris closed 3 years ago

falcocoris commented 3 years ago

Hi

I've been using your plugin for some time now, but I've had to reinstall my cluster. I encountered a problem as the file download "ex_aws-2.1.0.ez" was giving me a 404. I've realized that on the 1.0.0 release, you changed it for the 2.2.3 version, so I've updated that.

Now i get the following error, and I'm stuck with it :


Problem reading some plugins: [{"/usr/lib/rabbitmq/plugins/jsx-2.9.0.ez",
                                duplicate_plugin}]
Error:
Error:
{:missing_dependencies, [:telemetry], [:ex_aws]}

I've checked if the installation procedure had changed but it hasn't so I'm not sure what's what.

noxdafox commented 3 years ago

I will fix it asap.

noxdafox commented 3 years ago

Release updated, could you please confirm it works?

falcocoris commented 3 years ago

looks like it does the trick, yep :)

I have a question though : Why do you keep replacing binaries in the 1.0.0 release instead of making new release each time ?

This is problematic as a fixed version in infra as code will result in an error at installation in the future, which is what lead me here in the first place.

I would advise to make a new release each time, like 1.0.1, 1.0.2 or so.

noxdafox commented 3 years ago

These are rare occasions in which we need to update one of the plugin dependency versions due to bugs or vulnerabilities. As the plugin package does not change, its version remains the same. RabbitMQ unfortunately does not provide a robust way to handle plugins packaging. Hence we need to provide all dependencies generated at build time together with the plugin package.

In particular, this was related to issue #34. There might be a second case for issue #33.

A script which downloads all the assets from a release (via for example GH APIs) rather than point to the single ones would most likely mitigate these issues.