瀏覽代碼

Merge pull request #777 from tsloughter/current_app

add current_app attribute for setting before calling hooks
pull/776/merge
Fred Hebert 9 年之前
父節點
當前提交
a81357b605
共有 3 個檔案被更改,包括 13 行新增5 行删除
  1. +0
    -1
      src/rebar3.erl
  2. +3
    -2
      src/rebar_hooks.erl
  3. +10
    -2
      src/rebar_state.erl

+ 0
- 1
src/rebar3.erl 查看文件

@ -225,7 +225,6 @@ global_option_spec_list() ->
%% {Name, ShortOpt, LongOpt, ArgSpec, HelpMsg}
{help, $h, "help", undefined, "Print this help."},
{version, $v, "version", undefined, "Show version information."},
%{config, $C, "config", string, "Rebar config file to use."},
{task, undefined, undefined, string, "Task to run."}
].

+ 3
- 2
src/rebar_hooks.erl 查看文件

@ -11,8 +11,9 @@
atom() | {atom(), atom()} | string(),
[providers:t()], rebar_app_info:t(), rebar_state:t()) -> ok.
run_all_hooks(Dir, Type, Command, Providers, AppInfo, State) ->
run_provider_hooks(Dir, Type, Command, Providers, rebar_app_info:opts(AppInfo), State),
run_hooks(Dir, Type, Command, rebar_app_info:opts(AppInfo), State).
State1 = rebar_state:current_app(State, AppInfo),
run_provider_hooks(Dir, Type, Command, Providers, rebar_app_info:opts(AppInfo), State1),
run_hooks(Dir, Type, Command, rebar_app_info:opts(AppInfo), State1).
run_all_hooks(Dir, Type, Command, Providers, State) ->
run_provider_hooks(Dir, Type, Command, Providers, rebar_state:opts(State), State),

+ 10
- 2
src/rebar_state.erl 查看文件

@ -27,6 +27,7 @@
dir/1, dir/2,
create_logic_providers/2,
current_app/1, current_app/2,
project_apps/1, project_apps/2,
deps_to_build/1, deps_to_build/2,
all_plugin_deps/1, all_plugin_deps/2, update_all_plugin_deps/2,
@ -49,12 +50,13 @@
escript_path :: undefined | file:filename_all(),
lock = [],
current_profiles = [default] :: [atom()],
namespace = default :: atom(),
current_profiles = [default] :: [atom()],
namespace = default :: atom(),
command_args = [],
command_parsed_args = {[], []},
current_app :: rebar_app_info:t(),
project_apps = [] :: [rebar_app_info:t()],
deps_to_build = [] :: [rebar_app_info:t()],
all_plugin_deps = [] :: [rebar_app_info:t()],
@ -302,6 +304,12 @@ deps_names(State) ->
Deps = rebar_state:get(State, deps, []),
deps_names(Deps).
current_app(#state_t{current_app=CurrentApp}) ->
CurrentApp.
current_app(State=#state_t{}, CurrentApp) ->
State#state_t{current_app=CurrentApp}.
project_apps(#state_t{project_apps=Apps}) ->
Apps.

Loading…
取消
儲存