berrypod/config/prod.exs
jamey 5e70c07b60
All checks were successful
deploy / deploy (push) Successful in 3m46s
persist mockup variants on fly volume across deploys
Source mockup WebPs are copied from the release to /data/mockups/
on startup, and variants are generated there. This eliminates the
182-job storm on every deploy that was saturating the CPU and
causing SQLite locking. After the first successful run, subsequent
deploys find all variants intact.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 11:20:33 +00:00

28 lines
1.0 KiB
Elixir

import Config
# Note we also include the path to a cache manifest
# containing the digested version of static files. This
# manifest is generated by the `mix assets.deploy` task,
# which you should run after static files are built and
# before starting your production server.
config :berrypod, BerrypodWeb.Endpoint, cache_static_manifest: "priv/static/cache_manifest.json"
# Configures Swoosh API Client
config :swoosh, api_client: Swoosh.ApiClient.Req
# Disable Swoosh Local Memory Storage
config :swoosh, local: false
# Do not print debug messages in production
config :logger, level: :info
# Structured JSON logs for production (machine-parseable by fly logs, journalctl, Loki, etc.)
config :logger, :default_handler, formatter: {LoggerJSON.Formatters.Basic, []}
# Persistent image cache and mockup variants on the Fly volume (survives deploys)
config :berrypod, :image_cache_dir, "/data/image_cache"
config :berrypod, :mockup_dir, "/data/mockups"
# Runtime production configuration, including reading
# of environment variables, is done on config/runtime.exs.