openSUSE:构建服务比较
开放构建服务 (Open Build Service) 不是唯一的软件包构建系统,让我们看看其他系统。
OBS 的优势
将 OBS 视为软件包创建的 gitorious:您可以轻松克隆一个项目并在您的个人项目中进行操作。更改编译标志以添加功能,添加补丁,为其他操作系统(如 Debian、Ubuntu 和 Fedora)构建它,或修复打包中的错误。然后,您可以通过合并请求贡献您的更改。
build.opensuse.org 支持 6 种架构上的 21 个操作系统,OBS 提供对打包过程的完全控制,使其成为终极打包平台。
- 为多个发行版构建
- 用户友好性。使用 OBS,您可以从仅使用 Web 界面新手打包者开始,并逐步使用 OSC 掌握更高级的功能。
- 由于使用虚拟机构建软件包,因此支持任何操作系统和架构。这包括 Windows(实验性)和 Mac OS X(如果有人愿意为此工作)。
- 还可以构建完整的操作系统镜像、容器、设备、用于裸机部署或虚拟机的“黄金镜像”
- 依赖项更改时自动重新构建(适用于所有构建格式)
- 不仅支持典型的压缩源格式,还可以直接从 GIT、SVN 和其他 SCM 拉取
- 开放系统 – 与 、Eclipse 和其他 IDE 以及 Forge 和工具的良好集成
- 协作功能,使在 -devel 项目和主发行版中工作更加容易。这大大降低了参与 openSUSE 或协作处理(一组)软件包的门槛。克隆一个项目,在您自己的个人项目中进行操作,并使用合并请求将您的更改返回到您克隆的项目。
- 自动分发到全球镜像。对于上游项目,这是一个很好的功能,可以为他们的用户提供快速的本地镜像。
- 构建系统内的自动化质量控制:rpmlint 和构建后检查。操作系统镜像
- 在新的系统上为私有 OBS 进行设置对于有一定 Linux 经验的用户来说非常容易完成。甚至有 SUSE Studio 镜像可用。
其他系统
请注意,以下列表不完整。
项目构建器
项目构建器 是一种用于多平台持续打包的工具,似乎针对单个项目。
Fedora Koji
Fedora Koji 是 Fedora 用于构建其发行版的构建系统。
Ubuntu Launchpad
Launchpad 不仅是一个软件包构建平台,还是一个完整的代码托管平台,以及邮件列表和错误跟踪器。
Mandriva 构建系统
Mandriva 构建系统 用于构建 Mandriva 发行版。
BuildBot
buildbot 是一个用于自动化大多数软件项目所需的编译/测试周期的系统,以验证代码更改。
Poky
Poky,作为 Yocto 项目 的一部分,旨在利用配置文件为嵌入式设备构建自定义镜像。支持通过“recipes”的有限数量的软件包,使用 Bitbake,基于 gentoo-portage 的工具。使用 Qemu 构建和测试,提供与 Anjuta 和 Eclipse 的集成。
比较
| 名称 | 公共实例 | 轻松本地安装 | 实例连接 | 为自己的发行版构建 | 多架构支持 | 为其他发行版构建 | 构建发行版中没有的软件包 | 软件包协作 | 软件包格式 | 创建镜像 | 从 GIT/SVN/等拉取 | 自动重新构建 | 外部 API | 通过 Web 界面控制 | 命令行用户界面 | 开源 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Fedora Koji | yes | yes | no | yes | no | no | no | yes | rpm | yes | no | ? | yes | 有限 | yes | yes |
| Launchpad | yes | no | no | yes | yes | no | yes | yes | deb | no | yes | no | yes | yes | no | yes |
| Mandriva 构建系统 | yes | no | no | yes | yes | no | no | yes | rpm | 待办事项 | 待办事项 | no | yes | no | yes | (现在使用 OBS) |
| 项目构建器 | no | yes | no | no | yes | yes | yes | ? | deb,rpm,ebuild,pkg | no | no | ? | no | yes | yes | yes |
| Buildbot | no | yes | no | 是(1) | 是(1) | no | no | no | 不适用 | no | yes | 不适用 | yes | 是(只读) | yes | yes |
| Poky/ Yocto | no | yes | no | yes | yes | no | no | no | rpm, deb, ipg, tgz | yes | yes | yes | yes | no | yes | yes |
| 开放构建服务 | yes | yes | yes | yes | yes | yes | yes | yes | deb, rpm,tgz(2),exe(2) | yes | yes | yes | yes | yes | yes | yes |
| Github | yes | no | yes | no | no | no | no | yes | 不适用 | no | yes | no | yes | yes | yes | no |
| Gitlab | yes | yes | yes | no | no | no | no | yes | 不适用 | no | yes | no | yes | yes | yes | 部分(开放核心) |
| Jenkins | no | yes | yes | yes | yes | yes | yes | 不适用 | 不适用 | yes | yes | no | yes | yes | 仅限管理员 | yes |
- (1) 不生成实际的软件包…
- (2) 实验性/正在开发中
参见
外部链接
: