I have an elixir project with a defined version. How can I access this from within the running application.
in mix.exs
  def project do     [app: :my_app,      version: "0.0.1"]   end   I would like to be access this version number in the application so I can add it to the returned message. I looking for something in the env hash like the following
__ENV__.version # => 0.0.1 
                Mix.Project itself provides access to all project keywords defined in mix.exs using its config/0 (api doc) function. For concise access it might be wrapped into a function:
@version Mix.Project.config[:version] def version(), do: @version 
                        Here's a similar approach to retrieve the version string. It also relies on the :application module, but is maybe a bit more straightforward:
{:ok, vsn} = :application.get_key(:my_app, :vsn) List.to_string(vsn) 
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With