82626f020d
Ensure we can serve the app from multiple hosts without breaking links. * Switch unnecessary full URLs to paths * Drop default host/port URL options for controllers Shell 1 ```bash bin/dev ``` Shell 2 ```bash tailscale serve http://fizzy.localhost:3006 ```
99 lines
3.5 KiB
Ruby
99 lines
3.5 KiB
Ruby
require "active_support/core_ext/integer/time"
|
|
|
|
Rails.application.configure do
|
|
# Settings specified here will take precedence over those in config/application.rb.
|
|
|
|
# In the development environment your application's code is reloaded any time
|
|
# it changes. This slows down response time but is perfect for development
|
|
# since you don't have to restart the web server when you make code changes.
|
|
config.enable_reloading = true
|
|
|
|
# Do not eager load code on boot.
|
|
config.eager_load = false
|
|
|
|
# Show full error reports.
|
|
config.consider_all_requests_local = true
|
|
|
|
# Enable server timing
|
|
config.server_timing = true
|
|
|
|
# Enable/disable caching. By default caching is disabled.
|
|
# Run rails dev:cache to toggle caching.
|
|
if Rails.root.join("tmp/caching-dev.txt").exist?
|
|
config.action_controller.perform_caching = true
|
|
config.action_controller.enable_fragment_cache_logging = true
|
|
|
|
config.cache_store = :memory_store
|
|
config.public_file_server.headers = { "Cache-Control" => "public, max-age=#{2.days.to_i}" }
|
|
else
|
|
config.action_controller.perform_caching = true
|
|
|
|
config.cache_store = :null_store
|
|
end
|
|
|
|
# Store uploaded files on the local file system (see config/storage.yml for options).
|
|
if Rails.root.join("tmp/minio-dev.txt").exist?
|
|
config.active_storage.service = :devminio
|
|
config.x.content_security_policy.connect_src = "http://minio.localhost:39000"
|
|
config.x.content_security_policy.img_src = "http://minio.localhost:39000"
|
|
else
|
|
config.active_storage.service = :local
|
|
end
|
|
|
|
# Don't care if the mailer can't send.
|
|
config.action_mailer.raise_delivery_errors = false
|
|
|
|
config.action_mailer.perform_caching = false
|
|
|
|
# Print deprecation notices to the Rails logger.
|
|
config.active_support.deprecation = :log
|
|
|
|
# Raise exceptions for disallowed deprecations.
|
|
config.active_support.disallowed_deprecation = :raise
|
|
|
|
# Tell Active Support which deprecation messages to disallow.
|
|
config.active_support.disallowed_deprecation_warnings = []
|
|
|
|
# Raise an error on page load if there are pending migrations.
|
|
config.active_record.migration_error = :page_load
|
|
|
|
# Highlight code that triggered database queries in logs.
|
|
config.active_record.verbose_query_logs = true
|
|
|
|
# Highlight code that enqueued background job in logs.
|
|
config.active_job.verbose_enqueue_logs = true
|
|
|
|
# Raises error for missing translations.
|
|
# config.i18n.raise_on_missing_translations = true
|
|
|
|
# Annotate rendered view with file names.
|
|
config.action_view.annotate_rendered_view_with_filenames = true
|
|
|
|
# Uncomment if you wish to allow Action Cable access from any origin.
|
|
# config.action_cable.disable_request_forgery_protection = true
|
|
|
|
# Raise error when a before_action's only/except options reference missing actions
|
|
config.action_controller.raise_on_missing_callback_actions = true
|
|
|
|
# Prepend all log lines with the following tags.
|
|
config.log_tags = [ :request_id ]
|
|
|
|
if Rails.root.join("tmp/email-dev.txt").exist?
|
|
config.action_mailer.delivery_method = :letter_opener
|
|
config.action_mailer.perform_deliveries = true
|
|
else
|
|
config.action_mailer.raise_delivery_errors = false
|
|
end
|
|
|
|
config.hosts = [
|
|
"fizzy.localhost",
|
|
"localhost",
|
|
"127.0.0.1",
|
|
/^fizzy-\d+(:\d+)?$/, # review apps: fizzy-123:3000
|
|
/\.ts\.net$/ # tailscale serve: hostname.tail1234.ts.net
|
|
]
|
|
|
|
# Canonical host for mailer URLs (emails always link here, not personal Tailscale URLs)
|
|
config.action_mailer.default_url_options = { host: "#{config.hosts.first}:3006" }
|
|
end
|