I'm currently working with a client that have hard requirements on what the default environments should be across all their products. For instance, `local` is the default environment. `ci` is the default environment for running tests and `dev` is used as a development staging environment.
Mix supports the `preferred_cli_env` option, which I can declare on a project level. This is nice because it allows me to specify the preferred environment for the test task. Unfortunately, there's no way of specifying the default environment. It's currently hard-coded to `dev` unless `MIX_ENV` is set. The problem with having `MIX_ENV` set is that it simply makes `preferred_cli_env` void as the environment variable always takes precedence, so I'm left with having to specify `MIX_ENV` explicitly when running tests anyway. I propose adding a new option, `default_env`, to the Mix project configuration. If set, it will be reported by `Mix.env` unless `MIX_ENV` is also present. I'd love to hear some thoughts before I pursue this any further. -- 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 elixir-lang-core+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-core/9029fb90-362d-4a1f-be30-6a8b3bd5f074n%40googlegroups.com.