在过去的几个月里,我的团队最近转而采用这三种技术,并努力使其运行起来。下一步是自动化我们的更改日志。我们在Github提交消息中设置了JIRA设置标记(例如TAG-123)。 Jenkins通过5分钟计时器,拉动,构建等监视GitHub提交。
我希望看到的是当构建标记为“已提升为生产”时自动生成的更改日志。我希望看到它做类似于以下的事情:
这个流程是否按照书写的方式进行是无关紧要的 - 我在最终结果之后并且不打算重新发明轮子。当然有人之前做过类似的事情吗?
就重新发明而言,我能够找到https://wiki.jenkins-ci.org/display/JENKINS/Promoted+Builds+Plugin,它允许某人捎带促进生产行动并运行单独的脚本。然后,需要收集功能来完成上述任务。 (我也注意到Jenkins可以标记当前的GitHub提交,我的团队可能会另外提交。)
任何接近完成此事的人都将非常感激。
谢谢!
答案 0 :(得分:2)
由于我们团队中的任何人都没有多余的时间专注于此,我们最终投入了快速解决方案。
流程
一下子
(\s*\(commit:\s[a-z0-9]{40}.\s..detail)|([\r][\n]#.*\B[\r][\n][\r][\n])|(^[ \t]*)
删除提交哈希 \s*\(commit:\s[a-z0-9]{40}.\s..detail
删除时间和周围的换行符 [\r][\n]#.*\B[\r][\n][\r][\n]
删除前导空格:^[ \t]*
分析
专业人士:
缺点:
总的来说,缺点有点“野兽的本质”。我想读一些其他的解决方案。 (当我们有一个难以捉摸的东西叫做时间,当然!)
答案 1 :(得分:1)
替代问题跟踪器的依赖可能是纯粹使用拉取请求本身。对我们来说,他们有足够的上下文来生成发行说明,我们使用标签进行分类。我创建了PullRequestReleaseNotes,您可以尝试一下。它支持GitHub,GitLab,BitBucket和TFS,它可以通过合并拉取请求及其标签在markdown中生成发行说明,并可选择将其发布到Atlassian Confluence页面,并将其作为帖子发布到Slack通道。它可以作为持续集成的一部分运行。这是一个示例:
1.2.1(MASTER) - XX XXX 2016
增强
A类
- 令人敬畏的新功能#1854
修复
Z类
- 修复了小部件#1792
的问题Y类
- 修复了小部件#1792
的问题- 修复了视图布局#1848
的异常