Azure DevOps导出将查询导入到其他项目

G

尝试搜索是否有现成的方法来导出新项目中的导入查询。似乎没有任何东西。

可以通过代码实现吗?如果是,想知道如何。

感谢任何提示。

问候,

Shamrai Aleksander

您可以使用rest api来读取和创建查询:查询

将查询导出到本地文件夹的Powershell示例:

$user = ""
$token = "<pat>" #https://docs.microsoft.com/en-us/azure/devops/organizations/accounts/use-personal-access-tokens-to-authenticate?view=azure-devops&tabs=preview-page
$teamProject = "team_project_name"
$orgUrl = "https://dev.azure.com/<org>"
$sourceQueryFolder = "Shared Queries/Change Management"
$targetLocalFolder = "c:/temp/Change Management Queries"

$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $user,$token)))

$queriesUrl = "$orgUrl/$teamProject/_apis/wit/queries/$sourceQueryFolder"+"?`$depth=1&`$expand=all&api-version=5.0"

function InvokeGetRequest ($GetUrl)
{    
    return Invoke-RestMethod -Uri $GetUrl -Method Get -ContentType "application/json" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)}    
}

$resQuries = InvokeGetRequest $queriesUrl

if (![System.IO.Directory]::Exists($targetLocalFolder))
{
    New-Item -Path $targetLocalFolder -ItemType "directory"
}

if ($resQuries.isFolder -and $resQuries.hasChildren)
{
    foreach($item in $resQuries.children)
    {
        if (!$item.isFolder)
        {            
            $queryJson = "{`"name`":`"{queryname}`", `"wiql`":`"{querywiql}`"}"

            $queryJson = $queryJson -replace "{queryname}", $item.name
            $queryJson = $queryJson -replace "{querywiql}", $item.wiql

            $filepath = "$targetLocalFolder/" + $item.name

            Set-Content -Path $filepath -Value $queryJson
        }
    }
}

从本地文件夹导入查询的Powershell示例:

$user = ""
$token = "<pat>" #https://docs.microsoft.com/en-us/azure/devops/organizations/accounts/use-personal-access-tokens-to-authenticate?view=azure-devops&tabs=preview-page
$teamProject = "team_project_name"
$orgUrl = "https://dev.azure.com/<org>"
$sourceLocalFolder = "c:/temp/Change Management Queries"
$targetQueryFolder = "Shared Queries/Change Management Imported" #should exist

$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $user,$token)))

$queriesUrl = "$orgUrl/$teamProject/_apis/wit/queries/$targetQueryFolder"+"?&api-version=5.0"

function InvokePostRequest ($PostUrl, $body)
{   
    return Invoke-RestMethod -Uri $PostUrl -Method Post -ContentType "application/json" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)}  -Body $body
}

$files = Get-ChildItem -File -Path $sourceLocalFolder

foreach($wiqlfile in $files)
{
    $wiqlBody = Get-Content $wiqlfile

    InvokePostRequest $queriesUrl $wiqlBody
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将大型TFS集合导入到Azure DevOps之后,是否需要Azure SQL VM?

如何将Azure DevOps项目移至其他组织?

将工作项移至Azure Devops上的其他项目

Jmeter是否支持将Jmx文件直接导入到Azure devops中

将 DB 从 SQL Azure 导入到 localDB 时出错

将版本定义导入到Azure DevOps时,如何自动链接变量组和代理池?

如何将Wiki移至Azure DevOps中的其他项目

Azure数据工厂如何使用DevOps将警报和指标部署到其他环境

通过REST API将存储库从另一个帐户导入到Azure DevOps帐户会引发BAD请求

在其他组织项目中安装发布到Azure DevOps NPM Artifacts的程序包时出错

如何将数据库从SQL Server导入到Azure数据库?

将证书导入到Azure密钥vaullt:操作返回了无效的状态码“冲突”

Powershell Azure-将CSV文件导入到appsettings中

从Java代码将JSON文件批量上传/导入到Azure Cosmos DB

我如何将 Azure 构建管道数据导入到 Elasticsearch 的本地安装中

可以将Azure DevOps开发板共享查询复制到另一个项目吗?

在 Azure Devops 中添加其他板

在Azure Application Insights中将数据导入到Analytics

Azure DevOps queryByWiql不查询正确的项目

找不到其他项目的Azure DevOps管道失败DLL

Azure DevOps使用其他项目中另一个存储库中的模块

本地azure devops build agent出现403错误-其他项目中的其他build正常运行

将数据从一个Azure Application Insight导入到另一个Application Insight

我们如何使用Azure Logic App将数据从Sharpoint上载的CSV文件导入到CRM实体中?

将数据层应用程序导入到Azure SQL服务器时出现问题

我可以将数据从本地 SQL Server 数据库导入到 Azure 机器学习虚拟机吗?

将项目上载到Azure Devops

Azure DevOps使项目只读

在Azure VM上使用NGINX将负载平衡到其他Azure VM