defmodule EcsElixirCore.MixProject do use Mix.Project @version "1.2.0" def project do [ app: :ecs_elixir_core, version: @version, elixir: "~> 1.15", start_permanent: Mix.env() == :prod, deps: deps(), elixirc_paths: elixirc_paths(Mix.env()), package: package(), description: description(), test_coverage: [tool: ExCoveralls], docs: [ extras: ["README.md"], main: "readme", source_ref: "v#{@version}" ], metrics: false ] end def cli do [ preferred_envs: [ credo: :test, dialyzer: :test, coveralls: :test, "coveralls.post": :test, "coveralls.html": :test, "coveralls.github": :test, "coveralls.lcov": :test ] ] end defp elixirc_paths(:test), do: ["lib", "test/support"] defp elixirc_paths(_), do: ["lib"] defp package do [ files: ["lib", "mix.exs", "README.md", "LICENSE"], maintainers: ["Jhonatan Hidalgo"], licenses: ["Apache-2.0"], links: %{ "GitHub" => "https://github.com/bancolombia/ecs-elixir-core" } ] end defp description() do "An Elixir library for generating logs in compliance with the Elastic Common Schema (ECS) standard." end # Run "mix help compile.app" to learn about applications. def application do [ extra_applications: [:logger] ] end # Run "mix help deps" to learn about dependencies. defp deps do [ {:plug, "~> 1.15"}, {:jason, "~> 1.4"}, {:timex, "~> 3.7"}, {:uuid, "~> 1.1"}, # Tests and Analysis {:excoveralls, "~> 0.18", [only: [:dev, :test]]}, {:mock, "~> 0.3.9", [only: [:test]]}, # {:git_hooks, "~> 0.8", [only: [:dev, :test], runtime: false]}, {:credo, "~> 1.7", [only: [:dev, :test], runtime: false]}, {:credo_sonarqube, "~> 0.1", [only: [:dev, :test], runtime: false]}, {:dialyxir, "~> 1.4", [only: [:dev, :test], runtime: false]}, {:sobelow, "~> 0.13", [only: [:dev, :test], runtime: false]}, {:ex_doc, ">= 0.0.0", only: :dev, runtime: false}, # Release {:elixir_structure_manager, "~> 1.6", [only: [:dev, :test]]} ] end end