gab-social/config/database.yml
rubic0n 903b6c7969 Simplify database.yml by merging in default options
Anything in the &default section can be merged in using <<: *default
In this case, the default already specifies that the adapter is
postgresql, the timeout is 5000, the encoding is unicode. It also
already specified the db pool, but the default actually checked 2
different ENVs and provided a fallback if it's not provided.
Lastly, I was able to move the prepared_statements section to the
defaults, because the .env.vagrant file doesn't specify
ENV['PREPARED_STATEMENTS'], development still just sets it to
'false'.
2021-02-13 23:20:43 -06:00

49 lines
1.4 KiB
YAML

default: &default
adapter: postgresql
pool: <%= ENV["DB_POOL"] || ENV['MAX_THREADS'] || 5 %>
timeout: 5000
encoding: unicode
sslmode: <%= ENV['DB_SSLMODE'] || "prefer" %>
prepared_statements: <%= ENV['PREPARED_STATEMENTS'] || 'false' %>
development:
master:
<<: *default
url: <%= ENV['DB_MASTER_URL'] %>
slave1:
<<: *default
url: <%= ENV['DB_SLAVE1_URL'] %>
slave2:
<<: *default
url: <%= ENV['DB_SLAVE2_URL'] %>
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
database: <%= ENV['DB_NAME'] || 'gabsocial' %>_test<%= ENV['TEST_ENV_NUMBER'] %>
username: <%= ENV['DB_USER'] %>
password: <%= ENV['DB_PASS'] %>
host: <%= ENV['DB_HOST'] %>
port: <%= ENV['DB_PORT'] %>
#production:
# <<: *default
# database: <%= ENV['DB_NAME'] || 'gabsocial_production' %>
# username: <%= ENV['DB_USER'] || 'gabsocial' %>
# password: <%= ENV['DB_PASS'] || '' %>
# host: <%= ENV['DB_HOST'] || 'localhost' %>
# port: <%= ENV['DB_PORT'] || 5432 %>
# prepared_statements: <%= ENV['PREPARED_STATEMENTS'] || 'true' %>
production:
master:
<<: *default
url: <%= ENV['DB_MASTER_URL'] %>
slave1:
<<: *default
url: <%= ENV['DB_SLAVE1_URL'] %>
slave2:
<<: *default
url: <%= ENV['DB_SLAVE1_URL'] %>