Procházet zdrojové kódy

Merge pull request #8187 from zmstone/0611-copy-example-configs-to-etc-elixir

mix build: release example configs
Zaiming (Stone) Shi před 3 roky
rodič
revize
022ec06bb9
3 změnil soubory, kde provedl 25 přidání a 3 odebrání
  1. 1 1
      Makefile
  2. 2 2
      build
  3. 22 0
      mix.exs

+ 1 - 1
Makefile

@@ -224,7 +224,7 @@ prepare-build-deps:
 ## elixir target is to create release packages using Elixir's Mix
 .PHONY: $(REL_PROFILES:%=%-elixir) $(PKG_PROFILES:%=%-elixir)
 $(REL_PROFILES:%=%-elixir) $(PKG_PROFILES:%=%-elixir): $(COMMON_DEPS) $(ELIXIR_COMMON_DEPS) mix-deps-get
-	@$(BUILD) $(subst -elixir,,$(@)) elixir
+	@env IS_ELIXIR=yes $(BUILD) $(subst -elixir,,$(@)) elixir
 
 .PHONY: $(REL_PROFILES:%=%-elixir-pkg)
 define gen-elixir-pkg-target

+ 2 - 2
build

@@ -293,8 +293,8 @@ export_release_vars() {
 log "building artifact=$ARTIFACT for profile=$PROFILE"
 
 case "$ARTIFACT" in
-    doc)
-        make_doc
+    doc|docs)
+        make_docs
         ;;
     rel)
         make_rel

+ 22 - 0
mix.exs

@@ -114,6 +114,7 @@ defmodule EMQXUmbrella.MixProject do
         } = check_profile!()
 
         base_steps = [
+          &make_docs(&1),
           :assemble,
           &create_RELEASES/1,
           &copy_files(&1, release_type, package_type, edition_type),
@@ -283,6 +284,12 @@ defmodule EMQXUmbrella.MixProject do
   #  Custom Steps
   #############################################################################
 
+  defp make_docs(release) do
+    profile = System.get_env("MIX_ENV")
+    os_cmd("build", [profile, "docs"])
+    release
+  end
+
   defp copy_files(release, release_type, package_type, edition_type) do
     overwrite? = Keyword.get(release.options, :overwrite, false)
 
@@ -322,6 +329,21 @@ defmodule EMQXUmbrella.MixProject do
       force: overwrite?
     )
 
+    # copy generated docs
+    Enum.each(
+      [
+        "apps/emqx_dashboard/priv/www/static/emqx-en.conf.example",
+        "apps/emqx_dashboard/priv/www/static/emqx-zh.conf.example"
+      ],
+      fn file ->
+        Mix.Generator.copy_file(
+          file,
+          Path.join(etc, Path.basename(file)),
+          force: overwrite?
+        )
+      end
+    )
+
     # this is required by the produced escript / nodetool
     Mix.Generator.copy_file(
       Path.join(release.version_path, "start_clean.boot"),