Write hostname-related configs for new ejabberd cluster
This commit is contained in:
parent
5b351036ba
commit
687a6f097d
|
@ -26,3 +26,4 @@ depends "kosmos_postgresql"
|
|||
depends "backup"
|
||||
depends "firewall"
|
||||
depends "tor-full"
|
||||
depends "hostsfile"
|
||||
|
|
|
@ -29,15 +29,21 @@ file "/opt/ejabberd/.erlang.cookie" do
|
|||
content ejabberd_credentials['erlang_cookie']
|
||||
end
|
||||
|
||||
ejabberd_nodes = search(:node, "role:ejabberd")
|
||||
|
||||
ejabberd_nodes.each do |node|
|
||||
hostsfile_entry node["knife_zero"]["host"] do
|
||||
hostname node["name"]
|
||||
action :create
|
||||
end
|
||||
end
|
||||
|
||||
ejabberd_hostnames = ejabberd_nodes.map { |n| n["name"] }
|
||||
file "/opt/ejabberd/.hosts.erlang" do
|
||||
mode "0644"
|
||||
owner "ejabberd"
|
||||
group "ejabberd"
|
||||
content <<-EOF
|
||||
"andromeda.kosmos.org".
|
||||
"centaurus.kosmos.org".
|
||||
"draco.kosmos.org".
|
||||
EOF
|
||||
content ejabberd_hostnames.join(".\n")
|
||||
end
|
||||
|
||||
ruby_block "configure ERLANG_NODE" do
|
||||
|
@ -45,7 +51,7 @@ ruby_block "configure ERLANG_NODE" do
|
|||
file = Chef::Util::FileEdit.new("/opt/ejabberd/conf/ejabberdctl.cfg")
|
||||
file.search_file_replace_line(
|
||||
%r{#ERLANG_NODE=ejabberd@localhost},
|
||||
"ERLANG_NODE=#{node['kosmos-ejabberd']['erlang_node']}"
|
||||
"ERLANG_NODE=ejabberd@#{node['name']}"
|
||||
)
|
||||
file.write_file
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue