🔥Docker and environment variables cleanup (#270)
* Added dotenv-rails gem to manage environment variables * Added dotenv-rails gem to manage environment variables * Removed figaro which was used earlier for this purpose * Standardized variable names * Changed all env variables to be upper case. This included changes in files referencing env variables. * Added example env file with all variables set to empty value * Removed the earlier setup of copying application.yml and database.yml and the scripts and documentation associated to this * Docker setup * Added docker file for building the docker images * Added entrypoint.sh script which is referenced inside the Docker image * Cloned the Procfile for development using docker which has slight change compared to regular procfile * Added the docker-compose.yml which has 3 service's configuration, postgres, redis and chatwoot server and a mounted volume for postgres * Added docker related info to documentation * Added the docker setup info in the documentation * Added info for using`rbenv` instead of rvm for managing ruby versions * Updated the documentation for environment variables to have one about `dotenv-rails` gem and removed the documentation about the old copy paste method used by figaro * Changing the postgres database, username and password as environment variables * Removed database.yml from gitignore * Made the postgres databse, username and password as environemnt variables * Added this in documentation * Added a quick setup page * Added quick setup page * Removed the docs from README and added link to the docs in website * Removed the figaro related things from circle.ci config * Adding external volume for redis in docker compose * Added instructions for adding the redis volume in docs
This commit is contained in:
committed by
Pranav Raj S
parent
c6feea9f6d
commit
da9ac8b26d
23
config/database.yml
Normal file
23
config/database.yml
Normal file
@@ -0,0 +1,23 @@
|
||||
default: &default
|
||||
adapter: postgresql
|
||||
encoding: unicode
|
||||
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
|
||||
host: <%= ENV.fetch('POSTGRES_HOST', 'localhost') %>
|
||||
|
||||
development:
|
||||
<<: *default
|
||||
database: chatwoot_dev
|
||||
username: postgres
|
||||
password:
|
||||
|
||||
test:
|
||||
<<: *default
|
||||
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') %>
|
||||
@@ -56,12 +56,12 @@ Rails.application.configure do
|
||||
# config.active_job.queue_name_prefix = "chatwoot_production"
|
||||
|
||||
config.action_mailer.perform_caching = false
|
||||
config.action_mailer.default_url_options = { :host => ENV['frontend_url'] }
|
||||
config.action_mailer.default_url_options = { :host => ENV['FRONTEND_URL'] }
|
||||
config.action_mailer.smtp_settings = {
|
||||
:address => ENV['ses_address'],
|
||||
:address => ENV['SES_ADDRESS'],
|
||||
:port => 587,
|
||||
:user_name => ENV["ses_username"],
|
||||
:password => ENV["ses_password"],
|
||||
:user_name => ENV["SES_USERNAME"],
|
||||
:password => ENV["SES_PASSWORD"],
|
||||
:authentication => :login,
|
||||
:enable_starttls_auto => true
|
||||
}
|
||||
|
||||
@@ -56,12 +56,12 @@ Rails.application.configure do
|
||||
# config.active_job.queue_adapter = :resque
|
||||
# config.active_job.queue_name_prefix = "chatwoot_#{Rails.env}"
|
||||
config.action_mailer.perform_caching = false
|
||||
config.action_mailer.default_url_options = { host: ENV['frontend_url'] }
|
||||
config.action_mailer.default_url_options = { host: ENV['FRONTEND_URL'] }
|
||||
config.action_mailer.smtp_settings = {
|
||||
address: ENV['ses_address'],
|
||||
address: ENV['SES_ADDRESS'],
|
||||
port: 587,
|
||||
user_name: ENV['ses_username'], # Your SMTP user
|
||||
password: ENV['ses_password'], # Your SMTP password
|
||||
user_name: ENV['SES_USERNAME'], # Your SMTP user
|
||||
password: ENV['SES_PASSWORD'], # Your SMTP password
|
||||
authentication: :login,
|
||||
enable_starttls_auto: true
|
||||
}
|
||||
|
||||
@@ -28,11 +28,11 @@ end
|
||||
|
||||
class ChatwootFbProvider < Facebook::Messenger::Configuration::Providers::Base
|
||||
def valid_verify_token?(_verify_token)
|
||||
ENV['fb_verify_token']
|
||||
ENV['FB_VERIFY_TOKEN']
|
||||
end
|
||||
|
||||
def app_secret_for(_page_id)
|
||||
ENV['fb_app_secret']
|
||||
ENV['FB_APP_SECRET']
|
||||
end
|
||||
|
||||
def access_token_for(page_id)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
uri = URI.parse(ENV['REDIS_URL'])
|
||||
uri = URI.parse(ENV.fetch('REDIS_URL', 'redis://127.0.0.1:6379'))
|
||||
redis = Rails.env.test? ? MockRedis.new : Redis.new(url: uri)
|
||||
Nightfury.redis = Redis::Namespace.new('reports', redis: redis)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user