有哪些方法可以限制在特定版本的App Engine上进行部署?

时间:2019-01-22 09:36:08

标签: google-app-engine

我创建了一个GCP项目,并使用App Engine标准环境进行部署。 我有多个开发人员在同一个项目上工作,并使用各种版本在App引擎上进行部署,但是,我们使用的是默认版本,所有流量都分配给该默认版本。

  • 那么有什么方法可以限制默认版本的部署。也就是说,我们希望特定人员能够在默认版本上进行部署,而不会删除同一项目中其他人员的部署权限。
  • 对于这种情况,是否有其他替代方法。

2 个答案:

答案 0 :(得分:1)

这取决于要在其中部署应用程序的运行时。

例如,在Python中,如果您使用命令gcloud app deploy(请参阅documentation),则可以执行以下操作:

gcloud app deploy --no-promote --version=<MY-VERSION-NAME>

--no promote标志将避免将所有流量分配给您正在部署的版本,而--version=<MY-VERSION-NAME>指定将从部署中创建的版本的名称,并替换较旧的版本具有相同名称(如果存在)。

答案 1 :(得分:0)

AFAIK无法限制特定版本的部署。所有访问控制方法都围绕某个特定身份,是否允许访问以部署某个GAE项目。无关紧要的是所使用的版本字符串(即您的方法中要部署到的版本)。

这属于Advantages of implementing CI/CD environments at GAE project/app level vs service/module level?的可接受答案中提到的“允许您分隔IAM角色”的优点。

请注意:您正在尝试在服务/模块版本级别上实现环境,这比那篇文章中介绍的两种方法差,恕我直言,请参阅Continuous integration/deployment/delivery on Google App Engine, too risky?