ruby - 如何将我的 ruby​​ gem 发布到我自己的存储库?

标签 ruby rubygems rake rake-task

我已经编写了一个 ruby gem,并且我希望有一个 rake 任务来将 gem 发布到我的自己的 GemInABox 存储库:http://my-gem-repo.com

实现这一目标的最简单方法是什么?

此外,我想阻止默认发布到 Rubygems.org

最佳答案

有关托管您自己的 gem 的信息可以在 http://guides.rubygems.org/run-your-own-gem-server/ 找到。

根据该站点和 https://github.com/cwninja/geminabox 上的自述文件设置服务器

要释放你的 gem :

gem build my_ruby_gem.gemspec
#push all versions to the gem server
gem inabox 

第一次运行 gem inabox 时,您将配置目标。

对于 rake 任务,您可以将此 Rakefile 放入您的 gem 源中:

#!/usr/bin/env rake
desc "build the gem"
task :build do
  system("gem build *.gemspec")
end

desc "push the gem to the gem inabox server"
task :release do
  system("gem inabox")
end

desc "build and release the gem"
task :build_and_release => [:build,:release]

系统调用绝对是黑客行为,但它们是使其工作的简单方法。要求更好的 rake 任务: https://github.com/cwninja/geminabox/issues/59

关于ruby - 如何将我的 ruby​​ gem 发布到我自己的存储库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15941568/

相关文章:

ruby-on-rails - 如何在没有 root 用户的情况下运行 ruby​​ on Rails 的 docker 容器?

ruby-on-rails - 如何使用 rspec mocks 3.3 测试方法的救援 block

ios - 使用 Vuforia 8.5.9 构建 Unity iOS 版本 2019.3.0f1 时出现此构建时间错误

ruby-on-rails - 用于 ruby​​/rails 的 OCR tesseract gem - 如何安装?

ruby-on-rails - 如何列出所有 Rails 3 rake 任务? rake -T 似乎不完整

ruby - 你如何在 Rake 任务之间进行通信?

ruby 轨道 : how to link employees table with devise authentification

ruby - Rails Redis 将计数器重置为 0

rubygems - 在 Jekyll 上运行 KaTeX?

ruby - 从任务中访问 Rake 任务描述