Skip to content

Instantly share code, notes, and snippets.

@nathan-appere
Last active December 8, 2019 13:24
Show Gist options
  • Save nathan-appere/0cafc3afd6572c9eb4c38975b7a2253d to your computer and use it in GitHub Desktop.
Save nathan-appere/0cafc3afd6572c9eb4c38975b7a2253d to your computer and use it in GitHub Desktop.
config_default: &config_default
adapter: <%= ENV['DATABASE_ADAPTER'] || 'postgresql' %>
encoding: utf8
pool: <%= (ENV['DATABASE_POOL'] || ENV['MAX_THREADS'] || 5) %>
# Readonly mode | expected privileges: [CONNECT, SELECT]
config_default_readonly: &config_default_readonly
<<: *config_default
url: <%= ENV['DATABASE_URL_READONLY'] %>
# Write mode | expected privileges: readonly_mode + [INSERT, UPDATE, DELETE]
config_default_write: &config_default_write
<<: *config_default
url: <%= ENV['DATABASE_URL_WRITE'] %>
# Operation mode | expected privileges: write_mode + [CREATE, REFERENCES, TRUNCATE, USAGE]
config_default_ops: &config_default_ops
<<: *config_default
url: <%= ENV['DATABASE_URL_OPS'] %>
# ------------------------------------------------------------------------------
databases_config: &databases_config
primary:
adapter: nulldb
primary_readonly:
<<: *config_default_readonly
primary_write:
<<: *config_default_write
primary_ops:
<<: *config_default_ops
# ------------------------------------------------------------------------------
# All ENVs behave the same way
production:
<<: *databases_config
development:
<<: *databases_config
test:
<<: *databases_config
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment