소스 검색

check global for plugin if not found in local profiles

pull/544/head
Tristan Sloughter 10 년 전
부모
커밋
b830c65ef0
1개의 변경된 파일17개의 추가작업 그리고 9개의 파일을 삭제
  1. +17
    -9
      src/rebar_prv_plugins_upgrade.erl

+ 17
- 9
src/rebar_prv_plugins_upgrade.erl 파일 보기

@ -50,15 +50,12 @@ format_error(Reason) ->
upgrade(Plugin, State) ->
Profiles = rebar_state:current_profiles(State),
Dep = ec_lists:search(fun(Profile) ->
Plugins = rebar_state:get(State, {plugins, Profile}, []),
case find(list_to_atom(Plugin), Plugins) of
false ->
not_found;
P ->
{ok, P}
end
end, Profiles),
case find_plugin(Plugin, Profiles, State) of
not_found ->
Dep = find_plugin(Plugin, [global], State);
Dep ->
Dep
end,
case Dep of
not_found ->
@ -82,6 +79,17 @@ upgrade(Plugin, State) ->
{ok, State}
end.
find_plugin(Plugin, Profiles, State) ->
ec_lists:search(fun(Profile) ->
Plugins = rebar_state:get(State, {plugins, Profile}, []),
case find(list_to_atom(Plugin), Plugins) of
false ->
not_found;
P ->
{ok, P}
end
end, Profiles).
find(_Plugin, []) ->
false;
find(Plugin, [Plugin | _Plugins]) ->

불러오는 중...
취소
저장