defmodule AutoAdminUser.MixProject do use Mix.Project version_path = Path.join([__DIR__, "VERSION"]) @external_resource version_path @version version_path |> File.read!() |> String.trim() @source_url "https://gitlab.com/phinnaeus/auto_admin_user" def project do [ app: :auto_admin_user, version: @version, elixir: "~> 1.17", start_permanent: Mix.env() == :prod, deps: deps(), docs: docs(), description: "Bootstrap an admin account on app startup from an environment variable.", package: package(), source_url: @source_url, dialyzer: dialyzer() ] end def application do [ extra_applications: [:logger, :crypto] ] end defp deps do [ {:dialyxir, "~> 1.4", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.35", only: :dev, runtime: false}, {:junit_formatter, "~> 3.4", only: [:test], runtime: false} ] end defp package do [ files: ~w(lib mix.exs README.md LICENSE VERSION), maintainers: ["Tyler Davis "], licenses: ["MIT"], links: %{"Gitlab" => @source_url} ] end defp dialyzer do [ flags: [ :unmatched_returns, :error_handling, :extra_return, :missing_return, :underspecs ], plt_local_path: "priv/plts/project.plt", plt_core_path: "priv/plts/core.plt" ] end defp docs do [ name: "AutoAdminUser", canonical: "https://hexdocs.pm/auto_admin_user", extras: ["README.md", "LICENSE"] ] end end