az pipelines runs list - 如何使用变量提供多个管道 ID

az pipelines runs list - how to provide multiple pipeline-ids using a variable

对于 az pipelines 命令,如何通过变量提供多个管道 ID?

这个有效:

az pipelines runs list --branch master --pipeline-ids 95 96

这会抛出解析器错误,因为 ID 被连接成一个字符串,但参数需要整数值:

$vals = "95 96"
az pipelines runs list --branch master --pipeline-ids $vals

错误:

argument --pipeline-ids: invalid int value: '95 96'

我想做的是获取所有管道 ID 的列表,然后一次性全部传递,如下所示:

$pipelines = az pipelines list --query "[].{Name:name, Id:id}" | ConvertFrom-Json
$pipelineIds = ""
foreach ($row in $pipelines) {$pipelineIds = $pipelineIds + " " + $row.Id}
az pipelines runs list --branch master --query-order FinishTimeAsc --pipeline-ids $pipelineIds

你需要在这里传递数组。你可以这样做:

$stringIds ="95 96"

$ids = $stringIds.Split(" ")

az pipelines runs list --pipeline-ids $ids

你也可以试试

$Ids=95,96

az 管道运行列表 --pipeline-ids $Ids

我使用上面的代码找到了一个更简单的解决方案 - 使用 --output tsv 参数。

$pipelineIds = az pipelines list --query "[].{Id:id}" --output tsv
az pipelines runs list --branch master --query-order FinishTimeAsc --pipeline-ids $pipelineIds