aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJordan Wilberding <[email protected]>2014-02-09 11:04:48 -0500
committerJordan Wilberding <[email protected]>2014-02-09 11:07:41 -0500
commit509e3405a8e28f74171a6f3e8cd291907faaa035 (patch)
treea03646351db242ff921a40b461d3eda6db5bcc6f
parent2bad57e4b7961de8d034f9eda5b83318180b355c (diff)
downloadrelx-509e3405a8e28f74171a6f3e8cd291907faaa035.tar.gz
relx-509e3405a8e28f74171a6f3e8cd291907faaa035.tar.bz2
relx-509e3405a8e28f74171a6f3e8cd291907faaa035.zip
Remove destination start_clean.sh before copying, since with R16 it is 0444, which makes the write fail. Fixes #120
-rw-r--r--src/rlx_prv_assembler.erl5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/rlx_prv_assembler.erl b/src/rlx_prv_assembler.erl
index 3afe617..4ef0a1a 100644
--- a/src/rlx_prv_assembler.erl
+++ b/src/rlx_prv_assembler.erl
@@ -305,8 +305,11 @@ write_bin_file(State, Release, OutputDir, RelDir) ->
case rlx_state:get(State, extended_start_script, false) of
true ->
Prefix = code:root_dir(),
+ DstFile = filename:join([BinDir, "start_clean.boot"]),
+ %% Explicitly remove before cp, since it is 0444 mode
+ ec_file:remove(DstFile),
ok = ec_file:copy(filename:join([Prefix, "bin", "start_clean.boot"]),
- filename:join([BinDir, "start_clean.boot"])),
+ DstFile),
NodeToolFile = nodetool_contents(),
InstallUpgradeFile = install_upgrade_escript_contents(),
NodeTool = filename:join([BinDir, "nodetool"]),