gpt4 book ai didi

ruby-on-rails - 如何让承包商正确访问我的工作流程?

转载 作者:太空宇宙 更新时间:2023-11-04 09:48:17 24 4
gpt4 key购买 nike

我使用 Rails 并使用 Capistrano 将应用程序部署到服务器。我有一个 Jenkins 服务器(在我自己的 linode 上)。

我想知道的是如何设置承包商,以便他们有足够的访问权限来完成工作并使用我拥有的工具(如 Jenkins),但不允许他们造成任何严重损害。

工作流程可能是这样的:

  • 提交对私有(private) git 仓库的更改
  • 部署到 Jenkins
  • 将更改部署到暂存服务器(我的 linode)
  • 将更改部署到实时服务器(客户端的 linode)

我对所有事情都使用 SSH,但我想知道我是否允许用户过多访问,因为他们可能能够运行 sudo 命令并更改用户密码并绕过 SSH key /配对身份验证。每个用户是否应该有一个受限的 Linux 用户帐户(可能共享同一个受限帐户),并向其中添加他们的 SSH key ?

我的另一个问题是,我可以使用 Jenkins 部署到暂存/实时服务器,然后只授予从我的 Jenkins 服务器访问这些服务器的权限吗?

我可以只允许开发人员访问 git 存储库来完成所有这些吗? Jenkins 跟踪它,然后部署到暂存/实时?

最佳答案

基本上,我认为应该是下一个。

  1. 将 jenkins 设置为在将提交推送到 gitolite 或您使用的任何内容后运行测试,并将结果通过电子邮件发送给每个人。
  2. 允许承包商部署到暂存区 - 因为他们需要进行测试。
  3. 只有您可以部署到生产环境。

此外,您不应该在登台机上给他们 sudo。只需设置一个部署角色,即可使用代码访问目录。因为如果你使用乘客,你甚至不需要重新启动服务器(只需使用 touch %RAILS_ROOT%/tmp/restart.txt ,如果你知道我的意思)并通过 rvm 设置 ruby​​ env

关于ruby-on-rails - 如何让承包商正确访问我的工作流程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13860067/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com