diff --git a/config/config.exs b/config/config.exs index 90686f56c..c4fdb421e 100644 --- a/config/config.exs +++ b/config/config.exs @@ -37,21 +37,23 @@ config :ueberauth, Ueberauth, providers: %{} # Configure Oban (if using job processing) config :phoenix_kit, Oban, repo: PhoenixKit.Repo, - queues: [default: 10, emails: 50, file_processing: 20, posts: 10, scheduled_jobs: 1], + queues: [ + default: 10, + emails: 50, + file_processing: 20, + posts: 10, + scheduled_jobs: 1, + sitemap: 5, + sqs_polling: 1, + sync: 5, + shop_imports: 2 + ], plugins: [ - # Main pruner: 30 days for most queues - {Oban.Plugins.Pruner, - max_age: 60 * 60 * 24 * 30, - queue: [:default, :emails, :file_processing, :posts, :sitemap, :sqs_polling, :sync]}, - # Dedicated pruner: 1 day only for scheduled_jobs (cron runs every minute) - {Oban.Plugins.Pruner, max_age: 60 * 60 * 24, queue: [:scheduled_jobs]}, + # Pruner: delete completed/discarded jobs after 30 days + {Oban.Plugins.Pruner, max_age: 60 * 60 * 24 * 30}, {Oban.Plugins.Cron, crontab: [ - {"* * * * *", PhoenixKit.ScheduledJobs.Workers.ProcessScheduledJobsWorker}, - sitemap: 5, - sqs_polling: 1, - sync: 5, - shop_imports: 2 + {"* * * * *", PhoenixKit.ScheduledJobs.Workers.ProcessScheduledJobsWorker} ]} ] diff --git a/lib/phoenix_kit/install/oban_config.ex b/lib/phoenix_kit/install/oban_config.ex index ad495d5f9..44364318a 100644 --- a/lib/phoenix_kit/install/oban_config.ex +++ b/lib/phoenix_kit/install/oban_config.ex @@ -119,17 +119,15 @@ defmodule PhoenixKit.Install.ObanConfig do emails: 50, # Email processing file_processing: 20, # File variant generation (storage system) posts: 10, # Posts scheduled publishing - scheduled_jobs: 1, # Scheduled jobs cron (1-day retention) + scheduled_jobs: 1, # Scheduled jobs cron sitemap: 5, # Sitemap generation sqs_polling: 1, # SQS polling for email events (only one concurrent job) - sync: 5, # Sync data import + sync: 5, # Sync data import newsletters_delivery: 10 # Newsletters broadcast deliveries ], plugins: [ - # Main pruner: 30 days for most queues - {Oban.Plugins.Pruner, max_age: 60 * 60 * 24 * 30, queue: [:default, :emails, :file_processing, :posts, :sitemap, :sqs_polling, :sync]}, - # Dedicated pruner: 1 day only for scheduled_jobs (cron runs every minute) - {Oban.Plugins.Pruner, max_age: 60 * 60 * 24, queue: [:scheduled_jobs]}, + # Pruner: delete completed/discarded jobs after 30 days + {Oban.Plugins.Pruner, max_age: 60 * 60 * 24 * 30}, {Oban.Plugins.Cron, crontab: [ {"* * * * *", PhoenixKit.ScheduledJobs.Workers.ProcessScheduledJobsWorker} @@ -815,17 +813,15 @@ defmodule PhoenixKit.Install.ObanConfig do emails: 50, file_processing: 20, posts: 10, - scheduled_jobs: 1, # Scheduled jobs cron (1-day retention) + scheduled_jobs: 1, sitemap: 5, sqs_polling: 1, sync: 5, newsletters_delivery: 10 ], plugins: [ - # Main pruner: 30 days for most queues - {Oban.Plugins.Pruner, max_age: 60 * 60 * 24 * 30, queue: [:default, :emails, :file_processing, :posts, :sitemap, :sqs_polling, :sync]}, - # Dedicated pruner: 1 day only for scheduled_jobs (cron runs every minute) - {Oban.Plugins.Pruner, max_age: 60 * 60 * 24, queue: [:scheduled_jobs]}, + # Pruner: delete completed/discarded jobs after 30 days + {Oban.Plugins.Pruner, max_age: 60 * 60 * 24 * 30}, {Oban.Plugins.Cron, crontab: [ {"* * * * *", PhoenixKit.ScheduledJobs.Workers.ProcessScheduledJobsWorker} diff --git a/lib/phoenix_kit_web/components/core/phoenix_kit_globals.ex b/lib/phoenix_kit_web/components/core/phoenix_kit_globals.ex index 37be59fe4..32f55840f 100644 --- a/lib/phoenix_kit_web/components/core/phoenix_kit_globals.ex +++ b/lib/phoenix_kit_web/components/core/phoenix_kit_globals.ex @@ -27,6 +27,8 @@ defmodule PhoenixKitWeb.Components.Core.PhoenixKitGlobals do """ use Phoenix.Component + alias PhoenixKit.Utils.Routes + @doc """ Renders script tags that set PhoenixKit global variables and clear any cached transport fallback preferences. @@ -34,9 +36,13 @@ defmodule PhoenixKitWeb.Components.Core.PhoenixKitGlobals do attr :rest, :global def phoenix_kit_globals(assigns) do + prefix = Routes.url_prefix() + + assigns = assign(assigns, :prefix, prefix) + ~H"""