diff options
| author | Daniil Fedotov <dfedotov@pivotal.io> | 2016-03-23 09:53:55 +0000 |
|---|---|---|
| committer | Daniil Fedotov <dfedotov@pivotal.io> | 2016-03-24 10:49:23 +0000 |
| commit | a2222acd34d5b281e66860e3c88f903d6d8d2e01 (patch) | |
| tree | 49e8e1f92a4e7aec2e092d911c7c907514c617ac /src | |
| parent | de353f83314c38a2aa64aa6f97b72ed7839b5add (diff) | |
| download | rabbitmq-server-git-a2222acd34d5b281e66860e3c88f903d6d8d2e01.tar.gz | |
plugin versions
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_plugins.erl | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/rabbit_plugins.erl b/src/rabbit_plugins.erl index 46abb9860c..c5d08262d2 100644 --- a/src/rabbit_plugins.erl +++ b/src/rabbit_plugins.erl @@ -184,7 +184,17 @@ list(PluginsDir, IncludeRequiredDeps) -> end, Plugins = lists:filter(fun(P) -> not plugin_provided_by_otp(P) end, AvailablePlugins), - ensure_dependencies(Plugins). + ensure_plugins_versions(ensure_dependencies(Plugins)). + +ensure_plugins_versions(Plugins) -> + PluginsVersions = [{Name, Vsn} + || #plugin{name = Name, version = Vsn} <- Plugins], + lists:foldl( + fun(Plugin = #plugin{name = Name, plugins_versions = PluginsVersions}, + {Plugins1, Problems1}) -> + + + ) version_support(_RabbitVersion, []) -> ok; version_support(RabbitVersion, Versions) -> @@ -358,9 +368,11 @@ mkplugin(Name, Props, Type, Location) -> Description = proplists:get_value(description, Props, ""), Dependencies = proplists:get_value(applications, Props, []), RabbitmqVersions = proplists:get_value(rabbitmq_versions, Props, []), + PluginsVersions = proplists:get_value(plugins_versions, Props, []), #plugin{name = Name, version = Version, description = Description, dependencies = Dependencies, location = Location, type = Type, - rabbitmq_versions = RabbitmqVersions}. + rabbitmq_versions = RabbitmqVersions, + plugins_versions = PluginsVersions}. read_app_file(EZ) -> case zip:list_dir(EZ) of |
