小编And*_*dyV的帖子

有没有办法在 powershell 中创建数组并在 Azure DevOps YAML 中循环遍历它?

我正在尝试为 10 个实例上的 140 多个数据库创建一个数据库部署管道。我们的 IT 团队提到,在某些情况下,数据库会从一个实例移动到另一个实例以实现负载平衡。所以我不能相信每个版本的数据库都会保留在同一个实例上。我们还可以在我们的团队没有听到任何消息的情况下加入新客户。这意味着我必须编写一个可以动态部署到给定实例上的数据库的管道。每个实例都有一个单独的代理。

我现在计划的工作流程。

  1. 从我们的主分支构建 DacPac。
  2. 添加与环境相关的阶段,需要我们团队中的一名人员批准发布。
  3. 运行 powershell 脚本以获取实例上的所有数据库并以列表形式返回。
  4. 循环遍历给定列表并为每个数据库创建一个任务。

现在,我将数据库列表作为变量从 powershell 传递回 YAML 管道的部分遇到了问题。理想情况下,我可以返回一个列表,然后使用 YAML 循环功能创建具有给定数据库名称的 SQL Server 部署任务。是否可以从 Powershell 返回列表并使用循环功能循环遍历它们?下面是我使用的 YAML 示例,减去了我不想在那里共享的内容。


/*Pipeline Being Called*/
variables:
- name: BuildConfiguration
  value: release
- name: BuildPlatform
  value: any cpu
- name: system.debug
  value: true
- name: datamode 
  value: 0 
- name: APIMode
  value: 0
- name: Instance 
  value: "[ServerInstance]"
- name: var01
trigger: 
 - FixingDRDeployments

stages: 
- stage: Powershell 
  pool: [Agent Pool Name]
  jobs:
  - …
Run Code Online (Sandbox Code Playgroud)

yaml azure-devops azure-pipelines azure-pipelines-release-pipeline azure-pipelines-yaml

5
推荐指数
1
解决办法
2478
查看次数