我们当前的生产部署使用jenkins将warble生成的war文件部署到Tomcat。整个事情就像一个魅力。然而,我遇到的问题是如何通过“bundle exec sidekiq [options]”启动sidekiq的工作人员。理想情况下,我希望避免在这台机器上设置一个完全独立的红宝石环境,但要想正常运行,sidekiq需要访问爆炸/安装的应用程序环境等。
是否有可接受的方法来做这样的事情?有没有更好的方法在像bundle这样的实例中启动sidekiq?
答案 0 :(得分:0)
This项目可能有所帮助。它允许您将任何可以作为rake任务的内容打包到jar文件中。他们的文档有关于鸣鸟使用的一些特定说明。看看吧!
有关如何从命令行外部运行Sidekiq的说明,请从项目根目录执行以下操作:
cat $(bundle show sidekiq)/bin/sidekiq
你应该看到一些代码:
cli = Sidekiq::CLI.instance
cli.parse
cli.run
如果您读入CLI类,您会注意到parse将ARGV作为默认参数,但您可以使用自己的参数覆盖它:
cli.parse "-q myqueue -e production".split(' ')