Ho bisogno di eseguire uno script semplice quotidianamente con parametri specifici come questo. Quando lo eseguo manualmente:
bundle exec rails runner auto_send_messages_script.rb --messages-limit 3 --sleep-timer 5 --marker welcome_back_campaign_2025 --order-type created_at —-order desc
Non vedo errori e tutto funziona correttamente, sono nuovo in Ruby e mi chiedo se ci sia un modo facile per eseguire questo script e interagire con Discourse.
merefield
(Robert)
13 Febbraio 2025, 7:35pm
2
Il modo di Discourse (e Rails) per farlo sarebbe creare un plugin ed eseguirlo come un processo pianificato (sidekiq).
Ci sono molti plugin con processi, dai un’occhiata in giro.
Da un punto di vista dello sviluppo dell’applicazione:
Da un punto di vista dei sistemi:
La cosa più semplice da fare è eseguirlo sull’host.
You have a scheduler outside of the container available, right?
You can schedule it there, e.g.:
# put in host crontab
# run backup once every 4 hours on the hour
0 */4 * * * docker exec app discourse backup --sql-only