aboutsummaryrefslogtreecommitdiffstats
path: root/priv/templates/nodetool
diff options
context:
space:
mode:
Diffstat (limited to 'priv/templates/nodetool')
-rw-r--r--priv/templates/nodetool15
1 files changed, 11 insertions, 4 deletions
diff --git a/priv/templates/nodetool b/priv/templates/nodetool
index 62fa02e..9e24f32 100644
--- a/priv/templates/nodetool
+++ b/priv/templates/nodetool
@@ -96,16 +96,23 @@ process_args(["-setcookie", Cookie | Rest], Acc, TargetNode, StartEpmd) ->
process_args(["-start_epmd", StartEpmd | Rest], Acc, TargetNode, _StartEpmd) ->
process_args(Rest, Acc, TargetNode, list_to_atom(StartEpmd));
process_args(["-name", TargetName | Rest], Acc, _, StartEpmd) ->
- ThisNode = append_node_suffix(TargetName, "_maint_"),
- {ok, _} = net_kernel:start([ThisNode, longnames]),
+ maybe_start_node(TargetName, longnames),
process_args(Rest, Acc, nodename(TargetName), StartEpmd);
process_args(["-sname", TargetName | Rest], Acc, _, StartEpmd) ->
- ThisNode = append_node_suffix(TargetName, "_maint_"),
- {ok, _} = net_kernel:start([ThisNode, shortnames]),
+ maybe_start_node(TargetName, shortnames),
process_args(Rest, Acc, nodename(TargetName), StartEpmd);
process_args([Arg | Rest], Acc, Opts, StartEpmd) ->
process_args(Rest, [Arg | Acc], Opts, StartEpmd).
+maybe_start_node(TargetName, Names) ->
+ case erlang:node() of
+ 'nonode@nohost' ->
+ ThisNode = append_node_suffix(TargetName, "_maint_"),
+ {ok, _} = net_kernel:start([ThisNode, Names]);
+ _ ->
+ ok
+ end.
+
start_epmd(true) ->
[] = os:cmd("\"" ++ epmd_path() ++ "\" -daemon"),
ok;