Explorar el Código

fix: version number previs in restricted shell

Zaiming (Stone) Shi hace 3 años
padre
commit
e668044ebc
Se han modificado 3 ficheros con 25 adiciones y 7 borrados
  1. 1 2
      .github/workflows/run_relup_tests.yaml
  2. 18 4
      apps/emqx/src/emqx_release.erl
  3. 6 1
      rebar.config.erl

+ 1 - 2
.github/workflows/run_relup_tests.yaml

@@ -9,7 +9,6 @@ on:
     branches:
       - '**'
     tags:
-      - v*
       - e*
   pull_request:
 
@@ -43,7 +42,7 @@ jobs:
       run: |
         set -x
         cd emqx
-        make emqx-tgz
+        export PROFILE='emqx-enterprise'
         make emqx-enterprise-tgz
     - uses: actions/upload-artifact@v3
       name: Upload built emqx and test scenario

+ 18 - 4
apps/emqx/src/emqx_release.erl

@@ -31,11 +31,21 @@
     ce => "EMQX"
 }).
 
+-define(EMQX_REL_NAME, #{
+    ee => <<"Enterprise">>,
+    ce => <<"Opensource">>
+}).
+
 -define(EMQX_REL_VSNS, #{
     ee => ?EMQX_RELEASE_EE,
     ce => ?EMQX_RELEASE_CE
 }).
 
+-define(EMQX_REL_VSN_PREFIX, #{
+    ee => "e",
+    ce => "v"
+}).
+
 %% @doc Return EMQX description.
 description() ->
     maps:get(edition(), ?EMQX_DESCS).
@@ -46,14 +56,18 @@ description() ->
 -spec edition() -> ce | ee.
 -ifdef(EMQX_RELEASE_EDITION).
 edition() -> ?EMQX_RELEASE_EDITION.
-edition_vsn_prefix() -> "e".
-edition_longstr() -> <<"Enterprise">>.
 -else.
 edition() -> ce.
-edition_vsn_prefix() -> "v".
-edition_longstr() -> <<"Opensource">>.
 -endif.
 
+%% @doc Return EMQX version prefix string.
+edition_vsn_prefix() ->
+    maps:get(edition(), ?EMQX_REL_VSN_PREFIX).
+
+%% @doc Return EMQX edition name, ee => Enterprise ce => Opensource.
+edition_longstr() ->
+    maps:get(edition(), ?EMQX_REL_NAME).
+
 %% @doc Return the release version.
 version() ->
     case lists:keyfind(emqx_vsn, 1, ?MODULE:module_info(compile)) of

+ 6 - 1
rebar.config.erl

@@ -205,7 +205,12 @@ prod_overrides() ->
     [{add, [{erl_opts, [deterministic]}]}].
 
 profiles() ->
-    profiles_ce() ++ profiles_ee() ++ profiles_dev().
+    case get_edition_from_profile_env() of
+        ee ->
+            profiles_ee();
+        ce ->
+            profiles_ce()
+    end ++ profiles_dev().
 
 profiles_ce() ->
     Vsn = get_vsn(emqx),