欧洲现在是夏季,这意味着 SUSE 的 YaST 团队的大部分成员都在休假。虽然这可能意味着博客更新频率会降低,但我们今天仍有一些新闻要与您分享,例如
- 接管 (open)SUSE 发布工具的开发
- 改进了新的
check-profile命令 - 完成了从 Travis CI 迁移到 GitHub Actions 的工作
- 修复了几个有趣的错误
让我们深入了解一些细节
发布工具:YaST 团队前来救援!
如大家所知,开发和维护像 openSUSE Leap、Tumbleweed 或 SUSE Linux Enterprise 这样复杂的软件发行版并非易事。特别是我们希望确保它们都保持独立,但同时又紧密相关,并且它们不断向新的方向发展,例如 Kubic、MicroOS 和 SLE Micro。
我们心爱的 Open Build Service 是使所有这些成为可能的关键组件。但除了 OBS 之外,还需要一些额外的工具来管理 (open)SUSE 发行版的复杂性。这些额外的工具托管在一个名为 openSUSE-release-tools 的 GitHub 仓库中。多年来,这些工具的开发过程一直高度非结构化(甚至可以说是“略显混乱”),拥有 60 多位贡献者,但缺乏明确的中期战略。虽然这本身不一定是坏事,但我们需要持续且有针对性的开发来解决我们面临的一些挑战,并修复当前 openSUSE 和 SUSE 产品和发行版开发过程中的一些缺陷。
YaST 团队被选中执行这项任务,因此我们将逐步接管该仓库中工具的开发和维护。作为第一步,我们大大改进了文档。这包括扩展 README 文件,并添加了新的文档,例如 工具清单 和 流程摘要,这些工具参与了这些流程。我们还扩展并更新了自动化测试,并在 factory-auto 机器人中实施了一个新的简单检查。
我们对未来有更雄心勃勃的计划,但我们仍在学习和发现该仓库中的新内容。
AutoYaST 配置文件验证的改进
如您所知,我们最近 引入了一个 YaST 客户端来验证复杂的配置文件,其中包括嵌入式 Ruby、规则和类和/或脚本。通常,可以在没有 root 权限的情况下完成此类验证,但有些情况下需要超级用户权限。
为了减轻影响,我们对 check-profile 工具进行了多项改进。您可以在 相应的拉取请求的描述中查看详细信息。
从 Travis CI 到 GitHub Actions - 迁移完成
几个月前,我们开始将所有 YaST 仓库中的持续集成从使用 Travis CI 切换到 GitHub Actions。主要原因是 GitHub Actions 直接集成在 GitHub 中,因此使用起来更方便 - 无需额外的帐户,减少身份验证或权限问题……
过渡现在已经完成。这很简单,因为这两个服务非常相似,尽管 GitHub Actions 对 Docker 的支持更直接。在该服务中,操作定义在 .github/workflows 子目录中的 YAML 文件中。我们为 YaST 包创建了 几个模板。
如果您想了解更多信息,请阅读 GitHub Actions 文档。
有趣的错误修复
虽然我们在冲刺中花费了大量时间修复错误,但我们通常不会在博客上谈论这项工作,因为我们理解这并不是最令人兴奋的部分。但这次我们想重点介绍一些您可能会感兴趣的拉取请求,原因有很多。包括更好地处理 分析系统时发生的故障、仓库 URL 中的变量 和 SSH 授权密钥。
我们继续努力
如前所述,由于休假季,YaST 团队并未全力以赴。但我们希望继续在许多方面提供有趣的内容,并会尽力让大家了解最新情况。与此同时,像我们一样,尽情享受乐趣吧!