diff --git a/.formatter.exs b/.formatter.exs index 5cad8a0ad..fbe8732d5 100644 --- a/.formatter.exs +++ b/.formatter.exs @@ -1,6 +1,7 @@ [ inputs: [ "mix.exs", - "config/*.exs" + "config/*.exs", + "scripts/*.exs", ] ] diff --git a/mix.exs b/mix.exs index cfa6221d4..c5efda930 100644 --- a/mix.exs +++ b/mix.exs @@ -84,23 +84,11 @@ defmodule EMQXUmbrella.MixProject do defp releases() do [ emqx: fn -> - release_type = read_enum_env_var( - "EMQX_RELEASE_TYPE", - [:cloud, :edge], - :cloud - ) - - package_type = read_enum_env_var( - "EMQX_PACKAGE_TYPE", - [:bin, :pkg], - :bin - ) - - edition_type = read_enum_env_var( - "EMQX_EDITION_TYPE", - [:community, :enterprise], - :community - ) + %{ + release_type: release_type, + package_type: package_type, + edition_type: edition_type + } = read_inputs() base_steps = [ :assemble, @@ -179,6 +167,35 @@ defmodule EMQXUmbrella.MixProject do ] end + defp read_inputs() do + release_type = + read_enum_env_var( + "EMQX_RELEASE_TYPE", + [:cloud, :edge], + :cloud + ) + + package_type = + read_enum_env_var( + "EMQX_PACKAGE_TYPE", + [:bin, :pkg], + :bin + ) + + edition_type = + read_enum_env_var( + "EMQX_EDITION_TYPE", + [:community, :enterprise], + :community + ) + + %{ + release_type: release_type, + package_type: package_type, + edition_type: edition_type + } + end + defp copy_files(release, release_type, package_type, edition_type) do overwrite? = Keyword.get(release.options, :overwrite, false) @@ -233,13 +250,14 @@ defmodule EMQXUmbrella.MixProject do vars_rendered ) - vm_args_template_path = case release_type do - :cloud -> - "apps/emqx/etc/emqx_cloud/vm.args" + vm_args_template_path = + case release_type do + :cloud -> + "apps/emqx/etc/emqx_cloud/vm.args" - :edge -> - "apps/emqx/etc/emqx_edge/vm.args" - end + :edge -> + "apps/emqx/etc/emqx_edge/vm.args" + end vm_args_rendered = File.read!(vm_args_template_path) @@ -389,12 +407,10 @@ defmodule EMQXUmbrella.MixProject do |> String.to_atom() if value not in allowed_values do - Mix.raise( - """ - Invalid value #{raw_value} for variable #{env_var}. - Allowed values are: #{inspect(allowed_values)} - """ - ) + Mix.raise(""" + Invalid value #{raw_value} for variable #{env_var}. + Allowed values are: #{inspect(allowed_values)} + """) end value diff --git a/scripts/check-elixir-deps-discrepancies.exs b/scripts/check-elixir-deps-discrepancies.exs index 53f5331bb..21a2d18ef 100755 --- a/scripts/check-elixir-deps-discrepancies.exs +++ b/scripts/check-elixir-deps-discrepancies.exs @@ -9,6 +9,7 @@ case File.stat("rebar.lock") do _ -> :ok end + {_, 0} = File.cwd!() |> Path.join("rebar3") @@ -24,48 +25,53 @@ pkg_idx = |> Keyword.fetch!(:pkg_hash) |> Map.new() -rebar_deps = Map.new(rebar_deps, fn {name, ref, _} -> - ref = case ref do - {:pkg, _, _} -> - pkg_idx - |> Map.fetch!(name) - |> String.downcase() +rebar_deps = + Map.new(rebar_deps, fn {name, ref, _} -> + ref = + case ref do + {:pkg, _, _} -> + pkg_idx + |> Map.fetch!(name) + |> String.downcase() - {:git, _, {:ref, ref}} -> - to_string(ref) - end + {:git, _, {:ref, ref}} -> + to_string(ref) + end - {name, ref} -end) + {name, ref} + end) {mix_deps, []} = Code.eval_file("mix.lock") -mix_deps = Map.new(mix_deps, fn {name, ref} -> - ref = case ref do - {:git, _, ref, _} -> - ref +mix_deps = + Map.new(mix_deps, fn {name, ref} -> + ref = + case ref do + {:git, _, ref, _} -> + ref - {:hex, _, _, ref, _, _, _, _} -> - ref - end + {:hex, _, _, ref, _, _, _, _} -> + ref + end - {to_string(name), ref} -end) + {to_string(name), ref} + end) -diffs = Enum.reduce(rebar_deps, %{}, fn {name, rebar_ref}, acc -> - mix_ref = mix_deps[name] +diffs = + Enum.reduce(rebar_deps, %{}, fn {name, rebar_ref}, acc -> + mix_ref = mix_deps[name] - cond do - mix_ref && mix_ref != rebar_ref -> - Map.put(acc, name, {rebar_ref, mix_ref}) + cond do + mix_ref && mix_ref != rebar_ref -> + Map.put(acc, name, {rebar_ref, mix_ref}) - is_nil(mix_ref) -> - Map.put(acc, name, {rebar_ref, nil}) + is_nil(mix_ref) -> + Map.put(acc, name, {rebar_ref, nil}) - :otherwise -> - acc - end -end) + :otherwise -> + acc + end + end) if diffs == %{} do IO.puts( @@ -73,6 +79,7 @@ if diffs == %{} do "* Mix and Rebar3 dependencies OK!" <> IO.ANSI.reset() ) + System.halt(0) else IO.puts(