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
我们使用 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