azure-devops - Azure Devops:为同一个项目部署多个 Webjobs 但不同的连接字符串
问题描述
我有一个场景,我需要从同一个项目(在 .net 核心中)创建 2 个 Web 作业。通过创建 2 个单独的构建工件(在构建管道中)并在发布任务中引用它,我能够轻松地做到这一点。每个 Web 作业自己使用不同的连接字符串。
这里的挑战是:如何在发布管道变量中配置连接字符串,因为连接字符串名称在 appsetting.json 文件中是相同的?有没有办法可以在每个发布任务中配置其各自连接字符串的值?
解决方案
您可以尝试在发布管道中使用多作业配置( Matrix )。
一个简单的例子:
[更新]
如果所有部署作业都有相同的步骤(任务)需要运行,而作业之间的差异只是这些任务上某些配置的输入值,您只需设置一个作业与这些步骤,并设置多个-value 管道变量,然后启用多作业配置功能。就像上面的例子一样。
如果部署作业有一些相同的步骤,但也有一些仅适用于某些作业的步骤。您也可以只设置一个包含所有步骤的作业并启用多作业配置功能。对于仅某些作业需要的步骤,您可以在这些步骤下指定一些条件,让它们仅在作业在指定配置上时运行。更多详细信息,您可以查看“指定条件”。
在包含多个作业的管道中,如果这些作业之间需要运行的大部分(甚至所有)步骤都相同,则可以使用多作业配置功能。此功能旨在避免在管道中的多个作业之间复制相同的步骤。您只需要设置一项作业并在管道中添加一次步骤。运行管道时,它会自动为每个配置复制作业。正如你在我上面的例子中看到的那样。
推荐阅读
- javascript - React Navigation 5 真的很慢并且在 Expo 上丢掉了 JS FPS
- graph - 我们如何比较图聚类结果以在蛋白质-蛋白质相互作用网络中找到相似的基因?
- reactjs - TypeError:无法设置 null React 的属性“src”
- javascript - preventDefault 不会停止提交过程
- game-physics - 如何在 Corona sdk/solar2d 上创建和移动一组弹跳物体?
- ios - SwiftUI:从滚动视图的底部对齐构建视图
- google-apps-script - 来自 Yahoo Finance 的 Google Sheets 抓取选项链,结果不完整
- ios - 无法在视图中更改 CGFloat 的值
- android - 如何合并两个bundleOf?
- google-tag-manager - 如何使用 Google Tag Manager 在 Safari 上跟踪网络事件