Module rlx_state

Provides state management services for the relx tool.

Copyright © (C) 2012 Erlware, LLC.

Authors: Eric Merritt (ericbmerritt@gmail.com).

Description

Provides state management services for the relx tool. Generally, those things that are fixed have a direct api. Those things that are mutable have a more mutable api.

Data Types

mode()

mode() = dev | prod | minimal

releases()

releases() = #{{rlx_release:name(), rlx_release:vsn()} => rlx_release:t()}

t()

t() = #state_t{root_dir = file:name(), output_dir = file:name(), lib_dirs = [file:name()], config_file = file:filename() | undefined, available_apps = #{atom() => rlx_app_info:t()}, vm_args = file:filename() | false | undefined, vm_args_src = file:filename() | false | undefined, sys_config = file:filename() | false | undefined, sys_config_src = file:filename() | false | undefined, overrides = [{AppName::atom(), Directory::file:filename()}], exclude_apps = [AppName::atom()], exclude_modules = [{App::atom(), [Module::atom()]}], debug_info = keep | strip, configured_releases = releases(), realized_releases = releases(), include_src = boolean() | undefined, include_erts = boolean() | file:filename(), system_libs = boolean() | file:filename(), upfrom = string() | binary() | undefined, warnings_as_errors = boolean(), src_tests = boolean(), check_for_undefined_functions = boolean(), exref = boolean() | [atom()], overlay = list(), include_nodetool = boolean(), overlay_vars_values = list(), overlay_vars = list(), extended_start_script = boolean(), extended_start_script_hooks = list(), extended_start_script_extensions = list(), generate_start_script = boolean(), include_start_scripts_for = [atom()] | undefined, filter_xref_warning = fun(([{mfa(), mfa()}]) -> [{mfa(), mfa()}]), dev_mode = boolean(), mode = mode() | undefined, is_relx_sasl = boolean()}

Function Index

add_configured_release/2
add_lib_dirs/2
add_realized_release/2
available_apps/1
available_apps/2
base_output_dir/1
base_output_dir/2
check_for_undefined_functions/1
check_for_undefined_functions/2
configured_releases/1
debug_info/1
debug_info/2
dev_mode/1
dev_mode/2
exclude_apps/1
exclude_apps/2applications to exclude from the release and remove from .app files.
exclude_modules/1
exclude_modules/2modules to be excluded from the release.
exref/1
exref/2
extended_start_script/1
extended_start_script/2
extended_start_script_extensions/1
extended_start_script_extensions/2
extended_start_script_hooks/1
extended_start_script_hooks/2
filter_xref_warning/1
filter_xref_warning/2
format/1
format/2
generate_start_script/1
generate_start_script/2
get_configured_release/3
include_erts/1
include_erts/2
include_nodetool/1
include_nodetool/2
include_src/1
include_src/2
include_start_scripts_for/1
include_start_scripts_for/2
is_relx_sasl/1
lib_dirs/1
mode/1
mode/2
new/0
overlay/1
overlay/2
overlay_vars/1
overlay_vars/2
overlay_vars_values/1
overlay_vars_values/2
overrides/1the application overrides for the system.
overrides/2the application overrides for the system.
realized_releases/1
root_dir/1
root_dir/2
src_tests/1
src_tests/2
sys_config/1
sys_config/2
sys_config_src/1
sys_config_src/2
system_libs/1
system_libs/2
update_realized_release/2
upfrom/2
vm_args/1
vm_args/2
vm_args_src/1
vm_args_src/2
warnings_as_errors/1
warnings_as_errors/2

Function Details

add_configured_release/2

add_configured_release(M::t(), Release::rlx_release:t()) -> t()

add_lib_dirs/2

add_lib_dirs(State::t(), Dirs::[file:name()]) -> t()

add_realized_release/2

add_realized_release(State::t(), Release::rlx_release:t()) -> t()

available_apps/1

available_apps(State_t::t()) -> #{atom() => rlx_app_info:t()}

available_apps/2

available_apps(M::t(), NewApps::#{atom() => rlx_app_info:t()}) -> t()

base_output_dir/1

base_output_dir(State_t::t()) -> file:name()

base_output_dir/2

base_output_dir(State::t(), Directory::file:filename()) -> t()

check_for_undefined_functions/1

check_for_undefined_functions(State_t::t()) -> boolean()

check_for_undefined_functions/2

check_for_undefined_functions(State::t(), CheckForUndefinedFunctions::boolean()) -> t()

configured_releases/1

configured_releases(State_t::t()) -> releases()

debug_info/1

debug_info(State_t::t()) -> keep | strip

debug_info/2

debug_info(State::t(), DebugInfo::keep | strip) -> t()

dev_mode/1

dev_mode(State_t::t()) -> boolean()

dev_mode/2

dev_mode(S::t(), DevMode::boolean()) -> t()

exclude_apps/1

exclude_apps(State_t::t()) -> [AppName::atom()]

exclude_apps/2

exclude_apps(State::t(), ExcludeApps::[AppName::atom()]) -> t()

applications to exclude from the release and remove from .app files

exclude_modules/1

exclude_modules(State_t::t()) -> [{App::atom(), [Module::atom()]}]

exclude_modules/2

exclude_modules(State::t(), SkipModules::[{App::atom(), [Module::atom()]}]) -> t()

modules to be excluded from the release

exref/1

exref(State_t::t()) -> boolean() | [atom()]

exref/2

exref(State::t(), ExRef::boolean() | [atom()]) -> t()

extended_start_script/1

extended_start_script(State_t::t()) -> boolean() | undefined

extended_start_script/2

extended_start_script(S::t(), ExtendedStartScript::boolean()) -> t()

extended_start_script_extensions/1

extended_start_script_extensions(State_t::t()) -> list() | undefined

extended_start_script_extensions/2

extended_start_script_extensions(S::t(), ExtendedStartScriptExtensions::list()) -> t()

extended_start_script_hooks/1

extended_start_script_hooks(State_t::t()) -> list() | undefined

extended_start_script_hooks/2

extended_start_script_hooks(S::t(), ExtendedStartScriptHooks::list()) -> t()

filter_xref_warning/1

filter_xref_warning(State_t::t()) -> fun(([{mfa(), mfa()}]) -> [{mfa(), mfa()}])

filter_xref_warning/2

filter_xref_warning(State::t(), Filter::fun(([{mfa(), mfa()}]) -> [{mfa(), mfa()}])) -> t()

format/1

format(Mod::t()) -> iolist()

format/2

format(State_t::t(), Indent::non_neg_integer()) -> iolist()

generate_start_script/1

generate_start_script(State_t::t()) -> boolean() | undefined

generate_start_script/2

generate_start_script(S::t(), GenerateStartScript::boolean()) -> t()

get_configured_release/3

get_configured_release(State_t::t(), Name::rlx_release:name(), Vsn::rlx_release:vsn()) -> rlx_release:t()

include_erts/1

include_erts(State_t::t()) -> boolean() | file:filename() | undefined

include_erts/2

include_erts(S::t(), IncludeErts::boolean() | file:filename()) -> t()

include_nodetool/1

include_nodetool(State_t::t()) -> boolean() | file:filename() | undefined

include_nodetool/2

include_nodetool(S::t(), IncludeNodetool::boolean() | file:filename()) -> t()

include_src/1

include_src(State_t::t()) -> boolean() | undefined

include_src/2

include_src(S::t(), IncludeSrc::boolean()) -> t()

include_start_scripts_for/1

include_start_scripts_for(State_t::t()) -> [atom()] | undefined

include_start_scripts_for/2

include_start_scripts_for(S::t(), IncludeStartScriptsFor::[atom()]) -> t()

is_relx_sasl/1

is_relx_sasl(State_t) -> any()

lib_dirs/1

lib_dirs(State_t::t()) -> [file:name()]

mode/1

mode(State_t::t()) -> mode()

mode/2

mode(S::t(), Mode::mode()) -> t()

new/0

new() -> any()

overlay/1

overlay(State_t::t()) -> list() | undefined

overlay/2

overlay(S::t(), Overlay::list()) -> t()

overlay_vars/1

overlay_vars(State_t) -> any()

overlay_vars/2

overlay_vars(S, OverlayVars) -> any()

overlay_vars_values/1

overlay_vars_values(State_t) -> any()

overlay_vars_values/2

overlay_vars_values(S, OverlayVarsValues) -> any()

overrides/1

overrides(State_t::t()) -> [{AppName::atom(), Directory::file:filename()}]

the application overrides for the system

overrides/2

overrides(State::t(), Overrides::[{AppName::atom(), Directory::file:filename()}]) -> t()

the application overrides for the system

realized_releases/1

realized_releases(State_t::t()) -> releases()

root_dir/1

root_dir(State_t::t()) -> file:filename() | undefined

root_dir/2

root_dir(State::t(), RootDir::file:filename()) -> t()

src_tests/1

src_tests(State_t::t()) -> boolean()

src_tests/2

src_tests(State::t(), SrcTests::boolean()) -> t()

sys_config/1

sys_config(State_t::t()) -> file:filename() | false | undefined

sys_config/2

sys_config(State::t(), SysConfig::false | undefined | file:filename()) -> t()

sys_config_src/1

sys_config_src(State_t::t()) -> file:filename() | false | undefined

sys_config_src/2

sys_config_src(State::t(), SysConfigSrc::file:filename() | false | undefined) -> t()

system_libs/1

system_libs(State_t::t()) -> boolean() | file:filename() | undefined

system_libs/2

system_libs(S::t(), SystemLibs::boolean() | file:filename()) -> t()

update_realized_release/2

update_realized_release(M::t(), Release::rlx_release:t()) -> t()

upfrom/2

upfrom(State::t(), UpFrom::string() | binary() | undefined) -> t()

vm_args/1

vm_args(State_t::t()) -> file:filename() | false | undefined

vm_args/2

vm_args(State::t(), VmArgs::undefined | false | file:filename()) -> t()

vm_args_src/1

vm_args_src(State_t::t()) -> file:filename() | false | undefined

vm_args_src/2

vm_args_src(State::t(), VmArgs::undefined | false | file:filename()) -> t()

warnings_as_errors/1

warnings_as_errors(State_t::t()) -> boolean()

warnings_as_errors/2

warnings_as_errors(State::t(), WarningsAsErrors::boolean()) -> t()


Generated by EDoc