【问题标题】:How do I configure Azure Dev Ops to release my code to Azure based on the branch?如何配置 Azure Devops 以根据分支将我的代码发布到 Azure?
【发布时间】:2019-10-10 10:50:40
【问题描述】:

我最近开始使用 Azure Dev Ops 来管理我的 ASP.NET Core Web 应用程序的代码。我按照 Microsoft 在线指南设置 Azure Dev Ops,但是,这些教程是基本的,并假设您始终通过管道推动生产。在我的组织中,情况并非如此,我正在寻找有关我的流程以及如何实现它的一些指导和说明。

我的情景

我的项目有两个分支master 和staging。 staging 分支具有我正在开发的所有功能,需要由我组织中的选定用户进行测试,一旦这些功能经过测试,它们就会合并到主分支并推送到生产环境以供使用。

到目前为止我做了什么?

  • 我为 CI/CD 创建了一个管道,每次同步 master 分支时都会构建和发布。
  • 我在 Azure Web 应用上创建了槽,一个用于production,一个用于staging。

我需要什么帮助?

  • 我需要了解如何将我对 staging 分支所做的更改部署到 Azure 中的 Web 应用程序 staging 槽,以便人们可以测试新功能。
  • 如何使用我见过的这些分支过滤器?
  • 使用过滤器还是触发器更好?

我知道什么?

  • 我看到有可以使用的标签和过滤器,但我不知道它们将如何应用于我需要实现的目标。
  • 我试图在我的版本中放置一个阶段,将项目推送到我的 Web 应用程序中的暂存槽,问题是它始终是主分支,我不想在主分支上发布用于测试的功能分支。

我确定这是一个简单的设置,但我很难将其锁定。任何帮助将不胜感激。

【问题讨论】:

  • 尝试添加另一个 CI 管道来构建您的暂存分支,这样您就可以为要构建的每个分支都有一个 CI 管道。这使得在需要时更容易为生产添加额外的步骤。在 CD 管道上,您还可以为每个分支创建一个管道,您可以选择每个 CI 管道的工件并为响应式分支添加部署触发器。
  • 是的,您需要单独的 CI/CD 管道。但是,FWIW,无论如何,您不应该在这里有单独的分支。 master 分支是你的部署分支,拥有一个 staging 分支是没有意义的,因为 staging 不会告诉你 master 在部署时要做什么。您应该将 master 部署到 staging 环境,验证它是否工作,然后将 master 部署到生产环境。

标签: asp.net-core azure-devops


【解决方案1】:

使用单独的管道,触发对 staging 分支的更改。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-31
    • 1970-01-01
    • 2022-01-12
    • 2019-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-01
    相关资源
    最近更新 更多