繁体   English   中英

将Rails引擎构建为宝石的工作流程

[英]workflow for building rails engines as gems

我们正在研究构建一个非常大型的Rails应用程序,并考虑使用引擎来更好地将“模块”从主应用程序中分离出来。

我们通过使用gem motorhead创建一个小型引擎开始了此过程(需要使用active_if组件的想法)。 然后将该引擎从主应用程序中删除,并进行了git init,然后推送至github。

然后,主应用程序便能够将Gemfile中的宝石插入。

在此概念验证期间,它虽然有效,但效率不是很高,而且更新新引擎/ gem有点麻烦,因为它在某种程度上还是一个子模块。 在构建这样的模块化应用程序时,用于构建和维护引擎/宝石的正确工作流程是什么?

提前致谢

关于将Gems或Engines部署为模块的最尴尬的部分是不断需要更新。 使用以下方法,我们取得了许多成功:

bundle config local.my_gem ~/projects/my_gem/

它将指向磁盘上的Gem / Engine版本,而不修改Gemfile和Gemfile.lock。

要删除本地替代运行:

bundle config --delete local.my_gem ~/projects/my_gem/

有了它,您应该能够限制Gemfile.lock必须更新为部署时间的时间。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM