openEuler社区软件包引入到各版本分支原则 1、软件包引入master保护分支,通过tc委员会及对应sig组review、approve即可; 2、软件包从master分支引入到openEuler其他保护分支,需通过tc委员会、对应sig组、以及release managerment sig集体review、approve后可集成到对应版本分支中;
下图简要介绍具体操作流程 !软件包分支变更权限控制
新建软件仓库分为两种:新建原创软件 upstream开源仓库,新引入其他开源社区开源软件源码仓库。
-
a) 原创开源软件加入openEuler社区已有sig组,提交申请建仓PR,TC 及对应sig组review approve后既可自动创建gitee软件仓(CI脚本自动触发),同时CI脚本会自动触发在OBS的factory编译工程中创建预验证工程;
-
b) 原创开源软件申请新的sig组,提交申请建仓PR,TC 及对应sig组review approve后既可自动创建gitee软件仓(CI脚本自动触发),同时CI脚本会自动触发在OBS的factory编译工程中创建预验证工程;
-
a) 开源软件加入openEuler社区已有sig组,提交申请建仓PR,TC 及对应sig组review approve后既可自动创建gitee软件仓(CI脚本自动触发),同时CI脚本会自动触发在OBS的factory编译工程中创建预验证工程;
-
b) 开源软件申请新的sig组,提交申请建仓PR,TC 及对应sig组review approve后既可自动创建gitee软件仓(CI脚本自动触发),同时CI脚本会自动触发在OBS的factory编译工程中创建预验证工程;
建仓完成后,根据openEuler社区打包规范,完成软件包spec撰写/适配,之后新建PR提交代码+spec等完整的包文件,通过门禁检查和单包编译检查
在第二步骤中新包在OBS的factory工程下编译成功且稳定后,就可以申请移仓到OBS mainline编译工程中来了,申请PR样例如下(openEuler社区是共主干开发,mainline是不受限新增包,编译成功稳定就可以申请加入mainline工程)
申请该包被纳入各个版本开发主干的每日构建ISO交付件构建列表中;openEuler社区每日构建版本ISO文件根据包规模大小有两类:基础ISO(大约2300+ 二进制RPM包规模),全量ISO(everything ISO,大约10000+ 二进制RPM包);
申请该包被纳入各个版本正式release发布的ISO交付件构建列表中,需要在版本分支拉出来之前的需求收集阶段,提需求给release sig,根据openEuler社区质量要求、版本需求接纳原则来评审;
ISO文件根据包规模大小有两类:基础ISO(大约2300+ 二进制RPM包规模),全量ISO(everything ISO,大约10000+ 二进制RPM包)。
需求纳入release版本后,提交PR申请该包纳入release 分支对应的OBS和jenkins编译构建交付件列表
【openEuler分支中软件包增删PR申请样例】
【jenkins构建工程PR申请样例】