各位sig-Computing的同学:
我们当前在openEuler社区还未做自动化补丁跟踪工作,
现在想加入自动补丁抓取机制;
机制chenyapan同学已经提供,
邮件下面是主要的一些信息;
我们现在glibc和irqbalance先尝试下这个工具;
chenyanpan已经开发openEuler社区自动抓取补丁工具; https://gitee.com/openeuler/patch-tracking
自动抓patch工具自动生成issue;
例子: https://gitee.com/src-openeuler/coreutils/issues
自动抓patch工具会在issue中关联自动提交PR;
例如: https://gitee.com/src-openeuler/coreutils/issues/I231JM
关联 https://gitee.com/src-openeuler/coreutils/pulls/21
自动提issue, issue标题可以看出是哪个分支的;
工具生成的PR如果冲突,
只有企业用户才可以修改,
无法让社区开发者参与;
自动抓取工具现在需要chenyanpan手工配置; TODO:
配置建议放git仓中描述;
TODO: 如何记录每个patch合入的理由,
方便后续查看;
TODO: 自动PR的comment中没有说明补丁的社区来源信息,
不方便开发查询;
每个package包的维护信息自我描述,
在master分支创建.openeuler目录;
```
.openeuler/CODEOWNERS # 代码owner
.openeuler/ci/guard.yaml # 门禁配置
.openeuler/ci/xxx.py # 自定义门禁脚本
.openeuler/fossbot/fossbot.yaml
.openeuler/patch/upsteam-patch-config.yaml #
配置上游社区补丁抓取
.openeuler/patch/patches.yaml #
记录不合入补丁的原因,
是否太复杂?
.openeuler目录的提交与代码提交分开,
不能混合提交;
.openeuler目录的提交不做门禁检查,
不触发编译, 不触发测试;
```
```yaml
# .openeuler/patch/upsteam-patch-config.yaml
# 上游社区git地址,
已经有yaml描述,
这里不重复
# openeuler社区的master分支的维护策略就是定期升级到社区最新版本,
因此不需要配置抓补丁工具;
# openeuler社区的LTS分支需要实时抓取补丁,
从上游社区的stable分支和mainline分支;
- branch: 'openEuler-20.03-LTS' #
本地需要回合补丁的分支
period: 1 #
自动抓取周期(天)
enabled: true #
是否开启跟踪
- scm_branch: xxx #
上游社区跟踪的分支
start_commit_id: xxx #
上游社区跟踪分支开始的commit id
- scm_branch: xxx
start_commit_id: xxx
- branch: 'openEuler-20.03-LTS-Next'
period: 1
enabled: true
- scm_branch: xxx
start_commit_id: xxx
- scm_branch: xxx
start_commit_id: xxx
```