Capistrano 多用户部署

Capistrano Multi-user Deployment

我们使用 Capistrano 将更改部署到我们的网站。一切都很完美,但我现在有另一名员工接受过部署更改的培训。每次她部署更改时,她都必须更改 deploy.rb 文件并更改 set:user 给她(和 vise vera)。代码中有没有办法使用多个用户?

例如: set:user 用户 1 或用户 2?

由于我们使用 Github 进行版本控制,并且我们强制要求对每个更改发表评论,这会导致很多额外的步骤。

如果您需要为多个用户部署应用程序,您可以在 deploy.rb 文件中动态更改用户名。

我不确定,如果 capistrano 允许你开箱即用,但你可以拖放一个文件,例如在你的项目根目录或其他地方,只需要一个用户名。

在deploy.rb

set :user, File.read('/path/to/file').strip

请记住,您还应该将此文件添加到 .gitignore。所以每个开发人员都应该有自己的文件,其中包含部署用户名。

您可以简单地完全删除用户名。然后它应该使用您的本地用户名:

server 'myservername', roles: %w{web app db}

如果服务器用户名与您的本地用户名不同,请尝试更新 ~/.ssh/config 以指定正确的用户。

Host myservername
  User user2