我们如何让开源 CI 变得更好?
本文将介绍Drone CI,它是一款功能强大、轻量级、基于 Docker、支持多管道、跨平台的开源 CI/CD 工具。Drone 于 2012 年推出,与许多其他开源工具一样,它由开发人员开发,也服务于开发人员,因此缺乏用户友好的界面。
我希望我们最终改变了它……
在Pixel Point,我们每天都在各种不同的项目中使用 Drone,因此我们决定对其进行改进。经过数月的研发,我们非常高兴地宣布全新 Drone v1.0.0 现已正式上线。
新版本
旧版
研究先前的解决方案
这些改进的主要目的是改进用户体验 (UX),其次是用户界面 (UI)。我们审查了在 Github 上发现的 Drone 现有问题,并收集了来自开发人员和 Drone 创始人 Brad Rydzewski 的反馈。
基于此,我们整理了一份主要问题清单:
- 导航复杂且模糊
- 令人困惑的取消构建操作
- 存储库激活期间缺乏用户交互
- 缺乏对移动和平板设备的响应式设计支持
- 没有明确定义的主页
- 界面可扩展性问题,没有空间容纳新功能
- 模糊设置保存
我们还创建了即将推出的新功能列表,其中包括多管道构建、对 cron 作业的支持以及新的存储库设置。
新想法与实现
关键导航 – 搜索
首先,我们决定将“搜索”功能作为跨存储库导航和激活的关键组件。它位于每个页面的顶部,可通过快捷键“/”访问。使用搜索时,您可以查看存储库的摘要和最新构建的状态。
卡片
我们为存储库设计了卡片,使用最有用的信息,并尝试创建尽可能灵活的解决方案。例如,主页上卡片的标题是存储库的名称,而第二行是包含重要信息的易于阅读的短语。
我们根据提交的作者、事件、分支和提交信息构建了该解决方案。该解决方案比表格视图更具扩展性,因为表格视图的每一列都对应一个特定的字段。使用我们的解决方案,您可以轻松折叠它并在移动端视图中拆分行。
标签页
我们改进了代码库页面,让您一打开就能看到标签页。这为设置页面提供了更便捷的导航方式,也方便我们将来添加新的标签页(目前我们已经有几个标签页在开发中)。
单一设置页面:
不再将某些设置拆分到不同的页面,现在所有设置都集中在一个页面中。激活新仓库后,您将立即重定向到设置页面,因为这通常是您配置仓库的第一步。
新的构建页面
我们致力于统一组件,因此包含构建状态简要信息的主要组件与之前的页面相同。左侧导航现在支持多个管道。顶部我们增加了按钮空间,我们计划在未来版本中添加新功能。
日志很重要
为了更好地阅读和浏览日志,我们添加了全屏模式和下载日志的功能,如果您的日志很大并且您想在您个人喜欢的编辑器中查看它们,这尤其有用。
同步不会妨碍您的工作
一些 Drone 客户端拥有大量的仓库列表,将它们全部同步到 Drone 需要一些时间。以前,同步是一项全屏任务,不允许您关闭屏幕或继续处理现有的仓库列表。现在,它只是一个带有动画的小按钮,在同步过程中播放。
智能加载:
在新版本中,当您在第一个应用上加载数据并跳转到另一个页面时,Drone 会利用现有列表,并清晰地显示数据正在加载的提示。无需再等待或观察旋转图标;如果有数据,它会立即渲染。
空白状态的漂亮图标
我们付出了很多努力来制作漂亮的空白状态,并制作了许多不同的图标,您可以在各个页面上欣赏。
您对无人机还有什么期望?
目前已计划发布 Drone 1.1 版本,其主要功能包括:
- 构建页面中针对特定环境的“部署”按钮
- 按分支和环境过滤构建的能力
- 为刚刚安装 Drone 的用户提供用户友好的工具提示
- 实时更新的新方法
- 改进的用户管理
请继续关注并订阅Github或Twitter上的发布更新。
鏂囩珷鏉ユ簮锛�https://dev.to/alex_barashkov/how-did-we-make-open-source-ci-better-15b0