diff options
author | Eric Merritt <[email protected]> | 2013-06-20 07:46:52 -0700 |
---|---|---|
committer | Eric Merritt <[email protected]> | 2013-06-20 07:46:52 -0700 |
commit | 61a82df32d4ce7bf77ba9452cd956dd535c604ec (patch) | |
tree | 2da6aef78a7c9b0106073f65a51fe905380356d7 /src/rlx_prv_assembler.erl | |
parent | f0c5d882d5516d8a7c6a405721c6990317bee9ec (diff) | |
parent | 5ed7ea3172170fa05ac806250f695834d5d6ae58 (diff) | |
download | relx-61a82df32d4ce7bf77ba9452cd956dd535c604ec.tar.gz relx-61a82df32d4ce7bf77ba9452cd956dd535c604ec.tar.bz2 relx-61a82df32d4ce7bf77ba9452cd956dd535c604ec.zip |
Merge pull request #10 from lafka/lafka-vmargs-opt
Add support for {vm_args,_} argument in config
Diffstat (limited to 'src/rlx_prv_assembler.erl')
-rw-r--r-- | src/rlx_prv_assembler.erl | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/src/rlx_prv_assembler.erl b/src/rlx_prv_assembler.erl index 18a372c..20f9c5c 100644 --- a/src/rlx_prv_assembler.erl +++ b/src/rlx_prv_assembler.erl @@ -250,9 +250,28 @@ write_bin_file(State, Release, OutputDir, RelDir) -> ok = file:write_file(BareRel, StartFile), ok = file:change_mode(BareRel, 8#777) end, - ok = file:write_file(filename:join(RelDir, "vm.args"), vm_args_file(RelName)), + copy_or_generate_vmargs_file(State, RelName, RelDir), copy_or_generate_sys_config_file(State, Release, OutputDir, RelDir). +%% @doc copy vm.args or generate one to releases/VSN/vm.args +-spec copy_or_generate_vmargs_file(rlx_state:t(), string(), file:name()) -> + {ok, rlx_state:t()} | relx:error(). + +copy_or_generate_vmargs_file(State, RelName, RelDir) -> + RelVmargsPath = filename:join([RelDir, "vm.args"]), + + case rlx_state:vm_args(State) of + undefined -> + ok = file:write_file(RelVmargsPath, vm_args_file(RelName)); + ArgsPath -> + case filelib:is_regular(ArgsPath) of + false -> + ?RLX_ERROR({vmargs_does_not_exist, ArgsPath}); + true -> + ec_file:copy(ArgsPath, RelVmargsPath) + end + end. + %% @doc copy config/sys.config or generate one to releases/VSN/sys.config -spec copy_or_generate_sys_config_file(rlx_state:t(), rlx_release:t(), file:name(), file:name()) -> |