在DevOps中管理一致的Webpack构建

问题描述 投票:0回答:1

在我们公司内部,我们通过DevOps为.NET Core应用程序构建和发布了大量内容。

对于这些应用程序,我们的设置是只有一个构建构件的管道,然后发布管道通过各个阶段(测试/ uat /分期/实时)来管理相同的构件。

我们在这里看到的优点是程序包是相同的,只是部署目标上的环境变量允许其运行方式发生变化,例如不同的第三方端点,不同的数据库等。

我们现在正在寻求将使用Webpack构建的Vue.js应用程序移动到DevOps中,以实现构建和部署的自动化,但这是我们面临的难题。

我们需要在解决方案中封装相同的变体(不同的api,配置等,目前通过执行npm run build:uat,npm run build:live等来管理。

这很好,但是这意味着我们需要为每种环境设置不同的版本,并放心我们为UAT发行的软件包与我们为实时发行的版本一致。

围绕这样的构建管理是否有最佳实践?

我可以看到的选项,尽管对其他人开放:

  1. 同时构建测试/ uat / live,然后针对适当的环境有选择地复制正确的代码
  2. 每个版本的版本不同
  3. 我们可以只构建一个工件,然后以其他方式换出配置变量吗?

将提供任何支持或建议。

azure-devops azure-pipelines-release-pipeline azure-pipelines-build-task
1个回答
0
投票

选项2应该是理解和操作的最简单的解决方案。

不需要继续使用单个工件。 一个发行版可以配置为触发多个工件资源(内部版本)。然后只需在一个发行版中合并多个构建即可。

如果没有其他运行/排队的构建,您可以创建一个向当前构建添加标签的任务。

另外为释放触发器添加标签条件。

更多详细信息,请通过以下链接查看Boindiil的答案:Combine multiple builds into one release

© www.soinside.com 2019 - 2024. All rights reserved.