经过三周的工作,又一个开发冲刺结束了。是时候为我们的壁虎伙伴们准备一份报告了。像往常一样,我们投入了大量时间进行枯燥的错误修复和细微的不显而易见的改进,但我们也有一些有趣的事情要分享。

改进加密分区建议的 UI

我们想谈论这个功能,不仅因为它对用户界面有明显的影响,而且因为它也是 Scrum 团队中不同角色之间协作的绝佳示例。 以前,我们的 Scrum 开发团队仅由 SUSE 的 YaST 团队的开发人员组成。 在本次冲刺(以及未来的冲刺)中,Scrum 团队通过增加 Ken Wimer 作为 UI/UX 专家和 Jozef Pupava(openQA.opensuse.org 和 openQA.suse.de 的操作员之一)来增强实力。

我们收到了一项功能请求,要求在此对话框中使加密更加可见。

Old partitioning proposal dialog

作为习惯于使用 Vim 和 Git 等工具的软件开发人员,我们必须承认 YaST 团队认为该对话框完全可用,并且很难想到更好的替代方案。 幸运的是,我们现在有 UI/UX 专家能够提供更好的替代方案,例如我们最终实施的这个方案。

New dialog for partitioning proposal

安装程序中这种视觉变化过去会导致 openQA 延迟,因为在 openQA 机制运行的同时调整测试并非总是容易的。 好消息是这次没有发生,因为我们的特殊 openQA 超级英雄一直在整个过程中关注我们的步骤。

欢迎 Ken 和 Jozef 加入我们的 Scrum 流程!

系统角色

安装程序中添加了一个新功能,可以一次性快速调整安装的多个设置。 您可以在 Github 仓库的 此 wiki 页面 上找到该功能的详细描述,包括多个屏幕截图和配置选项。 当然,对于不耐烦的人,我们还有一个华丽的屏幕截图!

System Role dialog

存储重构:调整分区大小

我们已经在之前的报告中解释过,我们正在对管理分区和其他存储任务的代码进行彻底的重写。 在本次冲刺中,这个全新的库获得了调整所有类型分区(Linux、Windows、交换分区等)大小的能力。 这不是短期内会影响用户的东西,但至少我们有一些屏幕截图来展示首映式效果(是的,我们知道终端的屏幕截图不是最漂亮的)。

shrink-vfat

grow-ntfs

安装程序自更新

从版本 3.1.175 开始,YaST 能够在系统安装期间更新自身。 此功能将有助于解决安装程序中的问题,即使在媒体发布之后也是如此。 这对于提高 YaST 的可靠性来说是一个巨大的进步。

工作流程非常简单:在系统分析期间,YaST 将自动搜索更新。 如果找到这样的更新,YaST 将下载、验证(使用 GPG)并应用它。 最后,将使用新版本恢复安装。 很好!

将来,自更新将默认启用。 但是,如果您出于某种原因不想要这样一个不错的功能,您可以自由地禁用它。 此外:您还可以使用自定义 URL 传递自定义更新,而不是使用官方更新。

如果您好奇,可以查看 技术细节

存储重构:寻找完美的引导加载程序

重写存储层的一个目标是能够应对涉及良好引导加载程序配置的所有复杂要求。 这次我们不希望不同的场景随着时间的推移在错误报告中出现,并开始向现有代码中添加越来越多的分支,以支持每一个“新的”场景。

变化肯定会出现,但我们需要一个坚实的基础,基于专家的知识来构建一个灵活的、面向未来的代码,以处理有关引导加载程序的分区。 因此,我们开始与 YaST 支持的所有硬件架构中的专家进行一轮接触,以便将他们大脑中的所有知识提取到一组 Ruby 类中。 这仍然是一个正在进行中的工作,因为榨取人们的头脑并不总是容易的,但我们已经有了 一些初步文档

整合持续集成工具

持续集成是软件开发的关键方面,特别是使用 Scrum 等方法论时。 目前,我们同时使用 TravisJenkins 进行持续集成。 Travis 构建 GitHub 上推送的提交和拉取请求,而 Jenkins 负责与 Open Build Service 的集成。

我们正在投入大量精力尝试使用 Jenkins 处理所有事情。 如果您想了解更多原因或进度如何,请查看 详细文档

还有更多!

像往常一样,这只是团队在最新冲刺期间交付的全部工作的样本(对于 Scrum 和统计爱好者来说,它代表了交付的 87 个故事点中的 34 个故事点)。 希望足以让您了解情况……如果不够,您知道在哪里可以联系我们以获取更多信息!