In addition to installing and configuring the new module, this also enables public access to the S3 API via `bucket-name.s3.kosmos.org` as well as Web access on `bucket-name.web.s3.kosmos.org` (when enabled). Also includes some drive-by improvements to Chef attribute naming and usage. Co-authored-by: Greg Karékinian <greg@karekinian.com>
34 lines
733 B
Ruby
34 lines
733 B
Ruby
#
|
|
# Cookbook:: kosmos-ejabberd
|
|
# Recipe:: pg_db
|
|
#
|
|
|
|
postgresql_data_bag_item = data_bag_item('credentials', 'postgresql')
|
|
|
|
postgresql_user 'ejabberd' do
|
|
action :create
|
|
password postgresql_data_bag_item['ejabberd_user_password']
|
|
end
|
|
|
|
databases = ["ejabberd", "ejabberd_5apps"]
|
|
|
|
databases.each do |database|
|
|
postgresql_database database do
|
|
owner 'ejabberd'
|
|
action :create
|
|
notifies :run, "execute[create db schema #{database}]", :delayed
|
|
end
|
|
|
|
cookbook_file "#{Chef::Config[:file_cache_path]}/pg.sql" do
|
|
source "pg.sql"
|
|
mode "0664"
|
|
end
|
|
|
|
execute "create db schema #{database}" do
|
|
user "postgres"
|
|
command "psql #{database} < #{Chef::Config[:file_cache_path]}/pg.sql"
|
|
action :nothing
|
|
end
|
|
|
|
end
|