Skip to content

Conversation

@michaelklishin
Copy link
Collaborator

@michaelklishin michaelklishin commented Dec 5, 2025

Currently both commands start a node with all plugins. That's never the user's intent and it can result in confusing plugin conflicts that would never have happened in any real world plugin configuration.

Breaking Changes

These changes only affect RabbitMQ developers and contributors.

Now to list a number of plugins, they (us) must use another make variable, ENABLED_PLUGINS:

# enables rabbitmq_management
gmake start-cluster NODES=3

# enables rabbitmq_management
gmake run-broker

# enables multiple plugins
gmake start-cluster NODES=3 ENABLED_PLUGINS="rabbitmq_management rabbitmq_federation rabbitmq_federation_management rabbitmq_shovel rabbitmq_shovel_management rabbitmq_stream rabbitmq_stream_management"

# enables multiple plugins
gmake run-broker ENABLED_PLUGINS="rabbitmq_management rabbitmq_federation rabbitmq_federation_management rabbitmq_shovel rabbitmq_shovel_management rabbitmq_stream rabbitmq_stream_management"

This had to be done because PLUGINS defines both the enabled plugins at runtime and
a list of dependencies, which we do not mean to modify.

Per discussion with @lhoguin @deadtrickster @mkuratczyk.

…n list

Currently both commands start a node with all plugins.
That's never the user's intent and it can result
in confusing plugin conflicts that would have never
happened in any real world plugin configuration.
@michaelklishin
Copy link
Collaborator Author

@lukebakken @the-mikedavis @SimonUnge FYI, since this affects every contributor, I must bring this proposed change to your attention.

@mergify mergify bot added the make label Dec 5, 2025
@deadtrickster
Copy link
Contributor

lgtm

@gomoripeti
Copy link
Contributor

thank you for this change, I haven't had issues yet with conflicting plugins but often have to disable the trust store plugin to not spam the logs.
I assume this does not affect community plugin workflow. IIRC when I run make run-broker for a community plugin it already did not enable all the plugins, only that particular plugin.

@Zerpet
Copy link
Member

Zerpet commented Dec 5, 2025

I agree to this change. I never had the need to have all plugins enabled 🙂 This PR has cli test failures, which I haven't seen before. I don't think this plugin is the cause, I just wanted to highlight the test failure.

@michaelklishin
Copy link
Collaborator Author

@gomoripeti if you gmake run-broker from a specific plugin directory, only that plugin and its dependencies are enabled. That does not change.

@lukebakken
Copy link
Collaborator

I'm so used to always having PLUGINS=rabbitmq_management rabbitmq_top in my shell history I never even considered having the default change. Thanks!

Copy link
Collaborator

@the-mikedavis the-mikedavis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree, using just a small subset is a better default 👍

@michaelklishin michaelklishin changed the title gmake run-broker, gmake start-cluster: use a very short default plugin list by defaut gmake run-broker, gmake start-cluster: use a very short plugin list by default Dec 5, 2025
@michaelklishin michaelklishin merged commit 6abeaf4 into main Dec 5, 2025
287 of 288 checks passed
@michaelklishin michaelklishin deleted the mk-short-default-plugin-list branch December 5, 2025 17:53
mergify bot pushed a commit that referenced this pull request Dec 5, 2025
(cherry picked from commit 5b68ab6)
mergify bot pushed a commit that referenced this pull request Dec 5, 2025
(cherry picked from commit c193957)
mergify bot pushed a commit that referenced this pull request Dec 5, 2025
(cherry picked from commit 1efda84)
michaelklishin added a commit that referenced this pull request Dec 5, 2025
gmake run-broker, gmake start-cluster: use a very short plugin list by default (backport #15072)
mergify bot pushed a commit that referenced this pull request Dec 5, 2025
(cherry picked from commit 5b68ab6)
(cherry picked from commit 86693f8)
mergify bot pushed a commit that referenced this pull request Dec 5, 2025
(cherry picked from commit c193957)
(cherry picked from commit 2afa8a1)
mergify bot pushed a commit that referenced this pull request Dec 5, 2025
(cherry picked from commit 1efda84)
(cherry picked from commit 2cf7d81)
michaelklishin added a commit that referenced this pull request Dec 5, 2025
gmake run-broker, gmake start-cluster: use a very short plugin list by default (backport #15072) (backport #15078)
@michaelklishin
Copy link
Collaborator Author

I don't think this plugin is the cause, I just wanted to highlight the test failure.

FTR, @Zerpet was right. The change was legit because our standard CLI tools' test suites depend on a specific plugin set being configured, and it relied on the PLUGINS gmake variable for that.

I have addressed that failure before merging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants