rabbitmq-delayed-message-exchange icon indicating copy to clipboard operation
rabbitmq-delayed-message-exchange copied to clipboard

Unable to build external plugins

Open noxdafox opened this issue 5 months ago • 3 comments

Describe the bug

While testing a PR on my plugin: https://github.com/noxdafox/rabbitmq-message-deduplication/pull/105

I could not manage to build it anymore. I could not track the core issue but I noticed this plugins suffers from the same issue.

Once running make, the following error shows up.

 DEP    ranch (2.1.0)
 DEP    rabbitmq_prelaunch ()
Error: Unknown or invalid dependency: rabbitmq_prelaunch.
make[1]: *** [../../erlang.mk:4396: /tmp/rabbitmq-delayed-message-exchange/deps/rabbitmq_prelaunch] Error 78
make[1]: Leaving directory '/tmp/rabbitmq-delayed-message-exchange/.erlang.mk/rabbitmq-server/deps/rabbit'
make: *** [erlang.mk:4512: deps] Error 2

Adding the explicit dependency (dep_rabbitmq_prelaunch) in the Makefile does not solve the issue.

Reproduction steps

Run make within the project.

Expected behavior

Dependencies are fetched and build correctly.

Additional context

No response

noxdafox avatar Jan 14 '24 16:01 noxdafox

@noxdafox - give this a try:

https://github.com/gotthardp/rabbitmq-email/issues/61#issuecomment-1872145258

lukebakken avatar Jan 14 '24 16:01 lukebakken

That does the trick but it's quite cumbersome and complicates the build and testing of external plugins quite a lot.

Is this the new way forward or is it a temporary solution while transitioning to RMQ 4?

noxdafox avatar Jan 20 '24 17:01 noxdafox

One optimal long term solution would be for 3rd party plugins to adopt Bazel. We are not currently sure what will happen with Make. For external plugins, it may or may not remain an option (but there are no plans to remove Make/erlang.mk as an option for developing RabbitMQ itself).

michaelklishin avatar Jan 20 '24 18:01 michaelklishin