Skip to content

Commit 604dce8

Browse files
committed
rabbit_feature_flags: Expose more feature flag properties to the management API
[Why] It allows to better communicate each feature flag specificities and make a better more user-friendly management UI.
1 parent 4e9f208 commit 604dce8

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

deps/rabbit/src/rabbit_ff_extra.erl

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,11 @@
2424
-type cli_info_entry() :: [{name, rabbit_feature_flags:feature_name()} |
2525
{state, enabled | disabled | unavailable} |
2626
{stability, rabbit_feature_flags:stability()} |
27+
{require_level,
28+
rabbit_feature_flags:require_level()} |
29+
{experiment_level,
30+
rabbit_feature_flags:experiment_level()} |
31+
{callbacks, [rabbit_feature_flag:callback_name()]} |
2732
{provided_by, atom()} |
2833
{desc, string()} |
2934
{doc_url, string()}].
@@ -61,6 +66,11 @@ cli_info(FeatureFlags) ->
6166
FeatureProps = maps:get(FeatureName, FeatureFlags),
6267
State = rabbit_feature_flags:get_state(FeatureName),
6368
Stability = rabbit_feature_flags:get_stability(FeatureProps),
69+
RequireLevel = rabbit_feature_flags:get_require_level(
70+
FeatureProps),
71+
ExperimentLevel = rabbit_feature_flags:get_experiment_level(
72+
FeatureProps),
73+
Callbacks = maps:keys(maps:get(callbacks, FeatureProps, #{})),
6474
App = maps:get(provided_by, FeatureProps),
6575
Desc = maps:get(desc, FeatureProps, ""),
6676
DocUrl = maps:get(doc_url, FeatureProps, ""),
@@ -69,6 +79,9 @@ cli_info(FeatureFlags) ->
6979
{doc_url, unicode:characters_to_binary(DocUrl)},
7080
{state, State},
7181
{stability, Stability},
82+
{require_level, RequireLevel},
83+
{experiment_level, ExperimentLevel},
84+
{callbacks, Callbacks},
7285
{provided_by, App}],
7386
[FFInfo | Acc]
7487
end, [], lists:sort(maps:keys(FeatureFlags))).

0 commit comments

Comments
 (0)