Current section

Files

Jump to

mix.exs

defmodule SmoothieWorkerRuntime.MixProject do
  use Mix.Project

  @version "0.1.1-rc.2"

  def project do
    [
      app: :smoothie_worker_runtime,
      version: @version,
      build_path: "../../_build",
      config_path: "../../config/config.exs",
      deps_path: "../../deps",
      lockfile: "../../mix.lock",
      elixir: "~> 1.17",
      start_permanent: Mix.env() == :prod,
      description: "Smoothie worker runtime and supervision layer",
      package: package(),
      deps: deps()
    ]
  end

  def application do
    [
      extra_applications: [:logger],
      mod: {Smoothie.Worker.Runtime.Application, []}
    ]
  end

  defp deps do
    if System.get_env("SMOOTHIE_HEX_PUBLISH") == "1" do
      [
        {:castore, "~> 1.0"},
        {:smoothie_worker_contract, "== #{@version}"},
        {:jason, "~> 1.4"},
        {:redix, "~> 1.5"}
      ]
    else
      [
        {:castore, "~> 1.0"},
        smoothie_worker_contract_dep(),
        {:jason, "~> 1.4"},
        {:redix, "~> 1.5"}
      ]
    end
  end

  defp smoothie_worker_contract_dep do
    if System.get_env("SMOOTHIE_ELIXIR_SDK_PATH_DEPS") == "1" do
      {:smoothie_worker_contract, path: "../smoothie_worker_contract"}
    else
      {:smoothie_worker_contract, in_umbrella: true}
    end
  end

  defp package do
    [
      licenses: ["Apache-2.0"],
      links: %{"GitHub" => "https://github.com/Qwirklabs/smoothie"}
    ]
  end
end