GitLab 13.1发布

2020-06-23 03:07:29

GitLab 13.1现已发布,它为您带来了扩展的警报管理、帮助您跟踪和改进代码质量的新工具,以及更多保持代码安全和合规性的方法。

警报对于应用程序维护至关重要,但了解并分类抛出的警报范围可以显著降低工作效率和响应时间。GitLab的警报管理聚合您所有服务的IT警报并对其进行排序,以简化评估和补救,提高工作效率,并帮助您立即研究和解决关键问题。13.1中的主要功能包括警报分配、Slake集成,以及在分配警报时创建GitLab to-Do。

只有在部署高质量代码时,部署速度才重要。通过对最近修改的代码设置测试优先级,开发人员可以立即解决错误,而无需运行整个测试套件。随着时间的推移,代码覆盖率跟踪将质量趋势呈现给开发人员和管理人员,而本机代码智能通过将参考资料直接集成到GitLab中,提高了代码审查的速度和准确性。

安全对每个人都很重要,我们致力于降低完全安全、合规的SDLC的门槛。这就是为什么我们很高兴地宣布,我们已经将Brakeman SAST扫描迁移到了Core,允许每个Rails开发人员-每个产品层-扫描他们的源代码,以发现已知的漏洞。对于注重合规性的组织,我们发布了网络容器策略的策略管理UI,并且我们支持将组级别漏洞导出到CSV文件,以供审核或进一步的内部审查。此外,我们还对安全仪表板进行了有益的用户体验改进,添加了永久性筛选器和问题状态图标,以帮助您在使用该工具时维护上下文。

这些只是13.1中的几个亮点。对于这个版本,我们在社区贡献方面也取得了新的里程碑。第一次,超过300名来自更广泛的社区的MRS在发布期间被合并,并武器珍视每个人的贡献!继续阅读,了解更多有关其他奇妙的工作效率改进的信息,例如可访问性测试mr小部件、设计线程解析、管道成功通知等!

如果您想预览下一版本中的内容,请务必查看我们的13.2启动视频!

Jacopo在修复管道时添加了新的电子邮件通知。到目前为止,GitLab会在管道出现故障时发送通知电子邮件,但当管道修复时,不会发送修复通知。开发人员需要反复重新加载合并请求或管道视图来检查状态。这一巨大贡献解决了这个问题,避免了开发人员的挫折感。

这项贡献花了大约8个月的时间,但雅格布努力做到了,并设法让它越过了终点线。它从5个不同的审查员那里获得了批准。它从GitLab的每个人那里收到了很好的反馈,并引起了很大的兴趣,有30多个人对这个问题投了赞成票,有近70个与此相关的活跃对话。

消防时,响应人员必须协调多个工具并评估不同的数据源,以收集和评估指标、日志和跟踪。与响应团队共享这些内容需要截屏,然后将数据复制并粘贴到单个票证中,以便让所有利益相关者随时了解情况。这项工作是体力劳动、耗时、劳累和有压力的。它会导致警觉疲劳、压力增加、士气低落,最重要的是,错过了警报。

GitLab很高兴能推出警报管理功能,将多个IT服务警报聚合到一个界面中,帮助您的团队对警报进行分类并将其升级为事件。我们添加了在列表视图中对警报进行分类、查看警报详细信息、分配警报、更新警报状态以及从警报创建事件问题的功能。

在GitLab 13.2及更高版本中,我们计划通过与PagerDuty集成、显示警报的相关指标和日志、关联Runbook和创建警报集成生成器来改进警报和事件响应工作流程,以便您的操作员可以自助服务并将GitLab与任何监控工具无缝集成。要查看我们的进度并为未来的改进提出建议,请参阅警报管理史诗。

在此版本中,我们重新设计了功能标志UI,以便为多个环境启用设置策略。以前,随着环境数量的增加,管理功能标志和设置策略要困难得多。这一改进使您可以更灵活地创建策略并将其应用于大规模环境。

今天,想要确保每个人都可以访问他们的应用程序的开发人员遭受着反馈循环缓慢的困扰,这使得他们很难捕捉到代码中的降级。GitLab的完整可访问性报告是一个开始,但使用该报告来查看单个合并请求中发生了什么变化是一个手动且缓慢的过程。

在GitLab 13.1中,合并请求可以有一个小部件,该小部件详细说明了与更改的页面相关的可访问性降级。这将立即向开发人员显示其更改的影响,这有助于在合并和部署之前防止降级。

当你收到很多关于设计的反馈时,评论引脚的数量会迅速增加!随着讨论主题的增长,很难知道哪些讨论已经完成,哪些还需要工作。

在13.1中,您将能够将任何注释标记为已解决,以表示它现在已完成。更好的是-您已解决的注释别针将从设计中消失,这样您就可以专注于剩下的内容了!当然,如果您需要重新访问某些内容,所有已解析的帖子都可以在侧边栏底部的已解析评论区域中找到。从那里,您可以再次找到它们,并查看在修订点应用了哪个修订。

我们认为这将极大地改进您的工作流程,这样您就可以专注于重要的事情。

合并请求审阅最初是作为GitLab高级功能在GitLab 11.4中引入的,允许合并请求审阅人一次提交多个评论,从而降低了合并请求作者的通知噪音,并允许更有凝聚力和流线型的审查过程。

自从它推出以来,我们重新评估了它在我们基于买家的定价模型中的地位,作为13.1的一部分,我们很兴奋地宣布,这一功能现在已经转移到GitLab Core。

代码审查是一个重要的过程,它需要理解提议的更改和周围的代码,以了解它是否以可维护的方式进行。在编写新代码或检查对现有代码的更改时,轻松浏览定义可以让开发人员更好地理解正在编写的软件。在检查合并请求中的新代码和编解码器时,这非常有用。但是,设置可浏览定义通常意味着配置外部工具和资源,或者使用专用IDE。有了GitLab,情况就不再是这样了。

GitLab的原生代码智能从我们在Sourcegraph的合作伙伴所做的伟大工作中获得灵感,并由LSIF格式提供支持,它可以通过向项目的.gitlab-ci.yml文件(该文件指定LSIF报告)添加新作业来添加到任何项目中。一旦生成,将鼠标悬停在代码中的对象上将显示可用的代码智能操作。不需要外部工具或IDE。

未来的迭代将包括查找引用的能力,以及API支持。您可以在代码情报史诗中学习。

GitLab已经支持基于用户ID控制功能推出。但是,为每个标志或环境重复添加更多用户是很繁琐的。为了使这一过程更方便,我们添加了一个称为“列表”的新功能标志策略。用户列表是使用API创建和修改的。创建后,通过为您的功能标志选择“列表”策略并选择适当的列表来使用它们。如果您已经创建了列表,则可以立即使用它们。

通常,项目有代码覆盖率目标,但开发团队可能不太清楚目标值随时间的变化趋势。需要有一种更简单的方法来跟踪代码覆盖率随时间的变化,而不需要额外的麻烦。

代码覆盖率图现在可以更好地显示代码覆盖率随时间的变化趋势。它显示在管道中计算的覆盖值的简单图形。在我们计划改进和未来的迭代时,我们期待着客户对此功能的反馈。

既然您已经能够在GitLab中创建需求,那么通向完整的需求管理解决方案的下一步就是显示您的需求得到了满足。

我们很高兴能够释放第一步,允许您在标准CI管道内配置作业,当触发这些作业时,会将所有现有需求标记为已满足。此配置项作业可以是手动的,也可以是自动的,与其他配置项作业一样,可以将其配置为允许失败,这样就不会阻止管道完成。未来的迭代将允许选择性地满足管道测试的要求,并允许执行手动验证的客户通过界面指示满足的要求。

USERS API/USER/KEYS和/USERS/:ID/KEYS端点现在支持可选的EXPILES_AT参数来定义SSH密钥的到期日期。此更改可帮助用户和组织在受监管的环境中管理受损凭据的影响。

GitLab的Audit events API已经进行了扩展,可以为项目添加端点,使组所有者能够轮询API以获取特定的项目级数据。此更改使您可以更轻松地查找和检索管理法规遵从性计划所需的数据,并为您的GitLab项目的可审核性和可追溯性构建所需的工具。

问题分析允许用户快速发现问题数据中的趋势。为了增强这一能力,您现在有一个表,其中列出了问题年龄、状态、里程碑、权重、到期日、受理人和作者等关键详细信息。有了这种额外的可见性,用户现在可以跟随他们的询问的线索,超越图表,进入趋势背后的具体问题。

IP访问限制现在适用于高级层和银级层。此功能允许您限制一个或多个IP子网对组及其底层内容的访问。启用IP访问限制可确保特定内容不会离开场所,同时不会阻止对整个实例的访问。

现在,无论您正在阅读的是哪部分的问题,问题标题都将始终显示在问题的顶部。这可以确保您始终拥有上下文,无论您是单击了深入对话主题的链接、在问题的深层滚动的链接,还是正在处理类似问题的多个选项卡。

在项目上协作的开发人员遵循特定的编码标准和样式,以在项目中保持一致的可读性和格式级别。此配置通常通过项目内部的.editorconfig文件完成,该文件提供缩进样式、缩进大小和行尾等指令。

打开文件时,Web IDE在当前目录和所有父目录中查找名为.editorconfig的文件。如果找到配置文件并且其设置与该文件的路径匹配,则这些设置将强制应用于打开的文件。Web IDE提供了对EditorConfig的大多数广泛支持的功能的支持,但字符集除外。

静态站点生成器使用Markdown文件开头两-行之间的前几行(“前置内容”)来格式化、配置或解析页面。首页内容不应与页面内容一起显示,必须符合特定的格式规则。

GitLab的静态站点编辑器现在包括丰富的内容编辑体验,可以解析Markdown语法并以更熟悉的样式显示它。但是,前面的内容不是用于显示的,在此上下文中意外呈现,使用可视化编辑器编辑它可能会产生意想不到的结果。

GitLab 13.1隐藏了Markdown文件开头包含的任何YAML格式的首页内容,以防止任何混淆或意外的格式更改。前面的内容在原始源代码编辑器中保持可编辑状态,可通过切换静态站点编辑器右下角的编辑器模式进行编辑。

在Web IDE中使用Markdown内容时,可能需要向内容添加图像。在大多数编辑器中添加图像需要找到该图像,将其添加到目录结构,然后通过标记语法引用它。

Web IDE现在支持将图像直接粘贴到编辑窗口中。将图像复制到剪贴板,将光标放在Web IDE中希望图像显示的位置,然后粘贴。图像将自动上传到您的项目中,并在您的内容中进行适当的引用,大大加快了内容创建过程,降低了用户的复杂性。

现在,您可以在管线页面上按管线状态或标记名称进行过滤。使用过滤,查看特定标记的所有管道,或将管道列表缩小到特定管道状态(如失败或跳过)要容易得多。通过对现有过滤器选项的这些添加,精确定位您所需的管道比以往任何时候都更容易,并且节省了您一天中的时间。

GitLab现在支持实例级变量。通过这种设置全局变量的功能,您不再需要为所有项目重复手动输入相同的凭据。此MVC通过API引入对此功能的访问,此功能的下一次迭代将提供直接在UI中配置实例级变量的功能。

可能很难弄清楚如何使用新的规则关键字,特别是如果您以前只使用了/Except,因为这两者是根本不同的。默认情况下,Rules关键字创建合并请求管道,而只有/Except不会。

为了方便入门,并更快地进入您的第一条带有规则的绿色管道,我们添加了两个最常见的工作流:作为捆绑模板的规则配置。这些让你更容易让事情马上运转起来,让你把注意力集中在重要的事情上。

GitLab允许您定义管道作业工件,使其可以在GitLab UI中轻松浏览和下载。以前,您只能下载管道或作业的整个工件存档。

我们想让直接快速访问任何报告工件文件变得更快、更容易。这对于您可能希望下载以在其他工具中使用的安全扫描报告和代码质量报告特别有用。

在GitLab 13.1中,我们添加了对下载以下类型的单个工件报告的支持:

此功能对所有GitLab用户都可用。但是,工件报告类型在GitLab层之间有所不同。

现在,您可以从组安全仪表板下载包含组中所有项目检测到的漏洞的CSV文件。然后,该导出列表可用于创建遵从性报告或用作外部仪表板的数据源。这加入了从InstanceSecurity和Project Security仪表板导出报告的功能。

只需转到任何组安全仪表板并单击新的“导出”按钮即可。您的浏览器将自动开始下载。

秘密侦测已经从SAST的一个子功能提升到了它自己的一个类别。Secret Detection调查结果现在更加可见,显示在合并请求和管道安全选项卡中各自的部分中。现在,Secret Detection还将在安全配置页面上显示配置状态,并在项目安全控制面板中显示调查结果。

Secret Detection CI/CD配置设置现在在GitLab提供的单独模板中提供,并作为新的安全扫描类型运行。这个新的秘密检测模板现在也包含在Auto DevOps中。我们建议您实施此新模板,然后从SAST.gitlab-ci.yml文件中的SAST配置模板中删除旧的SAST Secrets-sast作业定义。我们制作了一段视频来指导您完成过渡到此新模板的过程。我们将在未来的GitLab版本中废弃旧的SAST秘密作业定义。

我们针对Kubernetes清单的静态应用程序安全扫描(SAST)分析器已更新,以支持Helm Charts。此更新还添加了对两个新环境变量的支持,用于自定义分析器设置:KUBESEC_HELM_CHARTS_PATH和KUBESEC_HELM_OPTIONS。

我们已经记录了一个使用Nginx的蓝绿色部署示例,它直接从.gitlab-ci.yml文件交换部署。如果您使用类似的配置,此示例将帮助您设置蓝绿色部署,并提供您可以为其他类型的应用程序自定义的指导。

每次管道出现故障时,您都会自动收到电子邮件通知。但是,当管道在失败后成功时,不会发送自动通知,这需要您手动检查管道的状态。在这个版本中,我们很高兴加入了@Jacopo-beschi的社区贡献,它解决了这个问题,如果管道在失败后成功,它会自动通知您。

更改您的基础架构始终是一项高风险的操作;应该始终对其进行监督、审计,并仅限于有权限的团队成员。我们在GitLab 13.0中引入了GitLab管理的Terraform状态,但有一个已知的限制:您需要提供个人访问令牌才能使用状态文件。此选项的伸缩性不佳。

从GitLab 13.1开始,我们使用代理用户的凭据扩展了自动生成的配置项令牌的范围。该令牌专为运行Terraform状态管理作业而设计,使您能够安全地运行Terraform作业管道,而无需任何其他设置。

审核警报的能力对于反馈和改进很重要,但在灭火过程中很少有时间记录您稍后需要的细节。在GitLab 13.1中,警报分配会添加到警报的系统备注中,以便您可以在事后审查中对其进行讨论。

我们已向Slake通知服务添加了命令,以便您可以将警报转发到Slake,通知响应者发生故障,并使响应者无需离开其中央通信平台即可开始协作。

响应者现在可以将警报分配给团队成员,以帮助组织触发的警报,将问题委托给特定团队成员进行调查。添加GitLab待办事项会告诉团队成员需要注意的事情。

公制面板在便于向下钻取时最有用。在GitLab 13.1中,您可以将自定义URL添加到指标仪表板中面板的更多操作菜单,将指标面板和仪表板与您的团队使用的其他指标仪表板和其他故障排除工具进行交叉链接。

GitLab 13.1现在支持指标仪表板以UTC为单位显示时间,使分散的团队成员能够共同查看相同的时间序列数据,而不管团队成员的物理位置如何。

在GitLab 13.1中,Omnibus GitLab用户在他们的自我监控项目中将有一个新的开箱即用的仪表板来监控他们的GitLab实例的健康状况。

随着容器网络策略的策略管理UI的首次发布,用户可以轻松地扫描其项目中部署的网络策略列表,并通过GitLab的UI启用或禁用这些策略。您可以在Security&;Compliance->;Threat Management->;策略中找到新的策略管理体验。

如果您曾经使用过搜索API,您可能已经注意到一些范围搜索是AVE

..