出品 | OSC开源社区(ID:oschina2013) 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 命名空间。 相关链接:https://github.com/AlmaLinux/build-system END |