summaryrefslogtreecommitdiff
path: root/src/rebar_prv_update.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/rebar_prv_update.erl')
-rw-r--r--src/rebar_prv_update.erl13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/rebar_prv_update.erl b/src/rebar_prv_update.erl
index fcfb6f7..10faf4d 100644
--- a/src/rebar_prv_update.erl
+++ b/src/rebar_prv_update.erl
@@ -35,11 +35,11 @@ init(State) ->
-spec do(rebar_state:t()) -> {ok, rebar_state:t()} | {error, string()}.
do(State) ->
- ?INFO("Updating package index...", []),
try
- RegistryDir = rebar_packages:package_dir(State),
+ RegistryDir = rebar_packages:registry_dir(State),
filelib:ensure_dir(filename:join(RegistryDir, "dummy")),
HexFile = filename:join(RegistryDir, "registry"),
+ ?INFO("Updating package registry...", []),
TmpDir = ec_file:insecure_mkdtemp(),
TmpFile = filename:join(TmpDir, "packages.gz"),
@@ -50,7 +50,7 @@ do(State) ->
{ok, Data} = file:read_file(TmpFile),
Unzipped = zlib:gunzip(Data),
ok = file:write_file(HexFile, Unzipped),
-
+ ?INFO("Writing registry to ~s", [rebar_file_utils:replace_home_dir(HexFile)]),
hex_to_index(State),
ok
catch
@@ -71,11 +71,13 @@ is_supported(<<"rebar3">>) -> true;
is_supported(_) -> false.
hex_to_index(State) ->
- RegistryDir = rebar_packages:package_dir(State),
+ RegistryDir = rebar_packages:registry_dir(State),
HexFile = filename:join(RegistryDir, "registry"),
try ets:file2tab(HexFile) of
{ok, Registry} ->
try
+ PackageIndex = filename:join(RegistryDir, "packages.idx"),
+ ?INFO("Generating package index...", []),
(catch ets:delete(?PACKAGE_TABLE)),
ets:new(?PACKAGE_TABLE, [named_table, public]),
ets:foldl(fun({{Pkg, PkgVsn}, [Deps, Checksum, BuildTools | _]}, _) when is_list(BuildTools) ->
@@ -93,7 +95,8 @@ hex_to_index(State) ->
end, true, Registry),
ets:insert(?PACKAGE_TABLE, {package_index_version, ?PACKAGE_INDEX_VERSION}),
- ets:tab2file(?PACKAGE_TABLE, filename:join(RegistryDir, "packages.idx")),
+ ?INFO("Writing index to ~s", [rebar_file_utils:replace_home_dir(PackageIndex)]),
+ ets:tab2file(?PACKAGE_TABLE, PackageIndex),
true
after
catch ets:delete(Registry)