我正在尝试发布运行以下命令的gem的新版本:
rake release --trace
但这个过程一直停留在这里:
rake release --trace
** Invoke load_app (first_time)
** Execute load_app
** Invoke release (first_time)
** Invoke build (first_time)
** Execute build
paperclip_upload 1.2.0 built to pkg/paperclip_upload-1.2.0.gem.
** Invoke release:guard_clean (first_time)
** Execute release:guard_clean
** Invoke release:source_control_push (first_time)
** Execute release:source_control_push
Tag v1.2.0 has already been created.
** Invoke release:rubygem_push (first_time)
** Execute release:rubygem_push
我尝试过但没有成功的事情:
- 移除github标记,然后再次释放
- 执行
gem update --system
,将gem更新到最新版本(2.4.8( - 重置我的rubygems API密钥
- 使用api。
curl --data-binary @pkg/paperclip_upload-1.2.0.gem -H 'Authorization:XXX' https://rubygems.org/api/v1/gems
POST不起作用,但我可以通过执行GET来检索我的宝石。
使用宝石
require 'rubygems' require 'gems' Gems.configure do |config| config.username = 'xxx' config.password = 'xxx' end Gems.push(File.new("pkg/paperclip_upload-1.2.0.gem"))
避免使用rake任务执行
gem build
,然后执行gem push -v pkg/paperclip_upload-1.2.0.gem
,但也被卡住:gem push -v pkg/paperclip_upload-1.2.0.gem GET https://rubygems.org/latest_specs.4.8.gz 302 Moved Temporarily GET https://s3.amazonaws.com/production.s3.rubygems.org/latest_specs.4.8.gz 304 Not Modified GET http://rubygems.org/latest_specs.4.8.gz 302 Moved Temporarily GET http://production.s3.rubygems.org/latest_specs.4.8.gz 200 OK GET http://rubygems.org/quick/Marshal.4.8/rubygems-update-2.4.8.gemspec.rz 302 Moved Temporarily GET http://rubygems.global.ssl.fastly.net/quick/Marshal.4.8/rubygems-update-2.4.8.gemspec.rz 200 OK Pushing gem to http://rubygems.org/... POST http://rubygems.org//api/v1/gems connection reset after 1 requests, retrying POST http://rubygems.org//api/v1/gems connection reset after 1 requests, retrying ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError) too many connection resets (http://rubygems.org//api/v1/gems)
有线索吗?
RubyGems的状态页面对我来说都是绿色的。
对我来说,在Rubygems.org上启用2FA后,我无法再运行rake release
。
release:rubygem_push
梯级悬空。原来gem
的旧版本不支持2FA,而中间版本有一个错误,进程正在等待2FA代码输入,但没有提示。
对我来说,解决方案是在进程等待时键入2FA代码+return
。
最终,您应该能够使用gem update --system
获得完全支持2FA的gem
的新版本。
这是我的问题如何缩小宝石的大小
尝试发送一个包含585MB tmp垃圾的gem并不是最好的主意。。。