Râu Cao 65d71d6a73
Migrate ejabberd uploads to mod_s3_upload and Garage
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>
2023-10-10 17:55:55 +02:00

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