defmodule Artifactory.Mixfile do use Mix.Project ############################################################################## # Public ############################################################################## def application() do [ extra_applications: extra_applications(), mod: mod() ] end def project() do [ app: :artifactory, build_embedded: Mix.env == :prod, deps: deps(), elixir: "~> 1.4", package: package(), start_permanent: Mix.env == :prod, version: version(), ] end ############################################################################## # Private ############################################################################## defp deps() do [{:ex_doc, ">= 0.0.0", only: :dev}] end defp description() do """ A Elixir client for Artifactory's REST API """ end defp extra_applications() do [:logger] end defp open_source_license() do Path.expand("LICENSE.md") |> File.stream! |> Enum.at(0) |> String.trim_leading("#") |> String.strip() end defp licenses() do [ open_source_license() ] end defp links() do %{ "Docs" => "https://hexdocs.pm/artifactory", "GitHub" => "https://github.com/amorphid/artifactory-elixir" } end defp maintainers() do ["Michael Pope "] end defp mod() do {Artifactory.Application, []} end defp package() do %{ description: description(), licenses: licenses(), links: links(), maintainers: maintainers() } end defp version() do Path.expand("VERSION.txt") |> File.read!() |> String.strip() end end