极狐GitLab 正式发布最新版本 17.6

沿袭我们的月度发布传统,极狐GitLab 发布了 17.6 版本,该版本带来了增强的合并请求审核者指派、在部署详情页面显示版本注释、在部署详情页面显示版本注释等几十个重点功能的改进。下面是部分重点功能的详细解读。

关于极狐GitLab 的安装升级,可以查看官方指导文档

  • 17.6 容器镜像
registry.gitlab.cn/omnibus/gitlab-jh:17.6.0-jh.0
  • 17.6 Helm Chart
helm search repo gitlab-jh
NAME                       CHART VERSION    APP VERSION    
gitlab-jh/gitlab           8.6.0            v17.6.0        
gitlab-jh/gitlab-runner    0.71.0           17.6.0         

极狐GitLab 17.6 重要改进

增强的合并请求审核者指派

标题 基础版 专业版 旗舰版
SaaS Y Y Y
私有化部署 Y Y Y

在你仔细完成变更并准备好合并请求后,下一步就是要确认一个能帮你将流程向前推进的审核者。确认合适的审核者涉及到多个因素,诸如需要了解谁才是正确的审核者以及谁是你变更代码的 CODEOWNER。

现在,当指派审核者时,侧边栏上就会为你的合并请求审核要求和审核者之间创建一个连接,从而方便查看每个审核规则,然后从满足审批规则要求的人员里面为你选择合适的审核人员。如果你在使用可选的 CODEOWNER 部分,这些规则也会显示在侧边栏中,以帮助你识别变更所属的 CODEOWNER。

增强的合并请求审核者指派功能是极狐GitLab 将智能化引入审核者指派的一个重大改进。此次迭代建立在我们从建议的审核者上所学到的内容,以及如何识别最好的代码审核者来将合并请求向前推进。在代码审核者指派即将到来的迭代中,我们将持续强化智能化推荐和可能的审核者排行榜。

在部署详情页面显示版本注释

标题 基础版 专业版 旗舰版
SaaS Y Y Y
私有化部署 Y Y Y

您是否也曾经有过疑问:在您被要求审批的部署当中究竟包含了些什么?在过去的版本中,可以创建一个关于变更内容和测试指南的详情页面,但是相关的环境部署却不会显示这些数据。我们很高兴地宣布,现在极狐GitLab 可以在相关部署详情页面的下方显示版本注释了。

因为极狐GitLab 版本通常是从某个 Git tag 创建的,因此版本注释仅在与 tag 触发的流水线相关的部署上显示。

强化 CI/CD 作业令牌等候列表的管理员设置

标题 基础版 专业版 旗舰版
SaaS
私有化部署 Y Y Y

之前,我们宣布默认的 CI/CD 作业令牌(CI_JOB_TOKEN)行为将在 18.0 发生变化,如果你想继续访问你的项目,就需要将单个项目或群组添加到项目作业令牌等候列表中。

现在,我们正在赋予私有化部署管理员在极狐GitLab 实例的所有项目上强制执行这种更安全设置的能力。当开启此设置后,如果所有项目需要用 CI/CD 作业令牌进行认证就需要使用它们的等候列表。注意:我们强烈建议将启用此设置作为强大安全策略的一部分。

追踪 CI/CD 作业令牌认证

标题 基础版 专业版 旗舰版
SaaS Y Y Y
私有化部署 Y Y Y

以前,很难追踪其他项目是否通过使用 CI/CD 作业令牌进行身份验证来访问您的项目。为了让你能够更加容易地对项目进行审计和访问控制,我们还增加了认证日志。

有了认证日志,你就可以查看那些已经使用作业令牌来对你的项目进行认证的列表了,此列表可以在 UI 上查看,也可以下载成 CSV 文件。

这些数据可以用来审计项目访问情况,并有助于填充作业令牌允许列表,从而加强对可以访问你所属项目的控制。

漏洞报告群组

标题 基础版 专业版 旗舰版
SaaS Y
私有化部署 Y

用户需要能够查看群组中漏洞。这将帮助安全分析师利用批量操作来优化他们的任务分类。此外,用户可以看到在他们的群组中有多少漏洞,即存在多少 OWASP Top 10 漏洞?

模型仓库已经正式可用

标题 基础版 专业版 旗舰版
SaaS Y Y Y
私有化部署 Y Y Y

极狐GitLab 的模型仓库现已正式可用!模型仓库作为极狐GitLab 工作流的一部分,是一个用来管理机器学习模型的集中式 Hub。你可以追踪模型版本、存储制品和元数据以及在模型卡片中维护详尽的文档。

为了构建无缝集成,模型仓库能够天然和 MLflow 客户端良好工作,而且能够直接连接到你的 CI/CD 流水线,让模型部署和测试自动化。数据科学家可以通过一个直观的 UI 或使用既有的 MLflow 工作流来管理模型,同时 MLOps 团队可以使用语义化版本控制和 CI/CD 集成,通过极狐GitLab API 来简化生产的部署。

在极狐GitLab 实例上通过部署 > 模型仓库开始使用此功能吧!

新的 SAST 和 DAST 安全扫描器的合规性检查

标题 基础版 专业版 旗舰版
SaaS Y
私有化部署 Y

极狐GitLab 提供了一系列的安全扫描器,诸如 SAST、密钥检测、依赖项扫描、容器镜像扫描以及其他的,以便你可以查看你的应用程序安全漏洞。

你需要有一种方法来向审计员和相关合规机构展示你的应用程序已经遵守了要求为代码库设置安全扫描器的监管标准。

为了帮助你展示对这些标准的遵守,此版本新增了两个新的检查,作为合规中心中标准合规性报告的一部分。这些新的检查会检查在群组内是否开启了 SAST 和 DAST。这些检查确认 SAST 和 DAST 安全扫描器能够在项目中正确运行,并且流水线结果具有正确的结果制品。

极狐GitLab 17.6 的其他改进

群组 webhook 的群组事件

标题 基础版 专业版 旗舰版
SaaS Y Y
私有化部署 Y Y

在此版本中,我们已经为群组 webhook 添加了项目事件。当以下事件发生的时候就会触发项目事件:

  • 群组中增加了项目。
  • 群组中删除了项目。

这些事件仅针对群组 webhook 进行触发。

在任意 CI/CD 作业中部署 Pages 站点

标题 基础版 专业版 旗舰版
SaaS Y Y Y
私有化部署 Y Y Y

为了给你的流水线设计提供更多灵活性,你无需将你的 Pages 部署作业命名为 pages。现在你只需要在任意 CI/CD 作业中使用 pages属性就可以触发 Pages 的部署了

极狐GitLab Runner 17.6

标题 基础版 专业版 旗舰版
SaaS Y Y Y
私有化部署 Y Y Y

我们还发布了极狐GitLab Runner 17.5。极狐GitLab Runner 是一个轻量级、高扩展的代理,用来运行你的 CI/CD 作业并且将结果发送回极狐GitLab 实例。极狐GitLab Runner 和极狐GitLab CI/CD 绑定在一起,而极狐GitLab CI/CD 是一个开源且内置在极狐GitLab 里面的服务。

修复的缺陷:

  • 在极狐GitLab Runner 17.5.0 中,pod 变得无法 attach。
  • 当安装 fleeting 插件时,Runner 出现错误 exec format error并崩溃。
  • 开启了 cgroup v2 的 Kubernetes 执行器在发生 OOMKilled 的时候被挂起。
  • 当使用配置模板注册 Runner 时未使用 Runner 的默认配置。
  • 在使用 exec 模式时,极狐GitLab Runner 会在轮询期间等待 Kubernetes Pod 变成 attach。
  • 当开启 FF_GIT_URLS_WITHOUT_TOKENS功能开关时会出现认证错误。

macOS Sequoia 15 and Xcode 16 作业镜像

标题 基础版 专业版 旗舰版
SaaS Y Y
私有化部署

现在,你可以使用 macOS Sequoia 15 和 Xcode 16 来为最新一代的苹果设备创建、测试和部署应用程序。极狐GitLab 托管的 macOS runner 能够帮助你的研发团队在一个安全、和极狐GitLab CI/CD 集成的按需构建环境上更快速地构建和部署 macOS 应用程序。

在 .gitlab-ci.yml中使用 macos-15-xcode-16镜像就可以开启使用了。

在 CI/CD 作业中为某个环境选择极狐GitLab 代理

标题 基础版 专业版 旗舰版
SaaS Y Y Y
私有化部署 Y Y Y

为了使用 Kubernetes 仪表盘,你需要从环境设置中为 Kubernetes 连接选择一个代理。直到现在,你仅可以从 UI 或者通过 API(从极狐GitLab 17.5)来选择代理。在极狐GitLab 17.6 中,你可以用 environment.kubernetes.agent语法来配置代理连接。

在项目中通过 API 开启密钥推送保护

标题 基础版 专业版 旗舰版
SaaS Y
私有化部署 Y

现在,以编程方式开启密钥推送保护变得更加容易。我们已经更新了应用程序设置的 REST API,以允许你:1. 在私有化部署实例上开启此功能以便它可以在每个项目上都能被开启。2. 检查该功能在项目上是否被开启。3. 为某个特定项目开启此功能。

在 CycloneDX SBOM 支持许可证数据

标题 基础版 专业版 旗舰版
SaaS Y
私有化部署 Y

现在,许可证扫描器已经有能力从包含支持的软件包类型的 CycloneDX SBOM 中消费依赖项的许可证了。

在这种情况下,如果 CycloneDX SBOM 中存在 license字段,用户就能够从他们的 SBOM 中看到许可证数据。如果 SBOM 中缺少许可证信息,那么我们就会从许可证数据库中提高该信息。

针对特权操作的审计事件

标题 基础版 专业版 旗舰版
SaaS
私有化部署 Y Y Y

现在有额外的审计事件用于记录与特权设置相关的管理员操作。这些设置的变更记录通过提供审计追踪的方式来提高安全性。

来自新位置的登录电子邮件中包含更多信息

标题 基础版 专业版 旗舰版
SaaS
私有化部署 Y Y Y

当检测到在新位置登录时,极狐GitLab 可以选择性地发送一封电子邮件。之前,此邮件只包含 IP 地址,这很难确认准确位置。现在,该邮件会包含城市和国家的地理位置信息。

服务账户徽章

标题 基础版 专业版 旗舰版
SaaS Y Y
私有化部署 Y Y

现在,服务账号有了专门的徽章,而且能够在用户列表中很轻易地就识别它们。之前,那些账号仅有 bot徽章,这让和群组、项目访问令牌之间的识别变得异常困难。

从视图中更容易地移除关闭的条目

标题 基础版 专业版 旗舰版
SaaS Y Y Y
私有化部署 Y Y Y

现在你可以通过关闭展示关闭条目开关来从被链接的的或者子条目列表中隐藏掉已关闭的条目。通过这个新增功能,你可以更好地控制你的视图,并在减少复杂项目中视觉混乱的同时专注于活跃的工作。

在设定的日期和时间合并

标题 基础版 专业版 旗舰版
SaaS Y Y Y
私有化部署 Y Y Y

有些合并请求或许需要在某个特定的日期或者时间之后进行合并。当过了那个时间后,你需要找到有权限的人来进行合并,而且还得期望他们能够给你很好的处理这些合并请求。如果这发生在非工作时间或者关键的时间线,你可能需要提前很久就要为这项工作做好准备。

现在,当你创建或编辑合并请求时,你可以指定 merge after日期。此日期将被用来阻止合并请求被合并,直到过了该规定日期。将此功能和我们之前发布的自动化合并改进功能一起使用,将为你的合并请求操作提供更多的灵活性。

JaCoCo 测试覆盖率可视化现已正式可用

标题 基础版 专业版 旗舰版
SaaS Y Y Y
私有化部署 Y Y Y

现在你可以在合并请求差异视图中直接看到 JaCoCo 测试覆盖率。此视图能够让你快速识别哪些代码行被测试用例覆盖到了,哪些行还需要被测试用例覆盖到才能进行合并。

glab agent command 命令增加了对自定义值的支持

标题 基础版 专业版 旗舰版
SaaS Y Y Y
私有化部署 Y Y Y

在上一个版本中,我们为极狐GitLab 命令行工具增加了更容易的代理启动功能。该版本进一步改善了 glab cluster agent bootstrap 命令,增加了对于自定义 Helm 值的支持。你可以使用 --helm-release-values和 --helm-release-values-from标志来自定义生成的 HelmRelease资源。

使用 EPSS 进行高效的风险优先级排序

标题 基础版 专业版 旗舰版
SaaS Y
私有化部署 Y

在极狐GitLab 17.6 中,我们增加了对于漏洞利用预测评分系统(EPSS)的支持。EPSS 给每一个 CVE 打一个 0~1 之间的分值,以显示该 CVE 在未来 30 天被利用的可能性。你可以利用 EPSS 来更好的优先排序扫描结果,而且能够帮助你对环境上安全漏洞的潜在风险进行评估。

组成成分分析用户可以通过 GraphQL 获得这些数据。

密钥推送保护使用例外时的审计事件

标题 基础版 专业版 旗舰版
SaaS Y
私有化部署 Y

现在,当密钥推送保护例外被应用的时候,就会记录审计事件。这使得安全团队能够审计和跟踪任何当项目排除列表中的秘密被允许推送时的情况。

阻止对群组受保护分支的修改

标题 基础版 专业版 旗舰版
SaaS Y
私有化部署 Y

当合并请求批准策略配置为防止群组分支修改时,策略就需要考虑为群组配置的受保护分支。此项设置能够确保顶级群组的分支保护不可以被取消保护。受保护分支能够限制一些特定的操作,比如删除分支以及强制推送到分支。你可以通过新的 approval_settings.block_group_branch_modification属性覆盖这种行为,并为特定的顶级群组声明例外,以允许群组所有者在必要时临时修改受保护分支。

此项新的项目覆盖设置确保了群组受保护分支设置不能给修改以规避安全和合规要求,并确保更稳定地执行受保护分支。

独立禁用 OTP 认证器和 WebAuth 设备

标题 基础版 专业版 旗舰版
SaaS Y Y Y
私有化部署 Y Y Y

现在单独或者同时禁止 OTP 认证器或 WebAuth 设备已经变得可行。之前,如果你禁用了 OTP 认证器,WebAuth 设备也会被禁用。因为现在两者的操作是独立的,这就让针对这些认证方法的管控更细粒度。

当合并请求被合并时生成新的审计事件

标题 基础版 专业版 旗舰版
SaaS Y
私有化部署 Y

在此版本中,当合并请求被合并时,会生成一个新的且名为 merge_request_merged的审计事件,该审计事件会包含关于合并请求的一些关键信息,包括:

  • 合并请求的标题
  • 合并请求的描述或总结
  • 合并需要多少审核
  • 合并已经被赋予了多少审核
  • 哪个用户批准了该合并请求
  • 提交中是否批准了合并请求
  • 合并的日期/时间
  • 从提交历史获取的 SHA 列表

顶级群组拥有者可以创建服务账号

标题 基础版 专业版 旗舰版
SaaS
私有化部署 Y Y Y

当前只有管理员可以在私有化部署实例上创建服务账号。现在,有了一个允许顶级群组拥有者创建服务账号的可选设置。这可以让管理员选择是否希望允许更广泛的角色创建服务账户,或者将其保留为仅管理员任务。

使用 API 获取令牌信息

标题 基础版 专业版 旗舰版
SaaS
私有化部署 Y Y Y

管理员可以使用心得令牌信息 API 来获取个人访问令牌、部署令牌以及 feed 令牌信息。不像其他能够暴露令牌信息的 API,此端点允许管理员获取令牌信息但是却无法获知令牌的类型。

相关阅读

本文由博客群发一文多发等运营工具平台 OpenWrite 发布

posted @ 2024-11-26 11:59  极狐GitLab  阅读(73)  评论(0编辑  收藏  举报