%% -*- mode:erlang -*-
{minimum_otp_vsn, "21.1"}.

{plugins,
 [ rebar3_proper
 , covertool
 ]}.

{erl_opts,
 [ debug_info
 , error
 , warn_unused_vars
 , warn_shadow_vars
 , warn_unused_import
 , warn_obsolete_guard
 ]}.

{deps,
 [ {hut,        "1.3.0"}
 , {brod,       "3.14.0"}
 , {snabbkaffe, "0.6.0"}
 , {prometheus, "4.4.1"}
 , {cowboy,     "2.7.0"}
 , {jsone,      "1.5.2"}
 , {epgsql,     "4.4.0"}
 , {erlcloud,   "3.2.18"}
 ]}.

{xref_checks,
 [ undefined_function_calls
 , undefined_functions
 , deprecated_function_calls
 , deprecated_functions
 ]}.

{cover_enabled, true}.

{eunit_opts, [verbose]}.

{profiles,
 [ {test, [{deps,
            [ docker_compose_cth
            , meck
            , hackney
            ]}
          ]}
 , {dev, [{deps, [system_monitor, {redbug, "2.0.2"}]}]}
 , {concuerror,
    [{erl_opts, [ {d, 'CONCUERROR'}
                , {d, 'HUT_IOFORMAT'}
                ]}]}
 ]}.

%% CT logs are beyond broken, just remove them
{ct_opts,
 [ {enable_builtin_hooks, false}
 , {verbosity, 0}
 ]}.

{ct_readable, false}.

%% Release is used for testing/troubleshooting
{relx,
 [ {release, {kflow, "1.0.0"},
    [sasl, compiler, kflow, system_monitor, epgsql, redbug]}
 , {include_erts, true}
 , {extended_start_script, true}
 , {overlay,
    [ {template, "config/sys.config", "releases/{{release_version}}/sys.config"}
    , {copy, "config/kflow_config.erl", "releases/{{release_version}}/kflow_config.erl"}
    , {copy, "config/sasl-user-pass", "releases/{{release_version}}/sasl-user-pass"}
    ]}
 ]}.
