Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.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
Jenkins 有没有一种方法可以自动生成FogBugz“;发行说明;报告?_Jenkins_Fogbugz - Fatal编程技术网

Jenkins 有没有一种方法可以自动生成FogBugz“;发行说明;报告?

Jenkins 有没有一种方法可以自动生成FogBugz“;发行说明;报告?,jenkins,fogbugz,Jenkins,Fogbugz,我的公司用来做一个自动化的每日构建,并跟踪和记录我们的错误修复。这一切都很好 当我们完成对候选版本的测试并准备将其发布到世界时,我们使用FogBugz的特性自动生成一个文本文件,其中包含自上一个发布版本以来发生的更改的描述 这基本上是可行的,但问题是,我们的候选版本测试可能需要一个月或更长的时间才能完成——因此,当候选版本通过测试过程,我们准备发布它时,额外的错误修复已经提交到SVN中,并记录在FogBugz中。因此,如果我们随后从FogBugz生成一个发行说明报告,该报告将包括我们准备发布的候

我的公司用来做一个自动化的每日构建,并跟踪和记录我们的错误修复。这一切都很好

当我们完成对候选版本的测试并准备将其发布到世界时,我们使用FogBugz的特性自动生成一个文本文件,其中包含自上一个发布版本以来发生的更改的描述

这基本上是可行的,但问题是,我们的候选版本测试可能需要一个月或更长的时间才能完成——因此,当候选版本通过测试过程,我们准备发布它时,额外的错误修复已经提交到SVN中,并记录在FogBugz中。因此,如果我们随后从FogBugz生成一个发行说明报告,该报告将包括我们准备发布的候选发行版中实际不存在的更改的描述。(*)

上述问题的简单解决方案是在编译发行候选版本本身的同一天生成发行说明文档;这样,发行说明文档将匹配发行候选版本的测试可执行文件的状态。但是对于每一个候选版本来说,手工完成这项工作有点乏味,而且容易出错,所以我想让Jenkins对发行说明文档进行“每日构建”,就像它对程序可执行文件进行每日构建一样。然后,发行说明文档将与工件目录中的可执行文件一起保存,以便在我们决定根据当天的每日构建发布发行候选版本时使用

我认为这将非常有效,但我不确定如何让FogBugz从脚本生成报告。有办法吗


(*)解决这个问题的另一种方法是,每次我们开始测试一个候选版本时,都会创建一个新的里程碑,但我不想这样做,因为这会使我们的FogBugz数据库中有太多的里程碑,因为有缺陷的候选版本被放弃,而新的版本被采用。

我在这个问题上取得了一些进展。。。可以使用FogBugz的XMLAPI获取XML发行说明。首先,您必须获得一个令牌,如上所述

然后shell脚本可以执行如下命令:

wget -OReleaseNotes.xml 'https://fogbugz.mycompany.com/api.asp?token=the_token_value_from_above_goes_here&cmd=search&q=fixfor:MyMilestone&cols=ixBug,sCategory,sTitle,sReleaseNotes'
我想有一种更优雅的方法可以做到这一点,如果我能以HTML或ASCII格式而不是XML格式获取数据,那就太好了,但这总比什么都没有好。

您可以使用Python从FogBugz API获取数据。它使用BeautifulSoup,这使得XML解析变得简单。