首页 文章

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

提问于
浏览
2

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

我们已经通过使用gem motorhead创建一个小引擎来启动这个过程(想要使用它的active_if组件) . 然后将该引擎从主应用程序中删除并给出一个git init,然后推送到github .

然后主应用程序能够在Gemfile中拉出gem .

在这个概念验证期间,它可以工作,但效率不高,而且更新新引擎/ gem也有点尴尬,因为它在某种程度上是一个子模块 . 在构建像这样的模块化应用程序时,构建和维护引擎/宝石的正确工作流程是什么?

提前致谢

1 回答

  • 0

    关于将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必须更新到部署时间的时间 .

相关问题