4

rubygems ではなくrake release、自分の gem サーバー ( box インスタンス内の gem ) に gem を送信するように bundler を設定する方法はありますか?

理想的には、この構成は、私の git リポジトリから省略できるものです。

4

4 に答える 4

1

これは、geminabox の http ポスト リクエストを模倣し、rake release:inabox でバンドラーの rake release を上書きする依存関係のない gem を作成しました。

https://github.com/dfherr/geminabox-release

于 2014-09-14T17:43:39.573 に答える
0

Gemfileに追加'bundler_geminabox'します。

group :development do
  gem 'bundler_geminabox'
end

次に、rakefile で、以下を要求する代わりに'bundler/gem_tasks':

require 'bundler_geminabox/gem_tasks'

rakefile にタスクを追加する必要はありません。、、およびが自動的に取得されrake build、最後に にリストされているサーバーにアップロードされます。それ以外の場合、動作は が提供する同等のタスクと同じです。rake installrake release~/.gem/geminaboxbundler/gem_tasks

Github の Gem: https://github.com/joshkrueger/bundler_geminabox

于 2014-06-26T13:35:41.110 に答える
0

概念は同じですが、gem を ruby​​gems にアップロードするタスクを変更することができました。

Rake::Task['release:rubygem_push'].clear
namespace :release do
    task :rubygem_push do
      version = ModuleName::VERSION
      name = 'module_name'
      cmd = "gem nexus pkg/#{name}-#{version}.gem"
      puts `#{cmd} 2>&1`
    end
end
于 2018-02-13T19:49:25.740 に答える