development.rb 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. # frozen_string_literal: true
  2. Rails.application.configure do
  3. # Settings specified here will take precedence over those in
  4. # config/application.rb.
  5. # In the development environment your application's code is reloaded on
  6. # every request. This slows down response time but is perfect for development
  7. # since you don't have to restart the web server when you make code changes.
  8. config.cache_classes = false
  9. # Do not eager load code on boot.
  10. config.eager_load = false
  11. # Show full error reports.
  12. config.consider_all_requests_local = true
  13. # Enable/disable caching. By default caching is disabled.
  14. # Run rails dev:cache to toggle caching.
  15. if Rails.root.join('tmp', 'caching-dev.txt').exist?
  16. config.action_controller.perform_caching = true
  17. config.action_controller.enable_fragment_cache_logging = true
  18. config.cache_store = :memory_store
  19. config.public_file_server.headers = {
  20. 'Cache-Control' => "public, max-age=#{2.days.to_i}",
  21. }
  22. else
  23. config.action_controller.perform_caching = false
  24. config.cache_store = :null_store
  25. end
  26. # Store uploaded files on the local file system (see config/storage.yml for
  27. # options)
  28. config.active_storage.service = :local
  29. # Don't care if the mailer can't send.
  30. config.action_mailer.raise_delivery_errors = false
  31. config.action_mailer.perform_caching = false
  32. # Print deprecation notices to the Rails logger.
  33. config.active_support.deprecation = :log
  34. # Raise an error on page load if there are pending migrations.
  35. config.active_record.migration_error = :page_load
  36. # Highlight code that triggered database queries in logs.
  37. config.active_record.verbose_query_logs = true
  38. # Debug mode disables concatenation and preprocessing of assets.
  39. # This option may cause significant delays in view rendering with a large
  40. # number of complex assets.
  41. config.assets.debug = true
  42. # Suppress logger output for asset requests.
  43. config.assets.quiet = true
  44. # Raises error for missing translations
  45. # config.action_view.raise_on_missing_translations = true
  46. # Use an evented file watcher to asynchronously detect changes in source code,
  47. # routes, locales, etc. This feature depends on the listen gem.
  48. config.file_watcher = ActiveSupport::EventedFileUpdateChecker
  49. # Remove web_console warnings when running inside a docker container:
  50. # Cannot render console from 172.27.0.1! Allowed networks: 127.0.0.1
  51. if File.file?('/.dockerenv')
  52. require 'socket'
  53. require 'ipaddr'
  54. # Whitelist docker ip for web console
  55. Socket.ip_address_list.each do |addrinfo|
  56. next unless addrinfo.ipv4?
  57. next if addrinfo.ip_address == '127.0.0.1' # Already whitelisted
  58. ip = IPAddr.new(addrinfo.ip_address).mask(24)
  59. Logger.new(STDOUT)
  60. .info("Adding #{ip.inspect} to config.web_console.whitelisted_ips")
  61. config.web_console.whitelisted_ips ||= []
  62. config.web_console.whitelisted_ips << ip
  63. end
  64. end
  65. end