1

我们在 ruby​​ 中构建了一个自定义套接字服务器并将其打包为 gem。由于这是一个内部项目,我们不能简单地将其发布到 RubyForge 或 GitHub。我尝试设置我们自己的 gem 服务器,但 gem 不会通过 https 进行身份验证。我们的其他部署都是针对使用 capistrano 和 svn 进行部署的标准 Rails 应用程序。

我们当前的设置是使用带有 capistrano 的类似 rails 的部署。它执行以下操作:

  • 查看来自 svn 的代码
  • 构建宝石
  • 安装宝石
  • 重启服务器

这看起来很尴尬,并且使 gem 打包看起来像是额外的工作——但在部署问题之外,它非常适合作为 gem。

有更清洁的方法吗?

4

3 回答 3

2

您可以从本地文件系统安装 gem。

gem install /path/to/some.gem

用它编写 scp 脚本或使用 NFS 挂载等对您来说应该不会太难。

于 2008-11-16T08:06:44.350 回答
2

开始

gem server #That will serve all your local installed gems.

gem install YourLocalPkg1.X.X.gem

#在你的主机上

采用

gem sources --add localhost:8808
gem install YourGem

在客户端机器上开发一些东西

rake gem
gem install YourLocalPkg2.X.X.gem #on YourHost

采用

gem update YourGem #on client machine

也许您需要使用 https,但我在您的帖子中不明白为什么。在某些机器上

* Check out the code from svn #the railspart not in the gem
* gem update  YourGem #  or install if not exist....
* Restart the server
于 2008-11-17T12:50:56.240 回答
0

gem install --local path_to_gem/filename.gem 会有所帮助。或者,您可以在您的 Web 服务器上获得受信任的证书。

您可能可以使用 gem install -P NoSecurity 或 -P LowSecurity 从服务器安装,但我没有尝试过。

http://www.rubygems.org/read/chapter/21

于 2008-11-16T05:01:06.017 回答