各位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
```