沿袭我们的月度发布传统,极狐GitLab 发布了 17.7 版本,该版本带来了通过特定 MR Label 实现 Mono 场景下多仓 MR 的关联(JH-only)、新的计划者用户角色、在 UI 上轮换个人、项目及群组访问令牌等几十个重点功能的改进。下面是部分重点功能的详细解读。
关于极狐GitLab 的安装升级,可以查看官方指导文档。
registry.gitlab.cn/omnibus/gitlab-jh:17.7.0-jh.0
helm search repo gitlab-jh
NAME CHART VERSION APP VERSION
gitlab-jh/gitlab 8.7.0 v17.7.0
gitlab-jh/gitlab-runner 0.72.0 17.7.0
|
|
|
|
|
|
|
|
|
|
|
|
在通过 Mono 工具进行多仓 MR 关联时,我们不再要求这些 MR 的源分支名必须相同。用户可以自由创建任意名称的源分支,当需要把这些源分支作为相关联的 MR 推送至各自的仓库时,用户只需在执行mono upload
命令时指定参数-o topic=<TOPIC_NAME>
,此命令创建的 MR 会自动加上topic::<TOPIC_NAME>
的 label 并借此而关联起来。用户还可以在 GitLab UI 上手动为某个 MR 删除 topic label 以取消关联关系,也可以为某个原本没有这个 label 的 MR 手动加上这个 label 以自动关联此 MR。
|
|
|
|
|
|
|
|
|
|
|
|
我们引入了一个新的计划者角色以给予你对敏捷计划工具的定制化访问能力,诸如史诗、路线图和看板等,整个过程不会导致权限的过度赋予。此项变更能够让你在保证安全工作流并且实践最小权限原则时还能更高效的协作。
|
|
|
|
|
|
|
|
|
|
|
|
现在,实例管理员可以通过配置允许列表来控制哪些集成可以被启用。如果配置的允许列表为空,则说明实例上不允许任何集成。配置允许列表后,新的极狐GitLab 集成不会默认包含在允许列表中。
之前启用的集成如果后来被允许列表设置阻止,将会被禁用。如果这些集成再次被允许,它们将使用现有的配置重新启用。
|
|
|
|
|
|
|
|
|
|
|
|
现在,当您通过直接转移在极狐GitLab/GitLab 实例间进行迁移时,您就会看到新的用户贡献和成员关系映射信息。此项功能为管理导入进程和接收贡献重新分配的用户提供了更高的灵活性,您可以:
导入完成后,您可以在目标实例上为既有用户重新分配成员管理和贡献。任何您导入的成员关系和贡献首先会和“占位符”用户进行映射。所有贡献在您在目标实例上重新分配它们之前,都与占位符相关联。
在源和目标实例上,为具有不同邮箱地址的用户映射成员关系和贡献。
当您在目标实例上为用户重新分配贡献时,这些用户可以接受或者拒绝重新分配。
|
|
|
|
|
|
|
|
|
|
|
|
极狐GitLab 的安全扫描功能能够帮助您识别您应用程序代码中的已知漏洞和潜在风险。扫描功能分支可以发现新的弱点或漏洞,以便在合并前进行修复。如果漏洞已经存在于您项目的默认分支上,在功能分支上修复这些漏洞之后,当下次在默认分支上运行安全扫描时,这些安全漏洞将不再被进行扫描。虽然了解哪些漏洞不再被检测到是有帮助的,但每个漏洞仍需要手动标记为“已解决”才能关闭它们。如果需要解决的漏洞有很多,则这种方式会很耗时,即使当您使用新的活动过滤器和批量修改状态功能。
对于那些想要将漏洞自动设置为已解决,且不再通过自动扫描对其进行扫描的用户来说,极狐GitLab 引入了一个新的策略类型漏洞管理策略。只需配置一个带有新自动解决选项的新策略,并将其应用到适当的项目中。您甚至可以为特定安全扫描器中特定安全等级的自动解决漏洞设置此新的策略。一旦配置,当下次扫描项目的默认分支时,任何不再被发现的现有漏洞将被标记为“已解决”。该操作会用活动笔记更新漏洞记录,记录操作发生的时间戳,以及确定漏洞被移除的流水线。
|
|
|
|
|
|
|
|
|
|
|
|
现在,您可以使用 UI 来对个人、项目或群组访问令牌进行轮换。之前,您必须使用 API 实现此功能。
|
|
|
|
|
|
|
|
|
|
|
|
DevOps 团队通常需要追踪他们的 CI/CD 组件在各个流水线中的使用情况,以更好地管理和优化它们。没有可见性,对于识别使用过期组件、理解采用率或支持组件生命周期来说是非常有挑战性的。
为了解决此问题,我们新增了一个新的 GraphQL 查询,使 DevOps 团队能够查看组织内流水线中使用某个组件的项目列表。此项能力能够赋能 DevOps 团队提高生产力,且通过提供的洞察来更好的做决策。
|
|
|
|
|
|
|
|
|
|
|
|
在此版本中,我们引入了设置默认编辑器的能力,以提供更个性化的编辑体验。有了此变更,您可以在富文本编辑器、纯文本编辑器之间选择,或者不选择默认编辑器,这为您在创建和编辑内容时提供了更多的灵活性。
这次更新通过将编辑器界面与个人偏好或团队标准对齐,确保了更流畅的工作流程。通过这次增强,GitLab 继续为所有用户优先考虑定制化和易用性。
|
|
|
|
|
|
|
|
|
|
|
|
为了使用 Kubernetes 仪表盘,您需要从环境设置中选择一个 Kubernetes 代理链接,并选择性地配置命名空间和 Flux 资源来追踪调谐状态。在极狐GitLab 17.6 中,我们增加了对选择具有CI/CD配置的代理的支持。然而,配置命名空间和 Flux 资源依旧需要您使用 UI 或调用 API。在极狐GitLab 17.7 中,您可以使用 CI/CD 语法 environment.kubernetes.namespace
和 environment.kubernetes.flux_resource_path
属性来配置仪表盘。
|
|
|
|
|
|
|
|
|
|
|
|
在极狐GitLab 17.7 中,我们增加了对了已经暴漏漏洞目录(KEV)的支持。KEV 目录用 CISA 维护并制作了漏洞被利用的 CVE 列表。您可以利用 KEV 来对扫描结果进行更好的优先级排序,并帮助您对环境上的潜在漏洞影响进行评估。
组件分析用户可以通过 GraphQL 使用这些数据。我们还计划在极狐GitLab UI 上展示这些数据。
|
|
|
|
|
|
|
|
|
|
|
|
高级 SAST 代码流视图在漏洞显示的地方可用,包括:
此视图在 JihuLab.com 上启用。但是在私有化部署实例上,默认情况下,新视图在 17.7(合并请求变更视图)和 17.6(所有视图)上可用。对于支持版本和功能标志的更多详情,可以查看代码流功能可用性。
|
|
|
|
|
|
|
|
|
|
|
|
之前,令牌过期邮件通知仅在过期前 7 天发送。现在,这些邮件可以在过期前 30、60 天发送。增加的通知发送频率和日期范围让用户能够更好的注意到令牌的过期。
|
|
|
|
|
|
|
|
|
|
|
|
我们为群组和项目的合规中心用户体验做了重要改进。
在极狐GitLab 17.7 中,我们做了两个重要改进:
现在,用户可以在合规中心的项目标签中按组进行筛选,这为用户提供了另一种选择,以便应用、筛选和搜索适当的项目以及附加在该项目上的合规框架。
现在,项目的合规中心有一个 框架 选项卡,可以允许对附着在特定项目上的合规框架进行查找。
请注意,添加或编辑框架依旧只能在群组上进行,而不是项目上。
|
|
|
|
|
|
|
|
|
|
|
|
由于一个缺陷,极狐GitLab 17.6 及之前的 FIPS Linux 软件包不能够使用系统 Libgcrypt,但是相同的 Libgcrypt 却被打包进常规的 Linux 软件包中。
此问题已经在 17.7 中为所有的 FIPS Linux 软件包进行了修复,除了 AmazonLinux 2。AmazonLinux 2 的 Libgcrypt 版本与 FIPS Linux 软件包中提供的 GPGME 和 GnuPG 版本不兼容。
AmazonLinux 2 的 FIPS Linux 软件包将依旧使用常规 Linux 软件包中捆绑的 Libgcrypt,否则我们就不得不下载 GPGME 和 GnuPG 。
|
|
|
|
|
|
|
|
|
|
|
|
在之前的极狐GitLab 版本中,emoji 支持仅限于旧版的 Unicode 标准,也就意味着一些新的 emoji 无法使用。
极狐GitLab 17.7 引入了对于 Unicode 15.1 的支持,带来了最新的 emoji 支持。这包括霸王龙 🦖, 酸橙 🍋🟩, 以及 凤凰 🐦🔥,这能够让你使用最新的符号来表达您的意愿。
此外,此项更新强化了 emoji 的多样性,确保在不同文化、语言和身份之间实现更大的代表性,帮助每个人在平台上交流时都感到被包容。
|
|
|
|
|
|
|
|
|
|
|
|
此版本增加了对于 Kubernets 1.31 版本的支持,该版本发布于 2024 年八月。如果您的应用部署在Kubernetes 上,现在您可以将您的 Kubernetes 集群升级到最新支持的版本并使用所有的功能。
更多详情,可以查看我们的 Kubernetes 支持策略和其他支持的 Kubernetes 版本。
environment.action:access
和 prepare
以重置 auto_stop_in
计时器
|
|
|
|
|
|
|
|
|
|
|
|
之前,当和 auto_stop_in
设置一起使用 action:prepare
、action:verify
和 action:access
时,计时器将不会被重置。从 18.0 开始,action:prepare
和 action:access
将重置计时器,而 action:verify
将不会重置。
现在,您可以通过启用 prevent_blocking_non_deployment_jobs
功能标志来实现此功能。
多个重要变更的目的是为了区分 environment.action: prepare | verify | access
的行为。environment.action:access
关键字将保留当前的行为,除了重启计时器之外。
为了防止将来的兼容性问题,您应该审核这些关键字的使用。
|
|
|
|
|
|
|
|
|
|
|
|
在此版本中,可以通过 REST API 和 GraphQL API 在群组的所有项目上启用密钥推送保护功能。这能够让你在群组上开启密钥保护功能而不是在项目上一个个启用。每次启用或禁用推送保护功能时都会有审计事件记录。
|
|
|
|
|
|
|
|
|
|
|
|
我们更新了高级 SAST 以更精确地检测如下漏洞:
我们还改进了对C#(ASP.NET)和Java(JSF, HttpServlet)用户输入源的检测,并更新了严重性等级以保持一致性。
如要查看高级 SAST 可以检测的每种语言中的安全漏洞类型,可以查看高级 SAST 覆盖。要使用此功能进行跨文件、跨函数扫描,可以启用高级 SAST。如果您已经启用了高级 SAST,新的规则会自动被激活。
|
|
|
|
|
|
|
|
|
|
|
|
现在可以在 JihuLab.com 的凭据清单上看到群组和项目访问令牌了。之前,仅能看到个人访问令牌和 SSH key。清单中额外的令牌类型可以更全面地了解整个组织中的凭据情况。
|
|
|
|
|
|
|
|
|
|
|
|
现在,群组拥有者可以使用专属的 API 端点来列举企业用户及相关联的属性。
|
|
|
|
|
|
|
|
|
|
|
|
当创建个人、项目、群组或模仿访问令牌时,现在,您可以选择性地输入令牌的描述。这为令牌提供了额外文本,比如在哪儿、如何使用的。
|
|
|
|
|
|
|
|
|
|
|
|
在创建自定义角色时,不再提供所有者(Owner)基础角色,因为它没有提供额外的价值,因为权限是累加的。已有的自定义角色中包含所有者基础角色的,不受这一变化影响。