May 28, 2021 - 极狐GitLab  
13.12

极狐GitLab 13.12版本发布 - 按需扫描DAST和部署频次图

13.12版本发布44个功能。不但增加了按需DAST扫描,还提供流水线编辑器控制面板,并且持续新增DORA4指标支持。

本月,我们很高兴向大家介绍极狐 GitLab 13.12版本的更新情况,此版本不只要让代码部署更安全,还将有效提升团队协作效率,不但增加了按需DAST扫描,还提供流水线编辑器控制面板,并且持续新增DORA4指标支持。下面列举13.12版本发布44个功能的部分亮点。

帮助你真正管理安全

为了保证你的生产环境持续处于安全保护,按需扫描DAST功能现已上线,所有旗舰版用户都可以使用。这个功能允许你扫描一个已经部署到环境的应用或者API,而且不需要任何代码变动或者合并请求就能触发这个扫描。

Semgrep针对JavaScript,TypeScript和Python语言的SAST分析也已上线。Semgrep灵活的规则语法是简化极狐GitLab自定义规则功能的理想方法,扩展和优化了检测的规则,这是使用极狐GitLab SAST功能用户的普遍诉求。同时,它也允许极狐GitLab的用户访问Semgrep社区的规则。需要感谢@proletarius101的社区贡献,帮助我们扩展了Mobile Application Security Testing功能,在支持Xcode项目和Android manifest文件的基础上,现在还能支持.ipa (iOS) 和 .apk (Android)的二进制文件。

为了能统一管理和查看,许多用户在极狐GitLab里集成了他们正在使用的扫描工具。现在,项目漏洞报告功能支持根据扫描工具类型和厂家筛选第三方工具的扫描结果。

应用的安全(Application Security)是极狐GitLab今年关注的重点,你的反馈对我们至关重要。网页应用开发的趋势是倾向于开发“重JavaScript”和单页应用,我们发现现在的需求是能提供更多测试覆盖率的构建工具,而不是传统的基于代理的爬虫工具。

更易用的流水线管理功能

流水线是我们用户CI/CD成功的关键,我们希望把这个功能变得对新老用户都更加易用。流水线编辑器现在有了一个指导面板,帮助CI/CD的新用户更方便地创建第一条流水线。

而对于老用户,需求是要流水线更加灵活,现在使用include:关键字的时候支持通配符,来把 .gitlab-ci.yml文件切分成许多小文件,增加可复用性和可读性。我们还引入了用规则来定义变量的能力,能在某些情况触发以后才设置流水线变量,灵活度更高了。此外,定义复杂的流水线意味着任务之间会有很多依赖关系,而我们的流水线图表功能在这个版本里可展示任务间的依赖关系,有助于可视化地追踪和理解预期的任务执行顺序。

洞悉并改进你的DevOps成熟度

我们不能修复一个没法度量的事物,所以我们一直在持续开发我们的DORA4指标。在这个版本里,我们很高兴地发布“群组级的部署频次图”这个功能,能帮助你理解你的部署效率,找到瓶颈,关注影响你所有项目和团队的待改进环节。

价值流分析能帮助你识别工作流中效率低下的地方和根因。在13.12版本里,我们推出了工作流内容的分页和排序功能,帮助你在一个指定的stage里快速查看和整理内容来定位瓶颈。完成时间(Days to Completion)图表也已升级,能显示平均完成时间指标(average time to completion),帮助识别更有意义的时间趋势。

在这次的版本发布里,我们要感谢来自@leetickett的社区贡献,提供新功能,针对一个议题或合并请求来查看时间追踪报告,提供了一个可视化工具来查看每位贡献者花费的时间。

对于我们很多用户而言,合并请求是协作的核心区。我们推出了新功能,在合并请求里能查看代码质量的违规内容和失败的测试页面截图,给你在极狐GitLab的工作流程提供了必要的上下文内容。

更多升级功能!

我们在每一次的发布都会持续升级产品的易用性,以下是13.12版本里我们最喜欢的升级:

  • 管理员表格新增群组和项目数量总计值
  • 可以集成用户已有的Elastic Stack
  • 通过API创建票单
  • 当移除on-call的用户会提醒管理员
  • 当移除正在使用的部署密钥会提供用户

下面请继续查看我们13.12版本的更多功能,性能优化和功能变更!想要提前了解我们下个月的版本发布,请查看这个页面和14.0版本的kickoff视频

极狐GitLab 13.12 主要功能

按需扫描DAST正式GA发布

经过数月的开发工作,我们很高兴宣布我们的按需扫描DAST功能已经达到了GA发布的成熟度了。任何用户如果想在CI/CD流水线任务之外,对已经部署的应用或者API进行扫描的话,可以使用这个功能。在之前13.11版本里,我们给按需扫描DAST功能里的site profile增加了新功能,例如指定认证信息,移除url,添加额外的请求header字段,可切换扫描应用或API;在13.10版本,扫描可选择关联一个分支;在13.9版本,我们增加了保存扫描的能力,来快速帮助快速复用。我们相信以上这些提到的功能会满足极狐GitLab绝大部分的用户需求。

后面我们还会继续推出相关的新功能,像扫描计划等,我们期望按需扫描DAST这个功能会覆盖更多的场景和用例。同样,我们欢迎大家对新功能的更多反馈,请在issue 327396里评论告诉我们。

按需扫描DAST正式GA发布

流水线编辑器的实用信息工具

对CI/CD领域的初学者而言,第一次创建极狐GitLab CI/CD 流水线有时候会很困难。用户有时候需要反复在文档和极狐GitLab应用之间切换来调试第一条流水线。 在这次的发布中,我们在流水线的编辑器里增加了一个实用信息工具,帮助用户一步一步写好第一条pipeline。

流水线编辑器的实用信息工具

CI/CD的YAML配置文件支持通配符

CI/CD流水线里的includes:关键字可以把一个.gitlab-ci.yml大文件分解成多个小文件,来增加可读性, 也让后面复用这些配置信息变得更简单。通常一条流水线包含了多个文件,都存在同一个地方。而在本次发布中,我们支持*通配符和includes:关键字一起使用, 能让用户的includes:部分变得更加动态、简洁和易懂,可以在该提交 里查看我们极狐GitLab内部是如何使用的。

CI/CD的YAML配置文件支持通配符

在流水线图形界面里展示任务依赖

流水线图形界面里按stage分类展示了CI/CD流水线里的所有任务,帮助用户追踪任务进展,也给任务的执行顺序设置了预期。 引入了needs:关键字让用户可以创建一个有向无环图,允许一个任务在它配置的stage开始前就启动执行。但是,这会导致流水线图形界面逻辑不清晰,原本配置的任务顺序变得难理解。 在这次发布里,用户可以按任务的依赖关系来查看流水线,前后任务的顺序关系是通过needs:关键字来确定。我们还在任务之间加了连线,方便查看前后关系,更方便用户来追踪和理解任务依赖关系。

在流水线图形界面里展示任务依赖

测试报告提供失败的测试页面截屏

极狐GitLab允许研发团队在端到端测试的时候,使用自动化测试工具像Selenium来截取失败的测试页面截图。这是一个很棒的功能,但是当用户想要对某次失败的测试任务debug时, 要从很多的页面截图里找到他需要的截图,很麻烦,用户甚至会放弃花时间找截图,直接重跑一遍测试来查找问题源头。

现在,用户可以直接在流水线页面的单元测试报告里关联对应的页面截图,帮助用户快速浏览相关截图,尽快识别测试失败的原因。

测试报告提供失败的测试页面截屏

合并请求diff页面提示代码质量违规内容

在代码评审的时候,用户想要高亮显示一些代码质量的违规内容以解决他们。之前,用户需要在一个浏览器窗口打开合并请求概览来查看违规内容, 在另一个浏览器窗口来查看合并代码的修改内容,来回切换很麻烦。

但在这次的新版本里,用户可以直接在合并请求的diff页面里看到新引入的代码质量违规内容。这给用户提供了代码修复所需要的上下文,而不必多开一个窗口来回切换了。

合并请求diff页面提示代码质量违规内容

群组级的部署频次CI/CD图

作为极狐GitLab的DORA4指标的一部分,群组级的部署频次图在这个版本中已上线。它可以展示该群组下所有项目的综合部署频次指标, 帮助用户对跨项目和团队的部署频次有一个整体了解,更精准地理解他们的效率。监控部署的频次能帮助你理解你的部署效率,找到瓶颈,关注影响你所有项目和团队的待改进环节。

群组级的部署频次CI/CD图

60天免费试用极狐GitLab专业版

极狐GitLab不仅是源代码管理或CI/CD工具,它是一个覆盖完整软件开发生命周期和DevOps的开放式一体化平台。

企业版试用