GitLab Web IDE 正式发布 10.7 版本并开源

  • Sergio De Simone
  • 张卫滨

2018 年 4 月 26 日

话题:持续集成语言 & 开发

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

GitLab Web IDE致力于简化接受合并请求的工作流程,现在 GitLab 发布了 10.7的正式版本(generally available),除此之外,还有一些其他的特性以提高 C++ 和 Go 代码的安全性并提升与 Kubernets 集成的能力。

GitLab Web IDE最初是是以 beta 的形式发布在 GitLab 10.4 Ultimate中的,它的目标是在进行较小的修正和处理合并请求时,简化相关的工作流,不需要开发人员 stash 他们的变更并切换至本地的一个新的分支,然后再切换回来。如果开发人员有大量的 PR 要 review,或者开发人员刚刚接触 Git,这项特性可能更有吸引力。

GitLab Web IDE 的布局与很多图形化的 IDE 类似,左侧的面板展现了该项目的文件,中间的面板允许查看和编辑它们的内容。GitLab Web IDE 右侧是提交面板,它允许开发人员跟踪哪些文件要提交、审查变更、编辑提交信息、控制提交到 master 分支还是一个新的分支中以及是否合并变更。

GitLab 将 Web IDE 开源了,以便于让开发者社区为其贡献功能的开发和完善。

除此之外,GitLab 10.7 还扩展了 GitLab 的Static Application Security Testing(SAST),为其添加了对 C/C++ 和 Go 的支持。GitLab SAST 是一组安全工具,其目的是分析源码并探测已知的漏洞。除了 C/C++ 和 Go 之外,SAST 还支持 Python、Java 和 Ruby on Rails。GitLab SAST 容易让人与GitHub Security Alerts进行类比,后者支持 Ruby 和 JavaScript,对 Python 的支持正在开发之中。

GitLab 10.7 带来的另外一个有趣的变化是Deploy Tokens,它能够为特定的需求提供长期存活的只读认证会话,这样的场景举例来说,在 CI 管道中使用 Kubernetes 来编排一组容器。实际上,为了完美地支持 pod 的重启和自动伸缩,Kubernetes 需要对容器注册表(registry)进行持续的访问。在此之前,可以通过 CI job token来实现,它的缺点在于一旦 Kubernetes 完成其任务,该 token 就会过期。作为变通方案,可以使用个人的访问 token(personal access token),如果访问 token 需要在多个用户间共享的话,这种方式就不合适了。Deploy token 所提供的解决方案能够解决这两个方面的限制。

GitLab 10.7 还包含了很多新的特性,比如参数化 CI/CD 控制流、项目的标记(badge)、子项目 issue 面板等等。读者可以参阅官网的发布文档了解完整的细节。

查看英文原文GitLab Web IDE Goes GA and Open-Source in GitLab 10.7

持续集成语言 & 开发