【问题标题】:Is there a way to automate the generation of FogBugz "Release Notes" report?有没有办法自动生成 FogBugz“发布说明”报告?
【发布时间】:2014-02-07 19:01:12
【问题描述】:

我的公司使用Jenkins 进行自动化日常构建,并使用FogBugz 跟踪和记录我们的错误修复。这一切都很好。

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

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

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

我认为这会很好,但我不确定如何让 FogBugz 从脚本生成报告。有没有办法做到这一点?

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

【问题讨论】:

    标签: jenkins fogbugz


    【解决方案1】:

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

    那么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 格式获取数据,那就太好了,但这总比没有好。

    【讨论】:

    • 您可以使用FogBugzPy 从 Python 中的 FogBugz API 获取数据。它使用 BeautifulSoup,这使得 XML 解析变得容易。
    猜你喜欢
    • 1970-01-01
    • 2014-06-12
    • 2012-03-27
    • 1970-01-01
    • 2019-12-22
    • 2019-05-15
    • 1970-01-01
    • 2021-09-19
    • 2021-06-03
    相关资源
    最近更新 更多