Heroku procfile から Sidekiq ジョブを開始できますか?

概要

MigrationWorker というワーカーがある場合、コードを Heroku にプッシュするときに実行される procFile からそれを実行できますか?

これはすべてを開始する現在の procFile ですが、これを rake タスクから実行できるか、それとも何らかの方法でワーカー自体を実行できるのでしょうか。

release: bin/rails db:migrate
web: bin/start-pgbouncer-stunnel bundle exec puma -p ${PORT:-3000}
worker: bundle exec sidekiq -c ${SIDEKIQ_CONCURRENCY:-5}

解決策

アプリのルートにファイルを作成し、Sidekiq ジョブをトリガーするコードを追加できます。

カスタムファイル.rb

MyWorker.perform_async

そして、procfile で次のことを行うサービスを作成できます。

sidekiq_job_at_boot: rails runner custom_file.rb

最善の解決策かどうかはわかりません。 もしかしたら、いくつかの問題があり、誰かがより良い解決策を持っているかもしれません。しかし、それはうまくいくはずです。