Yes, Mix.Config always performs a deep merge. If you want to have something
like live_reload: false or live_reload: :none, then Elixir will already
giive it higher priority (we only deep merge keyword lists, otherwise the
latest always wins), so you just need to make sure Phoenix supports it.


*José Valim*
www.plataformatec.com.br
Skype: jv.ptec
Founder and Director of R&D


On Mon, May 27, 2019 at 1:23 PM Felipe Sere <[email protected]> wrote:

> Hi y'all.
>
>
> I set out to boot my Phoenix app on Travis-CI to run some cypress tests
> against it. Since it boots my `dev` env as normally (mix phx.server) I
> noticed that code-reloading and asset building was on.
> It's not a massive issue, but I wanted to turn it off on ci.
> So I went ahead and created a config file just for CI like so:
>
> use Mix.Config
>
> import_config "dev.exs"
>
> config :advisor, AdvisorWeb.Endpoint,
>   code_reloader: false,
>   watchers: []
>
>
> config :advisor, AdvisorWeb.Endpoint,
>   live_reload: []
>
> To my surprise, the watchers for asset building and code-reloading were
> still on.
>
> Given that I import the dev.exs config, I thought I'd just be overwriting
> the watches and live_reload settings.
> But, keyword lists are deep-merged with the config macro.
> This is fine as long as you want to *add* things.
> In my case, I wanted to explicitly remove things.
> I resorted to duplicating my `dev.exs` instead of importing it.
>
> I could imagine something like a specific keyword like :none or false to
> be used to let empty lists take priority when merging.
> My config would then look something like this (or with false).
>
> use Mix.Config
>
> import_config "dev.exs"
>
> config :advisor, AdvisorWeb.Endpoint,
>   code_reloader: false,
>   watchers: :none
>
>
> config :advisor, AdvisorWeb.Endpoint,
>   live_reload: :none
>
> I imagine merging multiple things could become a night-mare though?
>
> Let me know what you think or if there are other solutions to my issue.
>
> Cheers,
> Felipe
>
> --
> You received this message because you are subscribed to the Google Groups
> "elixir-lang-core" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/elixir-lang-core/4a8b1c7f-32f2-4b2a-b932-968465f0a695%40googlegroups.com
> <https://groups.google.com/d/msgid/elixir-lang-core/4a8b1c7f-32f2-4b2a-b932-968465f0a695%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"elixir-lang-core" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elixir-lang-core/CAGnRm4KQnaQFd3BMOEXHUsrtg9NPau44QjBS33VNAKEo7yhGzg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to