From 12cb97db5f9abd01141c2778c0887ebc4e0ca9e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcel=20St=C3=B6r?= Date: Mon, 5 Jun 2023 10:49:35 +0200 Subject: [PATCH] fix: Quote database env variables (#7216) Database credentials, and passwords, in particular, can easily contain characters that are reserved in YAML and must be quoted. Example: a case with a password starting with ']'. --- config/database.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/config/database.yml b/config/database.yml index 5dfaa14b1..5cd278f8d 100644 --- a/config/database.yml +++ b/config/database.yml @@ -8,21 +8,21 @@ default: &default variables: # we are setting this value to be close to the racktimeout value. we will iterate and reduce this value going forward statement_timeout: <%= ENV["POSTGRES_STATEMENT_TIMEOUT"] || "14s" %> - + development: <<: *default - database: <%= ENV.fetch('POSTGRES_DATABASE', 'chatwoot_dev') %> - username: <%= ENV.fetch('POSTGRES_USERNAME', 'postgres') %> - password: <%= ENV.fetch('POSTGRES_PASSWORD', '') %> + database: "<%= ENV.fetch('POSTGRES_DATABASE', 'chatwoot_dev') %>" + username: "<%= ENV.fetch('POSTGRES_USERNAME', 'postgres') %>" + password: "<%= ENV.fetch('POSTGRES_PASSWORD', '') %>" test: <<: *default - database: <%= ENV.fetch('POSTGRES_DATABASE', 'chatwoot_test') %> - username: <%= ENV.fetch('POSTGRES_USERNAME', 'postgres') %> - password: <%= ENV.fetch('POSTGRES_PASSWORD', '') %> + database: "<%= ENV.fetch('POSTGRES_DATABASE', 'chatwoot_test') %>" + username: "<%= ENV.fetch('POSTGRES_USERNAME', 'postgres') %>" + password: "<%= ENV.fetch('POSTGRES_PASSWORD', '') %>" production: <<: *default - database: <%= ENV.fetch('POSTGRES_DATABASE', 'chatwoot_production') %> - username: <%= ENV.fetch('POSTGRES_USERNAME', 'chatwoot_prod') %> - password: <%= ENV.fetch('POSTGRES_PASSWORD', 'chatwoot_prod') %> + database: "<%= ENV.fetch('POSTGRES_DATABASE', 'chatwoot_production') %>" + username: "<%= ENV.fetch('POSTGRES_USERNAME', 'chatwoot_prod') %>" + password: "<%= ENV.fetch('POSTGRES_PASSWORD', 'chatwoot_prod') %>"