我有4个不同的服务,运行在4个不同的AWS帐户。每个服务都有自己的REST API端点、服务依赖项、数据库等每当一个开发人员试图将他的代码部署到其中一个服务时,其他开发人员当前就会被阻止。因为当其他开发人员部署他的代码时,前一个开发人员的更改会被覆盖。我们的服务在EC2中作为docker示例运行。
如何缓解这一局面?是否可以使用已配置的公共端点创建/启动特定于个人的服务?
下面是我的期望。假设有两个开发人员,dev 1和dev 2。Dev 1将service 1的代码部署到一个ec2示例中,Dev 2将同一service 1的代码部署到同一个ec2示例中。它们的服务代码应该单独运行,但底层数据库和其他依赖项应该相同。因此,当测试人员测试服务时,他们可以通过访问每个开发人员特定的端点来测试每个开发人员的代码。
例如:https://dev1.com/docall和https://dev2.com/docall
我知道上面的要求有点含糊。如果你的要求不太清楚,请告诉我。只是需要一些正确方向的指引。
1条答案
按热度按时间p1iqtdky1#
覆盖的问题很奇怪。听起来你的工作流程是错误的。听起来好像所有的开发人员都在直接推进实时分支,和/或不解决冲突,只接受他们的更改。
如果是这个问题,我建议使用以下工作流程:
我假设你正在使用GitHub作为VCS。在这种情况下,你最好有一个主分支,是活的和“良好的测试”。你要从这个分支中拷贝一份,我们称之为dev-branch,并在此基础上构建所有新特性。直到你决定接受它。所有的开发都应该发生在一个单独的分支中,它是dev-branch本身的副本。你可以在这个分支中进行修改。一旦特性完成(因为它是一段时间),然后你把最新的开发到你的个人分支,解决任何冲突打开一个拉请求到开发分支。如果你想活下去。
更多细节和图表在这里:https://lucamezzalira.com/2014/03/10/git-flow-vs-github-flow/