diff options
Diffstat (limited to 'src/ejabberd_app.erl')
-rw-r--r-- | src/ejabberd_app.erl | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/ejabberd_app.erl b/src/ejabberd_app.erl index 7c44c8fab..028db9afa 100644 --- a/src/ejabberd_app.erl +++ b/src/ejabberd_app.erl @@ -27,6 +27,8 @@ start(normal, _Args) -> ejabberd_ctl:init(), gen_mod:start(), ejabberd_config:start(), + start(), + connect_nodes(), Sup = ejabberd_sup:start_link(), ejabberd_rdbms:start(), ejabberd_auth:start(), @@ -35,7 +37,6 @@ start(normal, _Args) -> %eprof:start(), %eprof:profile([self()]), %fprof:trace(start, "/tmp/fprof"), - start(), load_modules(), Sup; start(_, _) -> @@ -103,3 +104,15 @@ load_modules() -> end end, ?MYHOSTS). +connect_nodes() -> + case ejabberd_config:get_local_option(cluster_nodes) of + undefined -> + ok; + Nodes when is_list(Nodes) -> + lists:foreach(fun(Node) -> + net_kernel:connect_node(Node) + end, Nodes) + end. + + + |