diff --git a/apps/emqx_release_helper/lib/emqx_release_helper.ex b/apps/emqx_release_helper/lib/emqx_release_helper.ex index b9ad8e2b0..870f2fc43 100644 --- a/apps/emqx_release_helper/lib/emqx_release_helper.ex +++ b/apps/emqx_release_helper/lib/emqx_release_helper.ex @@ -14,6 +14,7 @@ defmodule EmqxReleaseHelper do config = Map.merge(profile_vars(), release_vars(release)) release + |> EmqxReleaseHelper.Script.run(config) |> EmqxReleaseHelper.Overlay.run(config) |> EmqxReleaseHelper.Applications.run(config) end diff --git a/apps/emqx_release_helper/lib/emqx_release_helper/script.ex b/apps/emqx_release_helper/lib/emqx_release_helper/script.ex new file mode 100644 index 000000000..73fcf568e --- /dev/null +++ b/apps/emqx_release_helper/lib/emqx_release_helper/script.ex @@ -0,0 +1,17 @@ +defmodule EmqxReleaseHelper.Script do + def run(release, config) do + script_path = Path.join(config.project_path, "scripts") + + {_, 0} = + script_path + |> Path.join("merge-config.escript") + |> System.cmd([]) + + {_, 0} = + script_path + |> Path.join("get-dashboard.sh") + |> System.cmd([], env: [{"EMQX_DASHBOARD_VERSION", "v5.0.0-beta.13"}]) + + release + end +end diff --git a/mix.exs b/mix.exs index 6fe52cf94..1692f27c9 100644 --- a/mix.exs +++ b/mix.exs @@ -4,8 +4,7 @@ defmodule EMQXUmbrella.MixProject do def project do [ apps_path: "apps", - # apps/emqx/include/emqx_release.hrl - version: "5.0-pre", + version: pkg_vsn(), start_permanent: Mix.env() == :prod, deps: deps(), releases: releases() @@ -60,4 +59,17 @@ defmodule EMQXUmbrella.MixProject do def project_path do Path.expand("..", __ENV__.file) end + + def pkg_vsn do + project_path() + |> Path.join("pkg-vsn.sh") + |> System.cmd([]) + |> elem(0) + |> String.trim() + |> String.split("-") + |> Enum.reverse() + |> tl() + |> Enum.reverse() + |> Enum.join("-") + end end