GitLab 11.8与SAST一起发布,用于JavaScript,用于子组的GitLab页面和错误跟踪

图片引起关注


SAST对JavaScript的支持


感谢静态应用程序安全测试(SAST),GitLab可以扫描代码并帮助甚至在管道中检测潜在的漏洞。 在版本11.8中,我们基于对node.js的现有支持将JavaScript语言添加到受支持的SAST列表中 。 现在,您可以扫描任何JavaScript文件,静态脚本和HTML。 目前,DevSecOps中的一项重要实践是每次提交时都要扫描更改,而通过此SAST更新,我们涵盖了最流行的Web语言之一,可帮助用户及早发现JavaScript代码中的风险。


用于子组和页面模板的GitLab页面


由于以下两个改进,GitLab Pages在此版本中变得更好。 首先,我们为子组中的项目添加了对GitLab页面的支持:现在,此类项目可以轻松地将其内容发布到网络中。 其次,GitLab 11.8现在包含了Pages最受欢迎的模板 ,因此现在您可以一键开始使用Pages。


哨兵错误跟踪


错误使您可以评估应用程序的状态,并可以在用户报告问题之前检测到问题。 GitLab 11.8现在可以显示项目中的最近错误,从而更易于检测和修复。


还有更多很棒的功能!


此版本中有许多好的创新,因此我们想重点介绍一些:


  • 确认合并请求的规则 (在GitLab的俄语本地化中为“合并请求”)。 现在,您可以轻松设置一个规则,由谁来确认更改-特定用户,组或角色。 很快,此功能将出现在GitLab.com上,并且在用户实例中,管理员已经可以连接GitLab。
  • 适用于环境的插件功能 。 以前连接的功能可立即在您的所有环境中起作用,但现在可以在特定环境中使用它们。 此功能已在GitLab.com上起作用,并且可以由管理员为用户实例启用。
  • 合并消息(压缩)时,改进了消息与提交的合并 。 如果您尝试为提交创建良好的消息,可惜在合并提交时丢失它们。 在版本11.8中,当合并所有提交中的提交时,将自动获取第一条多行消息。 您还可以手动设置消息。

我们邀请您参加我们的会议


GitLab MVP徽章


本月MVP- 亚伦·沃克Aaron Walker)


Walkafwalka在此版本中为Auto DevOps添加了两个新功能: 支持自定义域在更新应用程序机密时重新部署。 感谢您的这些重大改进!


GitLab 11.8版本的主要功能


SAST对JavaScript的支持


(最终,金色)


静态应用程序安全测试(SAST)使您每次将更改提交到存储库时都可以在代码中找到漏洞。 有了合并请求中提供的这些信息,您就可以首先照顾好安全性,甚至可以在将问题添加到稳定分支之前发现问题。


在11.8版本中,我们将JavaScript添加到SAST支持的语言列表中。 您无需更改管道中的任何内容;将自动检测JavaScript项目并对其进行安全漏洞分析。 它也是Auto DevOps的一部分。


SAST对JavaScript的支持


SAST文档原始票证


哨兵错误跟踪


(核心,入门,高级,终极,免费,古铜,银,金)


跟踪应用程序生成的错误有助于您创建和维护优质的用户体验,并在用户发现问题之前发现问题。 同时加快了新出现问题的解决速度。


通过集成流行的Sentry开源跟踪器并在您的GitLab项目中显示最新的错误,GitLab 11.8使错误跟踪更易于理解和更高效。


Sentry最近通过添加问题提交检测,跟踪提交和发布等改进了与GitLab集成 。 由于相互集成,您可以轻松地通过GitLab在Sentry中工作,反之亦然,并且可以在工作流中解决上下文中的问题。


哨兵错误跟踪


有关跟踪错误原始票据的文件


使用模板一键创建页面


(核心,入门,高级,终极,免费,古铜,银,金)


GitLab 11.8现在包括最流行的Pages模板,因此现在您可以在创建新项目时立即创建页面,而不必像以前那样继承模板存储库。


查看我们有关使用GitLab页面模板的博客文章


使用捆绑的模板一键创建Pages网站


GitLab Pages文档原始票证


页面对子组的支持


(核心,入门,高级,终极,免费,古铜,银,金)


现在,您还可以使用页面为子组中的项目创建站点。 以这种方式创建的网站的URL格式为toplevel-group.gitlab.io/subgroup/project 。 现在,对于所有项目,甚至是属于子组的项目,您都可以创建发行软件所需的文档或其他页面。


页面对子组的支持


GitLab页面管理文档原始票证


合并请求确认规则


(优质,极致,银,金)


代码审查是任何成功项目的基本实践,但是并不清楚谁应该审查更改。 通常,需要几个负责各个方面的审阅者,例如开发,安全性,可用性和产品本身。


在GitLab 11.8版本中,我们提出了确认合并请求的规则,这使确定必要的确认和最小确认数成为可能。 确认规则显示在合并请求小部件中,因此很容易分配下一位审阅者。


在GitLab 11.3中,我们介绍了代码所有者( 原始文章翻译 )的角色,以确定谁负责代码的不同部分。 验证规则中已经考虑了代码所有者,因此找到合适的人员来审查更改将很容易。


默认情况下,确认规则是禁用的;实例管理员可以Feature.enable(:approval_rules) Rails控制台中Feature.enable(:approval_rules)命令Feature.enable(:approval_rules)确认规则。 在GitLab.com上,暂时禁用了确认规则,我们计划在GitLab 11.8.1版本中重新启用它们。 请继续关注此票证以获取更新。


合并请求批准规则


有关确认合并请求原始票据 规则的文件


改进了跨项目管道的触发器


(优质,极致,银,金)


GitLab 9.3的发布( 原始文章翻译 )增加了通过在您的工作中通过GitLab API调用启动下一个管道来创建跨项目管道的能力。 在11.8版中,由于使用了trigger:关键字,我们改进了这些管道的trigger: ,可以将其添加到加入管道的工作中,并在当前管道成功完成后自动启动下一个管道。


改进的跨项目管道触发器


关键字文档触发器原始票证


改进了将消息合并到提交中


(核心,入门,高级,终极,免费,古铜,银,金)


当一个故事包含一些小的承诺以修复单元测试或解决反馈中的问题时,将来很难创建一个可读且有用的Git故事。 合并提交将此类更改收集到一个提交中,同时删除所有描述。


现在,GitLab将第一条多行消息作为合并的提交消息放入功能分支中。 或者,您可以手动设置此消息并自己反映所有重要更改。


改进的南瓜提交消息


关于合并提交原始票据的文件


Auto DevOps支持特定于环境的用户域


(核心,入门,高级,终极,免费,古铜,银,金)


Auto DevOps使您可以通过指示项目的“基础域”来快速开始工作。 准备好将应用程序部署到生产环境后,您可能希望使用FQDN形式的其他域。


现在,您可以使用ADDITIONAL_HOSTS环境变量为您的应用程序定义一个或多个域。 此外,可以通过将环境名称添加到变量来为特定环境配置它,例如: <ENVIRONMENT>_ADDITIONAL_HOSTS


感谢Aaron Walker的此功能!


Auto DevOps支持特定于环境的自定义域


有关环境变量原始票据的文件


基本功能量表


(核心,入门,高级,终极,免费,古铜,银,金)


通过GitLab使用无服务器架构部署功能时,您可以充分利用Knative的优势,包括扩展无服务器部署。


现在,对于Knative实例中部署的每个应用程序或功能,您可以查看无服务器部署的规模。 该比例显示当前使用的Kubernetes炉床数量。


显示基本功能的功能比例


功能部署文档原始票据


GitLab 11.8中的其他改进


设置一周的第一天


(核心,入门,高级,终极,免费,古铜,银,金)


以前,GitLab上的日历会自动假定星期从星期日开始。 现在,设置中的用户可以将星期一选择为一周的第一天,这将在使用日历选择日期和开发计划中反映出来。


感谢Fabian Schneider的此功能!


指定一周的第一天


用户设置原始票证的 文档


将路线图向前和向后滚动到过去


(最终,金色)


首次下载路线图时,GitLab会为您预先选择一个时间段,并提供选择每周,每月或每季度间隔的选项。 但是,较早的路线图视图保持固定,并且当前时期之外的史诗被隐藏。


从此版本开始,您可以将路线图向前滚动到将来,也可以向后滚动到过去。 属于这些延长间隔的史诗将自动显示在图表上;无需进一步刷新页面。 这将使您可以在所需的时间间隔查看更多史诗。


将路线图向前滚动到未来,向后滚动到过去


路线图文件原始票证


通过LDAP进行智能卡身份验证


(优质,极致,银,金)


使用智能卡作为授权令牌的组织通常使用LDAP来集中管理其帐户。 版本11.6 引入了智能卡身份验证 。 在11.8中,我们对其进行了补充,增加了对使用智能卡数据通过LDAP服务器进行身份验证的支持。


在manbetx客户端打不开,我们使用符合RFC4523的方法,使用certificateExactMatch规则。


智能卡身份验证文档原始票证


适用于不同环境的插件功能


(优质,极致,银,金)


从此版本开始,可以根据环境独立切换功能。 可以使用一组基于匹配环境名称定义的规则来控制功能的行为。 默认情况下,规则( * )始终有效,但是,您还可以通过添加新的环境规范来设置其他规则(例如, review/* )。


在11.8.0版中,要使此功能正常工作,您需要通过在rails控制台中运行Feature.enable(:feature_flags_environment_scope)命令Feature.enable(:feature_flags_environment_scope)来启用它。


环境功能标志


环境规格文件原始机票


通过与Kubernetes集成来更新GitLab Runner


(核心,入门,高级,终极,免费,古铜,银,金)


如果您在最新版本的Kubernetes中部署应用程序,则可以确保拥有所有新功能并且安全性符合所有要求。


GitLab 11.8允许您一键更新Kubernetes中的GitLab Rinner。 在将来的版本中,我们将为其他应用程序添加此功能。


通过Kubernetes集成升级Kubernetes Runner应用程序


应用程序安装文档原始票证


在管理面板中显示用户创建时间和活动


(核心,入门,高级,终极,免费,古铜,银,金)


管理员需要通过简单的操作获取有关用户活动的信息。 为了帮助完成此任务,我们在管理面板( /admin/users )的“用户”区域中添加了用户的创建日期和上次活动日期的显示。


在这里,您可以阅读有关GitLab识别为活动的活动的更多信息。


管理面板中显示的用户活动和创建日期


管理员的用户API文档原始票证


能够搜索最近的用户操作


(核心,入门,高级,终极,免费,古铜,银,金)


GitLab具有last_activity_on用户属性,可帮助管理员更轻松地确定上一次用户活动的发生时间。 这对于搜索活动和不活动的用户非常方便。


为了确保捕获只读活动,我们扩展了last_activity_on属性,以便在访问与活动面板,项目,任务和合并请求相关的页面时更新该属性。


实例中的统计文档原始票证


项目主题而不是标签


(核心,入门,高级,终极,免费,古铜,银,金)


项目标签是组织相关项目的便捷方法,但是术语标签与GitLab中的标签匹配。 为了解决此问题,我们将项目标签重命名为主题,并改善了它们在项目查看页面上的显示


我们将很高兴继续使主题对按项目搜索更有用,并将在11.9版的活动面板中添加按主题进行过滤


有关项目设置原始票据的 文档


通过API在项目中搜索存储库标签


(核心,入门,高级,终极,免费,古铜,银,金)


现在,您可以通过标签API在项目中搜索存储库标签。 这将允许您直接在项目中搜索特定标签。 如果您正在寻找与特定版本标签匹配的项目,那么现在您可以轻松找到所需内容。


感谢Robert Schilling使用此功能!


标签原始票证的文件


改进的项目列表视图,信息密度更高


(核心,入门,高级,终极,免费,古铜,银,金)


我们考虑了用户对项目列表首次改进的反馈,并增加了此页面上的信息密度,增加了另一列并减少了空白空间。


改进的项目列表,信息密度更高


项目文件原票


改进的组查看页面


(核心,入门,高级,终极,免费,古铜,银,金)


在11.8版中,我们更新了小组查看页面的外观,以便显示更多信息。 我们减少了此页面上的空白空间,并更改了设计,使其与项目查看页面新外观一致。


这是改善小组查看页面的第一步,我们很高兴继续对此进行研究。


改进的组概述,减少空白


团体文件原单


用于管理嵌套史诗的API


(最终,金色)


在先前的发行版中,我们添加了嵌套的史诗 ,即向史诗添加史诗的功能。 从此版本开始,您将能够管理这些史诗之间的关系,包括通过API。 因此,现在您可以管理团队中的各个工作流程时间表,包括使用自动化功能。


API文档,用于史诗原始票证 之间的链接


关联的合并请求和票证导致一个视图。


(核心,入门,高级,终极,免费,古铜,银,金)


我们更新了票证中的链接合并请求部分,以使它们与相关票证具有视觉一致性,并带来美观。


在将来的版本中,我们将在本节中为每行添加更多元数据 ,以便用户在上下文中立即看到有关合并请求的相关信息。


重新设计了相关合并请求,与相关问题一致


有关合并请求中票证原始票证的 文档


将Auto DevOps域字段从CI / CD设置移动到群集设置


(核心,入门,高级,终极,免费,古铜,银,金)


通过为Auto DevOps指定基本域,您可以利用强大的功能,例如自动查看和自动部署。 现在,我们将基本域的指示直接转移到集群设置中,从而简化了指示。 这将使创建集群时轻松确定基本域,以及为不同的集群定义不同的域。


将Auto DevOps域从CI / CD设置移动到群集设置


有关设置Auto DevOps基本域原始 故障 单的 文档


通过API管理组标签


(核心,入门,高级,终极,免费,古铜,银,金)


现在,您可以通过类似于项目标签的API来管理组标签,这有助于进一步支持团队中的自定义计划和执行工作流。


感谢Robert Schilling使用此功能!


团体标签原始票证的 API文档


现在已自动为GitLab Pages网站启用.html扩展名


(核心,入门,高级,终极,免费,古铜,银,金)


您的GitLab页面网站上的/sub-page.html文件现在可以作为/sub-page ,它为您提供了更多有关如何向用户展示网站的选项。


GitLab Pages文档原始票证


CI中的页面预定义变量


(核心,入门,高级,终极,免费,古铜,银,金)


变量CI_PAGESCI_PAGES_URL已添加到Pages管道,这使您能够查看页面的域名和URL。 当使用位于不同位置的Pages网站时,这提供了更大的灵活性。


GitLab Pages文档原始票证


为Kubernetes执行器增加容忍度


(核心,入门,高级,终极,免费,古铜,银,金)


Kubernetes提供了一个绝佳的机会,可以将设备与我们的发展区分开。 但是,某些任务需要专用的设备,包括可能比其他任务需要更多资源的工作。


Kubernetes通过在节点上添加污点和公差来支持这一点,以便在规划炉膛时考虑这些因素。 我们已经在GitLab Runner中为Kubernetes执行器添加了本机污染和容忍支持,以支持这些类型的工作流程。


Kubernetes执行者文档原始票证


Gitaly TLS支持


(核心,入门,高级,终极,免费,古铜,银,金)


Gitaly现在支持TLS,这意味着当启用TLS时,GitLab与Gitaly之间的所有通信都将被加密。 以前,GitLab和Gitaly之间的连接不是由自身加密的,而是取决于网络安全设置。


Gitaly TLS支持文档原始票证


Gitaly中的Elasticsearch支持


(入门,高级,终极)


之前,使用Elasticsearch时,没有NFS与文件系统中的Git通信是不可能的。 从此版本开始,您可以使用Gitaly而不是NFS,这将加快对Git的访问。


Elasticsearch集成文档原始票据


差异合并请求中的快速文件转换


(核心,入门,高级,终极,免费,古铜,银,金)


大型合并请求审核是一个复杂的过程,尤其是当您必须从一个文件移到另一个文件时。 一种基于模糊文件查找器定义文件的新方法,可以轻松地从一个文件过渡到另一个文件,因此您可以使用键盘快速浏览差异。


跳转到合并请求差异文件


差异导航文档原始票证


在合并请求列表中显示确认数


(入门,优质,终极,古铜,银,金)


现在可以轻松地在合并请求列表中找到已确认并准备合并的合并请求。 现在,合并请求列表中将显示所需的确认信息和收到的确认信息。


感谢Andy Steele的此功能!


合并请求列表中的批准计数


确认合并请求的文件原始票据


接收来自手动配置的Prometheus实例的警报


(最终,金色)


GitLab 11.3引入了对设置警报的支持( 原始文章翻译 ),但仅限于通过GitLab与Kubernetes集成部署的Prometheus实例。


通过GitLab 11.8,手动配置的Prometheus服务器现在也可以通过在警报管理器中将GitLab添加为Web挂钩的接收者来通知GitLab警报。 收到警报后,GitLab将向维护者和项目所有者发送电子邮件。


接收来自手动配置的Prometheus实例的警报


Prometheus外部实例集成文档原始票据


使用API​​从容器注册表中删除未使用的标签


(核心,入门,高级,终极,免费,古铜,银,金)


许多组织为每次提交创建容器,以简化代码更改检查和最终部署。 这可能会导致仅在短时间内需要使用许多容器标签。


GitLab 11.8现在允许最终用户通过使用正则表达式单独或成组删除标签来通过我们的API清理其容器注册表。


有关删除容器注册表中的标签原始票证的 文档


安全漏洞的票证隐私


(最终,金色)


当在合并请求,传送带页面和安全面板中查看安全报告时,用户可以创建新的票证以修复安全漏洞。 此信息包含机密数据,这些数据可能会披露在补丁可用和发布之前不应披露的详细信息。


从GitLab 11.8开始,与漏洞相关的票证默认情况下标记为机密 ,但是如果允许公开,用户可以禁用此标志。


安全合并请求文档原始票证


在Auto DevOps中更新应用程序秘密密钥时强制重新部署


(核心,入门,高级,终极,免费,古铜,银,金)


使用K8S_SECRET_变量的语法为Auto DevOps配置应用程序密钥时,将为您的应用程序创建相应的Kubernetes密钥。


这些应用程序机密更新后,Auto DevOps将使用更新后的机密重新部署您的应用程序。


感谢Aaron Walker的此功能!


Auto DevOps变量文档原始票证


在无服务器功能列表中显示集群环境


(核心,入门,高级,终极,免费,古铜,银,金)


无服务器页面已得到改进,现在根据部署在Knative中的功能对它们进行了分组。


此外,现在将显示功能说明以及用于复制功能端点和在新选项卡中打开端点的快捷方式。


无服务器部署文档原始票据


为Auto DevOps提供地址证书管理器


(核心,入门,高级,终极,免费,古铜,银,金)


证书管理器提供了一种简单的方法来为您的Auto DevOps应用程序添加HTTPS支持。 URL, Let's Encrypt (64 ), .


Auto DevOps .




release notes / : GitLab 11.8 released with SAST for JavaScript, Pages for subgroups, and Error Tracking .


cattidourden , maryartkey , ainoneko rishavant .

Source: https://habr.com/ru/post/zh-CN443322/


All Articles