Current section

Files

Jump to
ehelper priv local.linking.eex
Raw

priv/local.linking.eex

## Support deps local-linking, generated by task: mix h.local.link at <%= DateTime.utc_now() %>
# def env_deps(:prod), do: deps() |> prune_local_linking()
def env_deps(_), do: deps_with_linking_path()
def raw_deps, do: deps()
def deps_with_linking_path(deps \\ deps()) do
# Mix.Local.append_archives()
# :code.get_path() |> Enum.sort();
Mix.DepLink
|> Code.ensure_loaded()
|> case do
{:module, _} ->
deps
|> Mix.DepLink.deps_with_local_linking()
{:error, reason} ->
if Mix.env() in [:dev] do
Mix.shell().info(
"No Mix.DepLink : #{reason |> inspect}, run: mix archive.install hex ehelper"
)
end
deps |> prune_local_linking()
end
end
def prune_local_linking(deps \\ deps()) do
deps
|> Enum.map(fn
{app, v, opts} when is_list(opts) ->
{app, v, opts |> Keyword.delete(:local_linking)}
{app, opts} when is_list(opts) ->
{app, opts |> Keyword.delete(:local_linking)}
item ->
item
end)
end