如何从自定义生成任务获取 Azure DevOps 的所有变量组的列表?



我正在为 Azure DevOps 管道创建自己的扩展,我想在下拉框中列出所有变量组以供用户选择。但我不知道如何在task.json中做到这一点.

我已经尝试了不同类型的端点ID,例如tfs:teamfoundationtfs:feed,但它不起作用。我也不确定此端点的身份验证。

从邮递员那里,我正在使用基本身份验证来发出请求,但是在我的扩展中,我已经定义了范围:vso.variablegroups_manage,并且可能应该可以工作。

"inputs": [
{
"name": "groupId",
"type": "pickList",
"label": "The Id of variable group",
"defaultValue": "",
"required": true,
"helpMarkDown": "The id of variable group.",
"properties": {
"DisableManageLink": "True"
}
}
],
"dataSourceBindings": [
{
"target": "groupId",
"endpointId": "tfs:teamfoundation",
"endpoint": "https://dev.azure.com/nameOfMyOrganization/nameOfMyProject/_apis/distributedtask/variablegroups?api-version=5.1-preview.1",
"resultSelector": "jsonpath:$.value[*]",
"resultTemplate": "{ "Value" : "{{{id}}}", "DisplayValue" : "{{{name}}}" }"
}
],

请帮助我为我的目的dataSourceBinding

这对我有用。我必须从 ServiceNow批准和检查变量组选择器捕获网络流量。

"管理齿轮/齿轮"仍然将您带到错误的地方,但下拉列表会填充。

"dataSourceBindings": [
{
"target": "groupId",
"endpointId": "tfs:teamfoundation",
"endpointUrl": "{{endpoint.url}}/{{system.teamProject}}/_apis/distributedtask/variablegroups?actionFilter=Use",
"resultSelector": "jsonpath:$.value[*]",
"resultTemplate": "{ "Value" : "{{{name}}}", "DisplayValue" : "{{{name}}}" }"
},
],

最新更新