aboutsummaryrefslogtreecommitdiffstats
path: root/rebar.config
diff options
context:
space:
mode:
authorMarcos Benevides <marcos.schonfinkel@gmail.com>2025-12-07 16:42:26 -0400
committerGitHub <noreply@github.com>2025-12-07 16:42:26 -0400
commit0862cd7c3fe4fbb5b56a0a87c3789c8361bc022c (patch)
treeb6a5ab8230e0342713c4530416eee39774d4f240 /rebar.config
parent0ff53d39cdf8f823432311eb41adc34d416d9316 (diff)
downloadSakura-0862cd7c3fe4fbb5b56a0a87c3789c8361bc022c.tar.gz
Sakura-0862cd7c3fe4fbb5b56a0a87c3789c8361bc022c.zip
#37 ADD Rebar3 Release and other minor refactors (#38)
Diffstat (limited to '')
-rw-r--r--rebar.config78
1 files changed, 74 insertions, 4 deletions
diff --git a/rebar.config b/rebar.config
index 2c2d11e..8f364e6 100644
--- a/rebar.config
+++ b/rebar.config
@@ -1,15 +1,84 @@
-{erl_opts, [debug_info]}.
-{deps, [{merklet, "2.0.0"}]}.
+%% == Compiler Options ==
+{erl_opts, [
+ debug_info,
+ report,
+ verbose,
+ warn_unused_import,
+ warn_export_vars
+]}.
+
+%% == Dependencies and Plugins ==
+{deps, [
+ {merklet, "2.0.0"}]
+}.
{plugins, [
- {rebar3_nix, ".*", {git, "https://github.com/erlang-nix/rebar3_nix.git", {tag, "v0.1.1"}}},
- {covertool, "v2.0.4"}
+ {covertool, "2.0.7"},
+ {rebar3_nix, ".*", {git, "https://github.com/erlang-nix/rebar3_nix.git", {tag, "v0.1.1"}}}
+]}.
+
+%% == Common Test Options ==
+{ct_opts, []}.
+
+%% == Releases ==
+{relx, [
+ {release, {domino, "0.1.0"}, [
+ merklet
+ ]},
+
+ {mode, dev},
+ {extended_start_script, true},
+
+ %% automatically picked up if the files
+ %% exist but can be set manually, which
+ %% is required if the names aren't exactly
+ %% sys.config and vm.args
+ {sys_config, "./config/sys.config"},
+ {vm_args, "./config/vm.args"},
+
+ {overlay, [
+ {mkdir, "log/sasl"},
+ {mkdir, "log/errors"}
+ ]}
]}.
+%% == Profiles ==
+{profiles, [
+ %% prod is the default mode when prod
+ %% profile is used, so does not have
+ %% to be explicitly included like this
+ {prod, [
+ {relx, [
+ {include_erts, true},
+ {sys_config, "./config/sys.config"},
+ %% https://rebar3.org/docs/deployment/releases/#modes
+ {mode, prod}
+ ]}
+ ]},
+
+ {test, [
+ {deps, [
+ meck,
+ proper
+ ]}
+ ]}
+]}.
+
+%% == Shell ==
+%% apps to auto-boot with `rebar3 shell'; defaults to apps
+%% specified in a `relx' tuple, if any.
{shell, [
+ %% We have a special config just to run the app inside
+ %% a shell, helps with debugging and local testing.
+ {config, "config/shell.config"},
{apps, [main]}
+
+ %% If you need any environment variables to be set inside
+ %% the debug shell as well.
+ %%{env_file, "deployment/default.env"}]
]}.
+%% == Dialyzer Settings ==
{dialyzer, [
{plt_extra_apps, [merklet]},
{warnings, [unknown]},
@@ -25,6 +94,7 @@
]}
]}.
+%% == EDOC Settings ==
{edoc_opts, [
{doclet, edoc_doclet},
{source_path, ["src"]},