gpt4 book ai didi

ruby - Bundler 的 rake 与 geminabox 一起发布?

转载 作者:数据小太阳 更新时间:2023-10-29 07:34:21 24 4
gpt4 key购买 nike

有没有一种方法可以配置 bundler ,以便在我执行 rake release 时将 gem 提交到我自己的 gem 服务器(gem in a box 实例)而不是 ruby​​gems?

理想情况下,我可以从我的 git 存储库中省略此配置。

最佳答案

Rubygems 实际上是硬编码到 bundler 中的,我发现只有一种解决方法。

以下 monkeypatch 应该可以满足您的需求:

module Bundler
class GemHelper
protected
def rubygem_push(path)
if Pathname.new("~/.gem/nexus").expand_path.exist?
sh("gem nexus '#{path}'")
Bundler.ui.confirm "Pushed #{name} #{version} to https://<your-url-here>/."
else
raise "Your Nexus credentials aren't set. Run `gem nexus #{path}` to push your gem and set credentials."
end
end
end
end

以上是针对 Nexus 而不是 Geminabox,但该概念应该适用于任何一个。

就从 git 中省略它而言,恐怕我们运气不好。但是,您可以在项目之间适本地共享它,这样它就只需要检查到一个地方而不是多个地方。希望这对您有所帮助!

关于ruby - Bundler 的 rake 与 geminabox 一起发布?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14812828/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com