{minimum_otp_vsn, "27"}.

{erl_opts, [debug_info]}.

{deps, [
  gun,
  {uuid, "2.0.5", {pkg, uuid_erl}}
]}.

{plugins, [
  {rebar3_docker, {git, "https://github.com/stritzinger/rebar3_docker.git", {branch, "main"}}}
]}.

{shell, [
   % {config, "config/shell.config"},
    {apps, [braidnode]}
]}.

{relx, [
    {release, {braidnode, semver}, [sasl, braidnode]},
    {sys_config, "config/sys.config"},
    {include_src, false},
    {include_erts, true}
]}.

{hex, [{doc, ex_doc}]}.

%% ExDoc configuration (used by rebar3_ex_doc)
{ex_doc, [
    {main, "readme"},
    {source_url, "https://github.com/Stritzinger/braidnode"},
    {extras, [
        "README.md",
        "CHANGELOG.md",
        "LICENSE.md",
        "docs/orchestrator-api.md"
    ]}
]}.

{docker, [
  % builder_image image has precedence over erlang_version
  {builder_image, "erlang:27-alpine"},
  {tag, "local/braidnode"},
  % The extra packages to install in the building docker layer.
  {build_packages, [
      make,
      gcc,
      "libc-dev",
      "libbsd-dev",
      "g++"
  ]},
  % The git url to be rewritten. Used to access private repository.
  {git_url_rewrites, [
      {"https://github.com/", "git@github.com:"}
  ]},
  % The extra runtime package to install in the final docker image.
  {runtime_packages, []},
  % The ports to be exposed by the docker image.
%   {ports, [
%       {4369, tcp}
%   ]},
  % The docker image environment.
  {env, [
      {'LOGGER_LEVEL', debug}
  ]}
]}.
