首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从azure DevOps项目组织中提取版本

从azure DevOps项目组织中提取版本
EN

Stack Overflow用户
提问于 2021-09-27 15:35:15
回答 1查看 50关注 0票数 0

我有一个有更多300个项目的Azure DevOps组织,我想从DevOps项目的组织中提取发布版本。我试过使用下面的PowerShell脚本,但它只是一次提供100个记录。而且它还说提取的json文件不是有效的格式。

这是我的PowerShell脚本。

代码语言:javascript
复制
$token = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
$url = "https://dev.azure.com/{orgnization}/_apis/projects?api-version=6.0"
$token = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($token)"))

$response = Invoke-RestMethod -Uri $url -Headers @{Authorization = "Basic $token" } -Method Get -ContentType application/json

Foreach ($projectName in $response.value.name) {
  
    $url1 = "https://vsrm.dev.azure.com/{orgnization}/$($projectname)/_apis/release/releases?api-version=6.0"
 
    $response = Invoke-RestMethod -Uri $url1 -Headers @{Authorization = "Basic $token" } -Method Get -ContentType application/json-patch

    echo $response | ConvertTo-Json -Depth 99 |  Out-File "D:\\file.json" -Append
}

我尝试使用第一个API调用添加$top参数,如果我在浏览器中尝试,它可以正常工作,但是在PowerShell中,它不起作用。

代码语言:javascript
复制
https://dev.azure.com/uniperteamservices/_apis/projects?api-version=6.0&$top=500 

我怎样才能完成以下两个要求?

  1. 如何提取所有记录,而不仅仅是100
  2. 为什么提取json文件在转换为excel时显示为无效格式?

如果您可以根据我的需求修改上面的PowerShell脚本,我们将不胜感激。

谢谢

EN

回答 1

Stack Overflow用户

发布于 2021-09-27 15:59:26

在调试器中逐步完成代码。

用双引号包装的$top将尝试插入名为$top的变量。您需要用一个‘字符’来转义$。即

代码语言:javascript
复制
`$top
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69349370

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档