AlmaLinux 开源了其构建系统 ALBS (AlmaLinux Build System),该工具被用于构建最近发布的 AlmaLinux 8.6 和 AlmaLinux 9.0,支持所有的架构,包括 x86_64、aarch64 和 ppc64le。
AlmaLinux 是开放源码、社区驱动的项目,它从红帽企业版 Linux (RHEL) 的源码编译而来。AlmaLinux 跟 RHEL 8 完全在二进制上兼容,它由 CloudLinux OS 的创建者打造。AlmaLinux 团队承诺永久免费提供 AlmaLinux 操作系统,项目永久开源且不采取任何限制,不收取任何费用,支持至 2029 年。
AlmaLinux 团队表示,开源其构建系统是为了提升项目的透明度,让大众了解构建软件包的更多细节,以及目前正在构建的内容、构建日志等。此外,AlmaLinux 开发者希望开源 ALBS 能推动社区进行更大的协作和贡献。
下图展示了 ALBS 工作流程:
- Build System 的 Master Service 通过API 接口与 UI & CLI 工具进行交互。
- Build Node 向 Master Service 发送请求并接收 Build Tasks,然后构建软件包。构建完成后,这些软件包保存到Artifact Storage 中。
- Test System 发送请求并接收Test Tasks (builds) 以测试来自 Artefact Storage 的构建包。Test System 通过 Test Nodes(例如具有不同架构的 Docker 或 OpenNebula)来测试软件包,并将测试工件或测试日志和报告发送回 Artifact Storage。
- 签名服务器发送请求并接收签名任务以使用 PGP 密钥对包进行签名。
- Release System 发送请求并接收发布任务以将签名包上传到公共仓库。
- Git 服务器通过 API 向 Master Service 发送更新。它在两个服务的帮助下完成: gitea-listener 和 git-cacher。
AlmaLinux 已将 ALBS 代码托管到 GitHub,此外还开放了支持匿名、只读访问他们实际部署的构建系统:https://build.almalinux.org/。
AlmaLinux 团队还宣布,他们正在努力通过 CodeNotary 集成和 RBAC 系统为包构建添加 SBOM 支持,让更多维护者和贡献者能够访问他们的构建系统来构建软件包。AlmaLinux 团队希望在 7 月份完成这两项工作。同时,在 AlmaLinux 的 ALBS 之外,他们正在研究 COPR 支持、自动化 VM 和容器映像构建 / 发布,以及构建系统中的组织 / SIG 命名空间。
本文转自OSCHINA
本文CentOS 替代方案 AlmaLinux 开源其构建系统 ALBS
本文地址:https://www.oschina.net/news/200414/almalinux-build-system