瀏覽代碼

run compile as post hook for test_deps

pull/3/head
Tristan Sloughter 10 年之前
父節點
當前提交
da8c676018
共有 2 個檔案被更改,包括 12 行新增9 行删除
  1. +2
    -2
      src/rebar.app.src
  2. +10
    -7
      src/rebar_prv_test_deps.erl

+ 2
- 2
src/rebar.app.src 查看文件

@ -25,7 +25,6 @@
rebar_prv_deps, rebar_prv_deps,
rebar_prv_do, rebar_prv_do,
rebar_prv_lock, rebar_prv_lock,
rebar_prv_test_deps,
rebar_prv_install_deps, rebar_prv_install_deps,
rebar_prv_packages, rebar_prv_packages,
rebar_erlydtl_compiler, rebar_erlydtl_compiler,
@ -38,6 +37,7 @@
rebar_prv_upgrade, rebar_prv_upgrade,
rebar_prv_release, rebar_prv_release,
rebar_prv_version, rebar_prv_version,
rebar_prv_help]}
rebar_prv_help,
rebar_prv_test_deps]}
]} ]}
]}. ]}.

+ 10
- 7
src/rebar_prv_test_deps.erl 查看文件

@ -16,10 +16,13 @@
-spec init(rebar_state:t()) -> {ok, rebar_state:t()}. -spec init(rebar_state:t()) -> {ok, rebar_state:t()}.
init(State) -> init(State) ->
Providers = rebar_state:providers(State),
CompileProvider = providers:get_provider(compile, Providers),
State1 = rebar_state:add_provider(State, providers:create([{name, ?PROVIDER}, State1 = rebar_state:add_provider(State, providers:create([{name, ?PROVIDER},
{module, ?MODULE}, {module, ?MODULE},
{bare, true}, {bare, true},
{deps, ?DEPS}, {deps, ?DEPS},
{hooks, {[], [CompileProvider]}},
{example, undefined}, {example, undefined},
{short_desc, "Install dependencies needed only for testing."}, {short_desc, "Install dependencies needed only for testing."},
{desc, ""}, {desc, ""},
@ -38,13 +41,13 @@ do(State) ->
case rebar_topo:sort_apps(ProjectApps1++AllDeps) of case rebar_topo:sort_apps(ProjectApps1++AllDeps) of
{ok, Sort} -> {ok, Sort} ->
ToBuild = lists:dropwhile(fun rebar_app_info:valid/1, Sort),
lists:foreach(fun(AppInfo) ->
AppDir = rebar_app_info:dir(AppInfo),
C = rebar_config:consult(AppDir),
S = rebar_state:new(State1, C, AppDir),
rebar_prv_compile:build(S, AppInfo)
end, ToBuild),
_ToBuild = lists:dropwhile(fun rebar_app_info:valid/1, Sort),
%% lists:foreach(fun(AppInfo) ->
%% AppDir = rebar_app_info:dir(AppInfo),
%% C = rebar_config:consult(AppDir),
%% S = rebar_state:new(State1, C, AppDir),
%% rebar_prv_compile:build(S, AppInfo)
%% end, ToBuild),
{ok, State1}; {ok, State1};
{error, Error} -> {error, Error} ->
{error, Error} {error, Error}

Loading…
取消
儲存