You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(rabbitmq): community plugin install + optional feature_flag pre-upgrade (#754)
- Extend `plugins:` pillar to accept dict entries `{name, url, force_cleanup?}`:
downloads the .ez (filename derived from URL via basename) into the active
/usr/lib/rabbitmq/lib/rabbitmq_server-<VER>/plugins/ dir BEFORE the broker
restart, so /etc/rabbitmq/enabled_plugins references all stay resolvable on
start-up. String entries (built-in plugins) keep their original behaviour.
- Cleanup of stale copies runs in both the active versioned dir and
/usr/lib/rabbitmq/plugins/. Default pattern `<name>-<digit>*` keeps unrelated
files (`<name>.bak`, `<name>-foo`) intact; per-plugin `force_cleanup: True`
widens it to `<name>-*`.
- Add optional `rabbitmq:enable_all_feature_flag: True` which runs
`rabbitmqctl enable_feature_flag all` BEFORE `rabbit_pkg`, gated by an
`onlyif: rabbitmqctl status` so fresh installs skip it silently.
Copy file name to clipboardExpand all lines: rabbitmq/pillar.example
+12Lines changed: 12 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -3,6 +3,7 @@
3
3
rabbitmq:
4
4
version: 4.2.3 # optional, specific version or latest, if omitted, install latest first, then keep it without upgrades
5
5
#local_ip: 1.2.3.4 # optional, make sure /etc/hosts has short hostname resolution to this local IP, otherwise rabbitmq will not start, if omitted, 127.0.1.1 is used
6
+
#enable_all_feature_flag: True # optional, runs `rabbitmqctl enable_feature_flag all` BEFORE the package upgrade on the currently-installed broker; required before upgrading across major versions that drop older feature-flag states. Skipped silently on fresh installs.
6
7
config: # optional
7
8
- 'key = val'# see https://github.com/rabbitmq/rabbitmq-server/blob/v3.7.x/docs/rabbitmq.conf.example, each item is copied as is
8
9
admin:
@@ -14,6 +15,17 @@ rabbitmq:
14
15
acme_account: example.com # acme state account
15
16
plugins: # optional
16
17
- rabbitmq_management
18
+
# community plugin, downloaded as .ez and enabled. Pick a URL whose plugin version
0 commit comments