6

我正在为我正在从事的项目寻找一种远程部署策略,甚至从头开始设计一个。

但是我偶然发现了一个几乎相同的实现,称为 Webistrano。有没有人尝试使用它进行项目部署,还有人在使用它吗?这有什么好处,还是让你想用钝铅笔刺伤自己的眼睛?

4

3 回答 3

8

我的 webdev 公司成功地将它用于不同生产服务器上的几十个 PHP 项目。我们对此非常满意!

Webistrano 是 capistrano 的 Web GUI。我们选择它而不是直接运行 Capistrano 的原因是它提供了一个很好的集中式界面。我们的大多数开发人员都不是很精通 CLI,我认为他们真的不需要。与其让 capistrano 食谱到处传播,我们更喜欢网络应用程序的方法。

Webistrano 存储每个部署日志和用户名,因此我们有一些责任。它提供了一个中心位置,可以查看当前项目的哪个修订版本。一些管理员能够为 Webistrano 创建配方,并且 Webistrano 的 GUI 可以被我们内联网上的所有开发人员访问。他们只需要选择一个项目和一个阶段(如 Dev 或 Prod)并按下部署。

它大大降低了出错的可能性,并且证明对我们来说是完美的。

我想念的一些功能:

  • 用户权限:比管理员和用户更受限制的用户权限。我们是否愿意将某些操作或项目限制为某些用户。
  • 交互式提示:如果 capistrano 进程在部署期间需要输入,Webistrano 不能要求输入。您可以在部署之前让 webistrano 提示变量 ,但在部署期间不能提示,如果出现一些意外问题。
  • 集中式身份验证:好吧,公平地说,它确实支持 .htaccess 身份验证,所以我们可能应该配置 PAM 来检查 LDAP。

它是开源的,所以我可能应该看看自己实现其中的一些。只是希望我在 Ruby on Rails 上做得更好。

于 2009-06-27T14:52:56.393 回答
3

关于Webistrano中用户权限不足的问题,可以试试Webistrano Privilege插件:https ://github.com/espace/webistrano_privileges/

“Webistrano 特权,是 webistrano 1.3 的 Rails 插件,用于引入用户对项目的访问控制。它将保护和组织用户对项目的访问,并赋予他们部署他们只能访问的项目的特权。”

于 2011-04-04T07:59:25.773 回答
-1

假设您正在部署到 *nix 服务器...

为什么不直接使用 webistrano 只是一个包装器的 capistrano 呢?它可以配置为部署几乎任何东西。(Capistrano 使通过 ruby​​ 使用 ssh 变得容易。)

如果您不部署 Rails,您可能最终会编写自定义脚本,如果您有任何系统管理经验,这应该不难。capistrano 项目的文档很烂,但是有很多人已经弄清楚了,一旦你的部署脚本工作了,你应该会很好。

于 2009-02-09T13:35:00.880 回答