当前openEuler RISC—V 版本正在基于openEuler的源码利用OBS进行批量构建,当前存在一些构建失败的问题。
实时的OBS构建状态在如下网址可查看,包括构建成功、失败原因等:
https://build.openeuler.org/project/show/openEuler:Mainline:RISC-V
当前的构建状态为:
Failed:36 https://build.openeuler.org/project/monitor/openEuler:Mainline:RISC-V?arch_riscv64=1&defaults=0&failed=1&repo_standard_riscv64=1
Unresolvable:774 https://build.openeuler.org/project/monitor/openEuler:Mainline:RISC-V?arch_riscv64=1&defaults=0&repo_standard_riscv64=1&unresolvable=1
解决构建失败的问题的步骤如下:
解决问题的背景知识:
Hey @whoisxxx, Welcome to openEuler Community.
All of the projects in openEuler Community are maintained by @openeuler-ci-bot.
That means the developers can comment below every pull request or issue to trigger Bot Commands.
Please follow instructions at https://gitee.com/openeuler/community/blob/master/en/sig-infrastructure/command.md to find the details.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
更新的处理的流程,增加了一个中间仓库作为未被openeuler 接收之前的中转。
https://gitee.com/riscv-spare/projects
当前的流程为:
之前riscv的所有软件包的源码都是来自src-openeuler的master分支,但是由于我们在解决问题的过程中,向上游提交的PR请求的响应周期很长,且其它非riscv sig组对master分支的代码修改,会导致我们obs的重构和引发新的问题,导致我们的obs构建平台无法让软件包稳定的迭代(比如有的包这次成功,下次失败,在不修改源码和配置的情况下不能稳定构建成功)。
openeuler社区在我们的反馈和协商下,为riscv单独创建了一个源码仓openeuler-risc-v(后简称riscv源码仓),代替了上图中rv_spare的位置,用于riscv sig自我管理软件包,当openeuler riscv os构建稳定后,再整体从openeuler-risc-v向上游src-openeuler提交代码修改的PR完成合并。
2021年9月10日起,流程调整为如下:
openeuler-risc-v新添加fork仓库操作流程:
(1)修改https://gitee.com/openeuler/RISC-V/blob/master/configuration/riscv_fork_list.yaml 这个文件,添加需要的包,提交PR;
(2)openeuler/RISC-V上游会处理PR,CI工具会自动化完成fork工作;我们只需要等待PR合并后查看openeuler-risc-v是否增加了新的代码仓;
riscv sig组的所有成员fork软件包:只能从openeuler-risc-v fork到个人账号下,进行代码修改,obs构建测试后,再向openeuler-risc-v 提交PR合并请求。 (杜绝直接从src-openeuler 直接fork代码)
openeuler-risc-v向上游的合并:
如果有CI,则通过CI工具批量向src-openeuler提交PR请求;如果没有CI工具,则约定待riscv obs构建稳定后,在一个集中的时间段,手动对openeuler-risc-v中的源码仓提交PR;
openEuler 的OBS使用 链接失效,当前更新为:https://openeuler.org/zh/blog/fuchangjie/2020-03-26-how-to-OBS.html
或许这个issue更适合作为一个wiki?
或许这个issue更适合作为一个wiki?
对超时问题的把握,吴老师语:x86的timeout x 10 ~= RISC-V QEMU上的timeout,修改需用ifarch之类的条件限制,所有修改不能修改/破坏其它架构。
登录 后才可以发表评论