開發者 | SUSE, Linux Foundation, openSUSE |
---|---|
当前版本 | 2.10.11(2021年8月3日 | )
源代码库 | |
编程语言 | Perl, Ruby |
操作系统 | Linux |
类型 | Web service |
许可协议 | GPL |
网站 | openbuildservice |
Open Build Service (开放构建服务,以前称为openSUSE Build Service ) [1]是一个开放且完整的发行版开发平台,旨在鼓励开发人员为多个Linux 发行版编译软件包,包括SUSE Linux Enterprise Server 、openSUSE、Red Hat Enterprise Linux、Mandriva、Ubuntu、Fedora、Debian和Arch Linux。[2]它通常会简化打包流程,因此开发人员可以更轻松地为多个发行版和许多 openSUSE 版本打包程序,从而为用户提供支持更多不同发行版的包。此外,OBS也能构建特定产品与应用程序。
Open Build Service 软件本身在GPL协议下发布。 [3]Linux 基金会已经把该项目添加到 Linux 开发者网络 (LDN),认可了OBS对更广泛的Linux社区的作用。 [4]此外,各种公司以及 [5]MeeGo项目、Tizen和EulerOS正在使用OBS来开发他们的发行版。
OBS还提供了一个协作平台,允许开发人员构建并提交对其他项目的改进与更新。
可以将 Open Build Service 安装并运行在私有平台与服务器上,也可以使用公开的公益性实例,例如位于 build.opensuse.org 的 openSUSE Build Service。该服务由SUSE托管,提供多达 400 个构建槽[6]。但外部服务可能会对允许托管的软件包范围施加限制,因此当要托管专有或法律上有问题的软件时,通常会选择在私有服务器上安装。
默认情况下,每个打包者都有一个“home”项目,他们可以在其中上传构建RPM或DEB软件包的源代码和定义。如果已向“home”项目外部的开发人员授予权限,则外部开放人员可向“home”项目进行提交。每次上传后,构建服务都会安排重新构建那些被更改的软件包包。完成后,生成的二进制包会立即发布到下载服务器,以便公众下载。
由SUSE托管的OBS提供了公共API [7] ,其有两个不同的用户界面:
osc
[8]此外,还有一个谷歌代码之夏项目,开发集成OBS到Eclipse[9][10][11] 与QT Creator[12]的插件。
实例之间可以被链接,这样来自远程主机的源代码和软件包可以被重用,从而消除手动引导/导入依赖项的需要。