From 2a115a83d2b744632602ba378304384889b38afe Mon Sep 17 00:00:00 2001 From: Christophe Romain Date: Fri, 23 Oct 2015 17:21:19 +0200 Subject: [PATCH] Let modules_update_specs report failures (#756) --- src/ext_mod.erl | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/ext_mod.erl b/src/ext_mod.erl index 765d38b4f..ccc847eeb 100644 --- a/src/ext_mod.erl +++ b/src/ext_mod.erl @@ -36,6 +36,7 @@ config_dir/0, opt_type/1]). -include("ejabberd_commands.hrl"). +-include("logger.hrl"). -define(REPOS, "https://github.com/processone/ejabberd-contrib"). @@ -111,10 +112,19 @@ commands() -> update() -> add_sources(?REPOS), - lists:foreach(fun({Package, Spec}) -> + Res = lists:foldl(fun({Package, Spec}, Acc) -> Path = proplists:get_value(url, Spec, ""), - add_sources(Package, Path) - end, modules_spec(sources_dir(), "*")). + Update = add_sources(Package, Path), + ?INFO_MSG("Update package ~s: ~p", [Package, Update]), + case Update of + ok -> Acc; + Error -> [Error|Acc] + end + end, [], modules_spec(sources_dir(), "*")), + case Res of + [] -> ok; + [Error|_] -> Error + end. available() -> Jungle = modules_spec(sources_dir(), "*/*"),