mix.exs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. defmodule EMQXExhook.MixProject do
  2. use Mix.Project
  3. alias EMQXUmbrella.MixProject, as: UMP
  4. def project do
  5. [
  6. app: :emqx_exhook,
  7. version: "0.1.0",
  8. build_path: "../../_build",
  9. compilers: [:elixir, :grpc, :erlang, :app, :copy_srcs],
  10. # used by our `Mix.Tasks.Compile.CopySrcs` compiler
  11. extra_dirs: extra_dirs(),
  12. # used by our `Mix.Tasks.Compile.Grpc` compiler
  13. grpc_opts: %{
  14. gpb_opts: [
  15. module_name_prefix: 'emqx_',
  16. module_name_suffix: '_pb',
  17. o: 'src/pb',
  18. ],
  19. proto_dirs: ["priv/protos"],
  20. out_dir: "src/pb"
  21. },
  22. erlc_options: UMP.erlc_options(),
  23. erlc_paths: UMP.erlc_paths(),
  24. deps_path: "../../deps",
  25. lockfile: "../../mix.lock",
  26. elixir: "~> 1.14",
  27. start_permanent: Mix.env() == :prod,
  28. deps: deps()
  29. ]
  30. end
  31. def application do
  32. [extra_applications: UMP.extra_applications(), mod: {:emqx_exhook_app, []}]
  33. end
  34. def deps() do
  35. [
  36. {:emqx_mix_utils, in_umbrella: true, runtime: false},
  37. {:emqx, in_umbrella: true},
  38. {:emqx_utils, in_umbrella: true},
  39. UMP.common_dep(:grpc)
  40. ]
  41. end
  42. defp extra_dirs() do
  43. dirs = []
  44. if UMP.test_env?() do
  45. ["test" | dirs]
  46. else
  47. dirs
  48. end
  49. end
  50. end