Ruby on rails 什么';对于存储在CVS中的Rails应用程序来说,最简单的部署/回滚方案是什么,它的目的地是Linux服务器?

Ruby on rails 什么';对于存储在CVS中的Rails应用程序来说,最简单的部署/回滚方案是什么,它的目的地是Linux服务器?,ruby-on-rails,deployment,cvs,Ruby On Rails,Deployment,Cvs,我有一个存储在CVS中的Rails应用程序,因为这是我们的公司标准。它需要部署到使用Apache和Phusion运行Rails的单个生产服务器上 关于生产服务器: RedHat Enterprise Linux 5.1 该应用程序在我们公司内部使用,而不是在外部托管 我有根访问权限,可以安装必要的软件 我有ssh访问该框的权限,如果需要,还可以在那里运行cvs 当前解决方案: 为此,我一直在使用capistrano的补丁版本(几个CVS补丁),但这太过分了。(我已经看过部署器vlad,但它不

我有一个存储在CVS中的Rails应用程序,因为这是我们的公司标准。它需要部署到使用Apache和Phusion运行Rails的单个生产服务器上

关于生产服务器:

  • RedHat Enterprise Linux 5.1
  • 该应用程序在我们公司内部使用,而不是在外部托管
  • 我有根访问权限,可以安装必要的软件
  • 我有ssh访问该框的权限,如果需要,还可以在那里运行cvs
当前解决方案:

为此,我一直在使用capistrano的补丁版本(几个CVS补丁),但这太过分了。(我已经看过部署器vlad,但它不支持CVS。)我想要更简单的东西,具有更少的依赖项/补丁

理想的解决方案:

  • 我希望部署是一个检查CVS树顶端并部署它的单个命令
  • 我希望rollback是一个恢复到以前安装的版本的单个命令
  • 两个Rakefile任务或一个shell脚本就可以了
  • 发布需要是唯一可识别的——通过时间戳、CVS标记或某种版本号

    • Capistrano是当前Rails应用程序部署的黄金标准;如果您已经让它工作了,为什么要更改它?

      Capistrano是Rails应用程序部署的当前黄金标准;如果您已经让它工作了,为什么要更改它?

      Capistrano有什么问题?它可以做所有这些事情,如果你不想要它的额外功能,你就不必使用它们。保持项目中的所有宝石和其他“移动部件”升级和“同步”需要时间。我希望尽可能减少依赖性。Capistrano是在多个开发/登台/测试箱上维护/升级的额外工作,特别是因为CVS模块需要补丁。(我会将补丁提交给Capistrano项目,但其中一个在成为通用补丁之前需要进行工作。)Capistrano有什么问题?它可以做所有这些事情,如果你不想要它的额外功能,你就不必使用它们。保持项目中的所有宝石和其他“移动部件”升级和“同步”需要时间。我希望尽可能减少依赖性。Capistrano是在多个开发/登台/测试箱上维护/升级的额外工作,特别是因为CVS模块需要补丁。(我会将补丁提交给Capistrano项目,但其中一个在成为通用补丁之前需要工作。)因为它只有在我手动应用几个补丁之后才能工作。我不想每次升级都这么做。此外,由于我的情况非常简单,我认为Capistrano可以被一个简短的shell脚本所取代,这意味着依赖性更少,维护更少。因此,与其手动修补Capistrano,以备将来可能永远无法更新(我的意思是,甚至没有人在积极地处理它!),不如手动修补Capistrano,如果您想要更改自定义脚本,您现在更愿意编写一个也需要维护的自定义脚本?Psh。使用Capistrano.:)因为它只有在我手动应用了几个补丁之后才能工作。我不想每次升级都这么做。此外,由于我的情况非常简单,我认为Capistrano可以被一个简短的shell脚本所取代,这意味着依赖性更少,维护更少。因此,与其手动修补Capistrano,以备将来可能永远无法更新(我的意思是,甚至没有人在积极地处理它!),不如手动修补Capistrano,如果您想要更改自定义脚本,您现在更愿意编写一个也需要维护的自定义脚本?Psh。使用Capistrano.:)