Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tfs VSTS扩展-存储生成任务中的参数并从摘要选项卡调用web服务_Tfs_Azure Devops_Tfsbuild - Fatal编程技术网

Tfs VSTS扩展-存储生成任务中的参数并从摘要选项卡调用web服务

Tfs VSTS扩展-存储生成任务中的参数并从摘要选项卡调用web服务,tfs,azure-devops,tfsbuild,Tfs,Azure Devops,Tfsbuild,我需要在摘要选项卡(“ms.vss-build-web.build results”部分)中显示自定义生成任务的结果。为了做到这一点,我需要从构建任务中保留一些数据,并使用它从摘要部分调用web服务。是否可以使用扩展数据服务将数据存储在变量中,并在摘要页面中使用它?最好的方法是什么 提前感谢。您可以这样做,但问题是这些值始终是来自最新版本的值,摘要页面中的信息对于旧版本可能不正确。因此,我建议通过获取构建任务结果,然后直接在摘要页面中显示它。我已使用日志命令附加了构建任务数据 //构建任务

我需要在摘要选项卡(“ms.vss-build-web.build results”部分)中显示自定义生成任务的结果。为了做到这一点,我需要从构建任务中保留一些数据,并使用它从摘要部分调用web服务。是否可以使用扩展数据服务将数据存储在变量中,并在摘要页面中使用它?最好的方法是什么


提前感谢。

您可以这样做,但问题是这些值始终是来自最新版本的值,摘要页面中的信息对于旧版本可能不正确。因此,我建议通过获取构建任务结果,然后直接在摘要页面中显示它。

我已使用日志命令附加了构建任务数据

//构建任务
类TestClass{
_名称:字符串;
_年龄:人数;
构造函数(名称:字符串,年龄:数字){
这个。_name=name;
这个。_年龄=年龄;
}
}
var数据=新的测试类(TinTin,100);
//创建文件夹
tl.mkdirP(“c:/myfolder/”;
//将数据写入文件
tl.writeFile(“c:/myfolder/mydata.txt”,JSON.stringify(data));
//执行命令以附加要生成的文件

log(“##vso[task.addattachment type=myAttachmentType;name=myAttachmentName;]c:/myfolder/mydata.txt”)构建完成后您可以调用web服务吗?基于此示例,它在构建完成时更新映像。我需要将一些数据传递到摘要页面,我计划为此使用VSS扩展数据服务。1.)我会将生成任务的结果保存为扩展数据服务中的设置。2.)我将在摘要页面加载时从扩展数据服务读取设置,并将这些值绑定到html。我认为这是正确的方法。谢谢大家,Eddie,我的扩展检索构建工件并将它们上传到web服务。web服务接受这些工件并返回一些信息(xml格式的摘要),我需要在摘要部分中显示这些信息。(我假设需要存储xml数据并加载到摘要html页面中。)但我不确定如何做到这一点。正如您所解释的,用户可能会查看以前的版本,他应该会看到相应的结果摘要。我已经分析了来自微软的样本,但他们没有针对我的问题场景的类似样本。你能给我指一些能帮我解决这个问题的样本或文档吗?@BandR你以前见过吗?@Edddie,是的Eddie我考虑过这个选项,问题是如果我使用扩展数据服务,我必须手动管理在数据存储中创建的文档。我正在寻找最简单的方法来实现这一点,避免使用ext数据服务:)。我注意到TFS_Build_Contracts.Build对象包含与生成相关的信息。有没有一种方法可以将我的任务输出(我提到的xml)持久化为构建契约中的某个对象,以便我可以从摘要页面检索它?还是其他更好的选择?@BandR不,没有任何方法可以更改或更新TFS\u Build\u Contracts.Build对象。我不确定web服务返回了什么信息。但是如果可能的话,我建议您在构建过程中生成这些信息,并将它们存储在构建日志中。然后你们就可以很容易地在扩展中获得它们了。谢谢Eddie,看起来我可以用一个url检索一个BuildLogReference对象来记录资源。你能给我指一下开发人员的示例代码吗?伙计!我不能相信微软没有在他们的教程中写“getAttachmentContent”,我已经工作了2天来解决如何获取这些数据。谢谢