归档:构建服务初级职位
| 本文关于开放构建服务的文档已过时! 您可以在 https://github.com/openSUSE/open-build-service/contribute 上找到最新的信息 |
此页面介绍 Open Build Service 的小型开放开发任务。这些任务是深入 OBS 开发和 Ruby on Rails 开发的良好起点。
我们收集了以下任务
帮助我们提高质量
OBS 带有测试套件来验证我们的代码。在部署或打包发布之前,测试套件会运行。因此,良好的测试套件将带来良好的产品。不幸的是,仍有许多领域未被测试套件覆盖,但幸运的是,编写更多测试很容易。 请在此处查看 了解如何运行和开发测试。
在 Web 用户界面中显示更多状态信息
后端已经知道很多数据,例如历史记录和状态信息,这些信息在 Web 客户端中不可见。这些信息可以通过 API 获得,但尚未通过我们的客户端访问。
这意味着您也不需要自己完整的 Open Build Service 进行开发。您只需要在您的系统上运行一个本地 Web 客户端,它使用我们的官方 Open Build Service 实例,位于 api.opensuse.org 之后。 您可以在此处了解如何在您的系统上运行它。
在 Web 界面中管理项目签名密钥
添加项目签名密钥的视图。详细信息可以在 功能请求 中找到。
改进软件包页面
当前软件包页面显示所有当前源,但除此之外一无所知。但是后端系统了解更多信息
- 开放提交请求:提交请求是将更改合并到软件包中的请求。这可以使用“osc sr list”命令查看。但是,以一种好的方式查看软件包的开放提交请求、轻松查看更改以及批准或拒绝它们会很好。
- 合并源链接:Web 客户端始终显示“未展开”的源。这意味着带有源链接的软件包显示“_link”文件加上补丁。后端提供展开源链接的功能,这意味着显示应用补丁后的源。Jan Loeser 几乎完成了此功能。
- 提交日志:可以显示源提交日志。也许也显示差异。甚至还有一个功能可以恢复到这种状态:)
依赖关系助手
- 您缺少一个软件包依赖项才能构建您的软件包?一个向导可以在这里提供很大的帮助,它应该搜索此依赖项,然后提供
- 添加进一步的仓库以进行构建(如果您的平台存在软件包)
- 源链接软件包(如果尚未为您的平台构建)
发布者改进
Open Build Service 发布者是一个相对简单的 Perl 脚本,因此它是一种深入后端源代码的简单方法。
发布者中支持 nu 文件
zypper 自 openSUSE 11.1 起支持 nu 文件。这些是仓库描述,允许添加进一步的仓库。这意味着,当用户添加 KDE:KDE4.3 仓库,并且打包者后来决定要将其构建到 KDE:Qt46 时,zypper 将自动使用此仓库。
有关此格式的背景信息可以在 和此 Duncan 的博客 中找到。
高级职位
这些对您来说太容易太无聊了吗?我们还有一些任务需要后端、API 前端和 Web 客户端的扩展。这意味着您需要 Open Build Service 的本地实例进行开发。
改进监控页面
- 添加调度器统计信息:调度器已经收集了所有种类的统计信息,用于性能调整。文件 $BUILD_SERVICE_ROOT/info/schedulerinfo.$arch 包含有关调度器使用的资源、要处理的事件以及占用最多资源的项目的相关信息。这应该可以通过源和仓库服务器、API 请求,并在 Web 客户端中显示。
- 添加仓库设置状态:调度器会发现软件包和仓库之间的依赖循环。此信息当前未存储在任何地方,但对开发人员非常有帮助。这项工作是将此信息存储在磁盘上,使其可以在 src、rep 服务器和 API 中请求,并在 Web 界面平台页面中显示。