From 95c4565d078033c18561813c48c20de11ed9ab88 Mon Sep 17 00:00:00 2001 From: Konrad Kaplita Date: Mon, 18 Nov 2013 13:54:07 +0100 Subject: Add option to skip release discovery `rlx_prv_discover` provider recursively scans all directories in `lib_dirs` list looking for `*.app` and `*.rel` files. This commit adds an option `disable_rel_discovery` to skip searching for `*.rel` files when we know there aren't any. This speeds up release generation with a lot of dependencies on the `libs_dir` list significantly and reduces total release generation time in half. --- test/rlx_discover_SUITE.erl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'test') diff --git a/test/rlx_discover_SUITE.erl b/test/rlx_discover_SUITE.erl index e75ea36..0fb1ad7 100644 --- a/test/rlx_discover_SUITE.erl +++ b/test/rlx_discover_SUITE.erl @@ -110,10 +110,12 @@ no_beam_case(Config) -> AppDir = filename:join([LibDir2, BadName]), write_app_file(AppDir, BadName, BadVsn), State0 = proplists:get_value(state, Config), - {DiscoverProvider, {ok, State1}} = rlx_provider:new(rlx_prv_discover, State0), + %% Deliberately disable release discovery when running `rlx_prv_discover` + State1 = rlx_state:put(State0, disable_rel_discovery, true), + {DiscoverProvider, {ok, State2}} = rlx_provider:new(rlx_prv_discover, State1), ?assertMatch({ok, _}, - rlx_provider:do(DiscoverProvider, State1)). + rlx_provider:do(DiscoverProvider, State2)). bad_ebin_case(Config) -> LibDir1 = proplists:get_value(lib1, Config), -- cgit v1.2.3