哪些分支应与Azure中的部署槽相关联

时间:2015-09-20 11:34:45

标签: git azure bitbucket atlassian-sourcetree continuous-deployment

我使用部署插槽和源代码控制在Microsoft Azure上启动应用程序。我怀疑哪个分支与生产部署槽相关联。如果我设置了一个临时环境并将其连接到主分支然后运行交换,它会正确切换到生产槽中的主代码库。如果我换回它交换到暂存,它会显示生产中的旧代码。这告诉我生产当前没与分支相关联(我也没有将其设置为)。

现在我的问题是,我将哪个分支与暂存相关联,哪个分支与生产相关联? 何时以及如何替换生产中的代码以便我可以将新代码放入分段(主分支)?

我担心的是:
- 如果没有与生产关联的分支,那么如何在部署插槽之间正确切换并获取该功能的值? - 如果我将分支与生产槽相关联,则该代码在部署时不会通过分段环境。 - 我想我每次想要部署时都不想在我的在线环境中切换源控制存储库分支。 - 如果我这样设置,那么我认为我必须部署到暂存环境然后交换到生产。为了在生产中使用该代码库,我必须在之后将相同的代码部署到生产中。 - 我以为我会一直将一个分支合并到一个分支中,而不是先合并到另一个分支中。

我相信有些事情我没有做对。我需要做什么? 请解释一下主分支中的代码。

谢谢。

1 个答案:

答案 0 :(得分:3)

不应该有与生产和暂存槽相关联的单独分支,或者至少我没有想到这样做的好处。暂存插槽作为将代码放入实时生产环境的中间步骤,允许您在将VM切换到面向客户的生产槽之前部署,运行和扩展VM。

如果您希望将不同版本的代码部署到Azure,则为每个代码创建单独的Cloud Service,因此每个代码分支都与其自己的云服务相关联。您不必为每个部署使用临时插槽,例如Dev分支/ Dev云服务可能不需要经历部署到暂存然后执行VIP交换的过程,在这种情况下,您只需升级生产槽在的地方。

在这种情况下,您的包含不同代码的暂存槽的问题应限制为仅包含同一分支的先前部署。部署完成后,您的新生产代码在生产槽中处于活动状态,您可以选择删除暂存槽的内容,或者将其保留在适当的位置,以便您能够在所需的时间内回滚到以前的版本进行VIP交换。

也没有严格的规则,所以它是关于找到最适合你的过程。