1

我正在尝试为 teamcity 创建一个新的验收代理...我按照这篇文章http://docs.rubygems.org/read/chapter/18 ...

我在 IIS 中创建了一个名为 gemserver 的网站,并拥有一个端口 910。它有 gems 文件夹,其中包含像 activerecord-sqlserver-adapter-1.0.0.9250 这样的古老宝石......

我不知道 .gem 扩展名的 mime 类型,所以我只放了 application/x-ruby-gem。虽然当我手动输入 machinename:910/gems/Gem_Name 我可以下载它。

但是当我使用捆绑安装时,它给出了以下错误

Fetching source index for http://gems.github.com/
Fetching source index for my server url
Could not reach rubygems repository http://gems.github.com/, my server url:
910/, http://rubygems.org/
Fetching source index for http://rubygems.org/
Could not find gem 'activerecord-sqlserver-adapter (= 1.0.0.9250, runtime)' in a
ny of the gem sources listed in your Gemfile.

请在 Gemfile 下方找到。

source "http://computerName:910/"
source :gemcutter

gem 'rake', '0.8.7'
gem 'cucumber', '0.6.2'
gem 'watir', '1.6.5'
gem 'activerecord', '2.3.8'
gem 'activerecord-sqlserver-adapter', '1.0.0.9250'
gem 'rspec', '1.3.0'
gem 'parseexcel', '0.5.2'
gem 'win32-api', '1.4.5'
gem 'nokogiri', '1.4.1'
gem 'win32-eventlog', '0.5.2'
gem 'win32console'
4

2 回答 2

1

我不知道 .gem 扩展名的 mime 类型,所以我只放了 application/x-ruby-gem。虽然当我手动输入 machinename:910/gems/Gem_Name 我可以下载它。

您的 gem 客户抱怨无法访问源索引,而不是 gem 本身。

在您链接到的文章中,第 4.2.4 项指示:

运行generate_indexgem 命令以生成RubyGems 客户端所需的yaml和文件。yaml.Z

确保在您的 gems 目录中generate_index创建了yamlyaml.Z文件。检查它们是否可以访问。这是您的 Gems 客户正在寻找的源索引。

例如 GitHub 的 gem 源码索引文件位于:http: //gems.github.com/gems/yaml

于 2012-11-26T11:56:32.633 回答
1
  1. 使用 ip 地址而不是计算机名,看看是否能解决您的 504 问题

  2. 现在尝试更新您的 gem,如果您在尝试访问名为 /quick 的文件夹时遇到 404 错误,则使用 --legacy 选项运行 generate_index 命令

gem generate_index --legacy
  1. 将 .rz mimetype 添加到您的 IIS,以便它可以提供 rzip 文件。在 IIS mime 类型中,添加以下映射:

.rz -> 应用程序/x-rzip

于 2012-11-30T17:25:58.150 回答