Sha256: f6763f7de55f44209ecdc7b43feecdd346c4cfef1bb154f6a84fb9c68ea9381a
Contents?: true
Size: 906 Bytes
Versions: 62
Compression:
Stored size: 906 Bytes
Contents
module Workarea module Configuration module Elasticsearch extend self def find workarea_config.presence || secrets_config.presence || env_config end def workarea_config (Workarea.config.elasticsearch || {}).deep_symbolize_keys end def secrets_config result = Rails.application.secrets.elasticsearch || {} result.deep_dup.deep_symbolize_keys end def env_config if env_hosts.present? { urls: env_hosts } elsif ENV['WORKAREA_ELASTICSEARCH_URL'].present? { url: ENV['WORKAREA_ELASTICSEARCH_URL'] } else { url: 'localhost:9200', logger: Rails.logger } end end private def env_hosts ENV .select { |k| k =~ /^WORKAREA_ELASTICSEARCH_URL_\d+$/ } .map(&:last) .reject(&:blank?) end end end end
Version data entries
62 entries across 62 versions & 1 rubygems