沿袭我们的月度发布传统,极狐GitLab 发布了 17.10 版本,该版本带来了新的议题外观(Beta)、更改漏洞的严重等级、在分支规则中配置压缩设置、软件包仓库新增审计事件等几十个重点功能的改进。下面是部分重点功能的详细解读。
关于极狐GitLab 的安装升级,可以查看官方指导文档。
17.10 容器镜像
registry.gitlab.cn/omnibus/gitlab-jh:17.10.0-jh.0
17.10 Helm Chart
helm search repo gitlab-jh
NAME CHART VERSION APP VERSION
gitlab-jh/gitlab 8.10.0 v17.10.0
gitlab-jh/gitlab-runner 0.75.0 17.10.0
|
|
|
|
|
|
|
|
|
|
|
|
之前,追踪并了解极狐GitLab 中正在进行的工作需要导航到多个位置,这降低了团队的效率而且消耗宝贵的时间。
此版本引入了极狐GitLab 查询语言(GLQL)视图(处于 Beta),能够让您直接在您现有的工作流中创建动态的、实时的工作追踪。
GLQL 视图在整个 Wiki 页面、史诗描述、议题评论和合并请求中以 Markdown 代码块的方式内嵌了动态数据查询。
之前此功能处于实验阶段,GLQL 视图现在到了 Beta 阶段,支持使用逻辑表达式和运算符对关键字段进行复杂的过滤,诸如指派人、作者、标签和里程碑。您还可以自定义您视图的表现形式——图标或列表,以控制要展现哪些字段,并设置结果限制以便让创建的视图更加聚焦、为团队提供更可行的洞察。
现在团队可以在访问所需的信息(达成共识、改善协作)时还能保持上下文,而这一切都无需离开当前的工作流。
|
|
|
|
|
|
|
|
|
|
|
|
极狐GitLab Flavored Markdown 增加了一些很棒的改进:
+s
),可以更轻松地浏览内容。+
符号)。include
语法来组织内容。
这些改进使得极狐GitLab Flavored Markdown 对于创建和维护文档的团队来说更加强大,同时在内容的呈现和组织方式上提供了更大的灵活性。
|
|
|
|
|
|
|
|
|
|
|
|
我们非常高兴地推出基于 DORA 指标的项目面板,这是价值流仪表盘的一项新功能。 此表会列出顶级群组中所有项目的 DORA 指标。经理可以使用此表来识别高、中、低性能的项目。此信息还能够帮助进行数据驱动的决策、更高效地分配资源以及更加聚焦在软件的快速、稳定和可靠交付上。
DORA 指标在极狐GitLab 中是开箱即用的,现在和 DORA 性能评分面板一起,让您对组织的 DevOps 健康又一个完成、彻底的视图。
|
|
|
|
|
|
|
|
|
|
|
|
现在,议题和史诗、任务共享一个通用的框架,功能是实时更新而且做了一些工作流改进:
/set_parent
, /remove_parent
, /add_child
, 和 /remove_child
。
|
|
|
|
|
|
|
|
|
|
|
|
现在您可以简化您的工作流并通过为工作项(史诗、任务、目标和关键结果)使用描述模板来实现跨项目的一致性。
此强有力的更新允许您创建标准化的模板,从而帮助您节约时间并确保每当您创建新的工作项时,关键信息都会包含在其中。
|
|
|
|
|
|
|
|
|
|
|
|
当处理漏洞时,您可以根据组织的独特安全环境和风险承受能力来灵活调整漏洞的严重等级。直到现在,您都不得不依赖安全扫描器为漏洞指派的默认严重等级,这就无法准确反映针对您特定环境的安全风险。
现在,您可以后动更改特定漏洞的严重等级以便更好地满足组织的安全需要。这能够允许您:
所有的严重等级更改都可以在漏洞历史和审计事件中进行追踪,而且仅可以被具有项目维护者角色或具有 admin_vulnerability
权限的自定义角色的用户所覆盖。此功能能够让安全团队在漏洞优先级的管理上更加具有灵活性。
|
|
|
|
|
|
|
|
|
|
|
|
现在您可以使用我们改进后的批量编辑功能来高效管理您的待办事项。选择多个待办事项,然后一次性将它们标记为已完成或设置为稍后提醒,让你能更好地掌控自己的任务,并且能更轻松地帮助你保持工作的条理性。
|
|
|
|
|
|
|
|
|
|
|
|
现在,您可以在您的待办事项中推迟通知了,这能够允许您临时隐藏一些项然后聚焦在当前最重要的事项上面。无论你是需要一个小时来集中精力,还是想在明天再处理一项任务,你都能精准地控制通知再次出现的时间,这有助于你更高效地管理工作流程。
|
|
|
|
|
|
|
|
|
|
|
|
现在,您可以通过编码来使用访问令牌对私有极狐GitLab Pages 站点进行认证,这让 Page 的自动化交互变得更加容易。之前,访问受限制的 Pages 站点需要通过极狐GitLab UI 进行交互认证。
此强有力的功能能够在保持安全的同时提升生产力,同时能够为开发者和私有 Pages 内容进行交互时提供更多灵活性。
|
|
|
|
|
|
|
|
|
|
|
|
不同的 Git 工作流需要不同的策略来在分支合并时处理提交。在之前的版本中,对于在合并时提交是否应被压缩以及压缩的严格程度,你只能设置单一的策略。 这种设置可能容易出错,或者要求开发人员针对不同的分支目标做出特定选择,以遵循项目的规范。
现在,你可以通过分支规则来为每个受保护分支配置压缩设置。比如,你可以:
feature
分支合并到 develop
分支时,为了提交历史的整洁,你可以要求对提交进行压缩。feature
分支合并到 develop
分支时,为了提交历史的完整性,你可以禁用对提交进行压缩。
此灵活性能够确保跨项目时的提交历史一致性,同时还能满足你工作流中针对每个分支的特定需求,而这一切都需要开发者的手动干预。
|
|
|
|
|
|
|
|
|
|
|
|
当团队配置 CODEOWNERS
时,通常会包含针对路径和文件类型的宽泛匹配模式。 如果您的文档、自动化构建文件或其他匹配无法要求指定的 Code Owner 时,这种宽泛的配置就会出现问题。
现在,你可以使用路径排除来配置 CODEOWNERS
以忽略特定路径。当你想要从所需的 Code Owner 审批中排除特定文件或路径时,这是非常有帮助的。
|
|
|
|
|
|
|
|
|
|
|
|
现在,极狐GitLab 依赖代理容器镜像已经支持与 Docker Hub 进行认证,这能够帮你避免由于速率限制导致的流水线失败,而且能够让你访问私有镜像。
从 2025年 4 月 1 日开始,针对未授权用户,Dockerhub 将将实施更严格的拉取限制(每个 IP 地址 10 次拉取)。没有授权的话,一旦达到这些限制,你的流水线就将失败。
在此版本中,你可以使用你的 Docker Hub 凭据、个人访问令牌或组织访问令牌来通过 GraphQL API 进行 Docker Hub 认证。我们将在极狐GitLab 17.11 中支持在 UI 上进行相关操作。
|
|
|
|
|
|
|
|
|
|
|
|
依赖扫描已经增加了对于 pub(Dart 的官方软件包管理器)的支持。对于此功能的支持,我们已经添加到了我们依赖扫描的最新模板和 CI/CD 组件中。
|
|
|
|
|
|
|
|
|
|
|
|
当将极狐GitLab 用作 OIDC 提供商时,现在你可以使用 id_token_expiration
属性来配置 ID 令牌的持续时长了。之前,ID 令牌的过期时长是固定的(120秒)。
|
|
|
|
|
|
|
|
|
|
|
|
现在,极狐GitLab 管理员可以使用一个统一的 API 来识别和撤销令牌。之前,管理员不得不使用与特定类型的令牌相关联的端点。此 API 能够撤销令牌而无关类型。
|
|
|
|
|
|
|
|
|
|
|
|
用户可以在极狐GitLab 合规中心中设置默认的合规框架,此合规框架将应用于群组中的所有项目(新建的和导入的)。默认合规框架有一个 默认 标签以帮助用户进行识别。
为了更容易地将合规框架设置为默认合规框架,我们引入了一个新功能,能够让用户在顶级群组的合规框架中心的合规页面下拉菜单中选择默认的合规框架。此功能在子群组或项目的合规中心中不可用。
|
|
|
|
|
|
|
|
|
|
|
|
之前,访问令牌的过期通知邮件仅发送给令牌要过期的群组或项目的直接成员。现在,这些通知还会发送给群组和项目的继承成员(如果设置启用的话)。更广泛的分发能够在令牌过期前更容易地管理令牌。
|
|
|
|
|
|
|
|
|
|
|
|
我们很高兴地宣布对您的工作中的项目概览做了重大改进,设计的目的是帮你无缝发现并访问你的项目。此次更新引入了一个更直观的基于选项卡的导航系统,它能更好地反映用户与他们的项目之间的交互方式。
进一步地,如果你有合适的权限,现在你就可以从 你的工作 的项目概览中直接编辑或删除项目。这些变更反映了我们的宗旨——为用户创建更高效、更友好的极狐GitLab 体验。新的布局能够让你聚焦在对于工作最重要的项目上,从而减少你在不同的项目策略间来回导航而花费的时间。
|
|
|
|
|
|
|
|
|
|
|
|
在此版本中,用户贡献映射现在支持通过使用 CSV 文件来进行批量重新指派。如果你有大量用户基数(有很多占位用户),则具有所有者角色的群组成员可以:
这种方法消除了通过用户界面进行的繁琐的手动重新分配操作。 为了进一步简化大型迁移过程,基于 CSV 的重新分配现已支持通过 API 来操作。
|
|
|
|
|
|
|
|
|
|
|
|
之前,当你导入群组或项目时,你是看不到占位用户是什么时候创建的。在此版本中,我们增加了时间戳,所以你可以追踪迁移的进度而且能够对发生的任何问题进行故障排查。
|
|
|
|
|
|
|
|
|
|
|
|
当浏览仓库历史时,可能会有一些与重要变更相关性不是很大的提交。这可能发生在以下情况中:
当你使用 blame
查看整个项目历史时,这些变更让理解变更变得更加困难。Git 支持在你的项目中使用 .git-blame-ignore-revs
来识别这些变更。现在,极狐GitLab 允许你在 “Blame 偏好设置” 下拉菜单中通过开关控制 blame 视图,以展示或隐藏特定的修订(revisions),这让理解项目的历史变得更加容易。
|
|
|
|
|
|
|
|
|
|
|
|
我们还发布了极狐GitLab Runner 17.10。极狐GitLab Runner 是一个轻量级、高扩展的代理,用来运行你的 CI/CD 作业并且将结果发送回极狐GitLab 实例。极狐GitLab Runner 和极狐GitLab CI/CD 绑定在一起,而极狐GitLab CI/CD 是一个开源且内置在极狐GitLab 里面的服务。
新特性:
修复的缺陷:
/opt/step-runner
选项的无效卷说明,导致 Windows gitlab-runner-helper
镜像失败git submodule update --remote
狐返回错误
|
|
|
|
|
|
|
|
|
|
|
|
现在,软件包仓库的操作会记录为审计事件,这可以让团队追踪软件包是什么时候发布或删除的以满足合规需求。
在此前的版本中,没有内置的方法来追踪谁发布软件包或对软件包做了变更。团队不得不创建他们自己的追踪系统或手动记录软件包的变更用以维护这些活动的日志。现在,每个审计事件都会展示谁做了变更、什么时候做了变更、他们是如何被认证的以及精确到做了什么变更。
项目的审计事件要么存储在群组组命名空间中,要么对于单个项目的所有者而言,存储在项目自身当中。 群组可以关闭审计事件来管理所需存储。
needs
声明
|
|
|
|
|
|
|
|
|
|
|
|
为了加强对流水线执行的控制,在 .pipeline-policy-pre
保留阶段中强制执行的作业,现在要求必须在后续阶段的作业开始之前完成,无论该作业是否定义了任何依赖需求声明。 之前,在 .pipeline-policy-pre
阶段定义的作业以及后续带有 needs
声明的流水线中的作业,都会在流水线一执行时就同时启动。有了这项改进,后续阶段的作业必须等待 .pipeline-policy-pre
阶段完成后,才能启动其他没有依赖关系的作业,这有助于你强制实现有序执行,并确保符合安全策略。
我们的客户依赖保留阶段来在开发者作业运行前强制执行合规和安全检查。一个常见的场景就是强制安全和合规检查能够让整流水线失败(入股检查未通过的话)。
允许作业无序运行可能会绕过这种强制规定,从而削弱策略的意图。这项改进为你提供了一种更加一致的方式来执行合规性要求。 为了在流水线开始时插入作业,同时又不覆盖 needs
行为,可以利用我们在 17.9 版本中引入的新的自定义阶段功能,将这些作业配置为使用自定义阶段。
|
|
|
|
|
|
|
|
|
|
|
|
现在,你可以在项目或群组访问令牌过期前 60 天和 30 天来触发 webhook。之前,这些 webhook 仅在过期前 7 天被触发。这是一项可选设置,它与现有的令牌即将过期的电子邮件通知安排相匹配。
|
|
|
|
|
|
|
|
|
|
|
|
现在,你可将 OmniAuth 身份识别提供商(IdP)的组织和主题个人资料属性映射到用户的极狐GitLab 个人资料。这能够让 IdP 成为这些属性的单一可信源,而且用户也无法更改它们。
|
|
|
|
|
|
|
|
|
|
|
|
现在,你可以在凭据清单中通过所有者、创建日期和最后使用日期来对个人、项目和群组访问令牌进行排序。
|
|
|
|
|
|
|
|
|
|
|
|
我们已经改进了项目创建权限的设置以让它们更清晰、易懂,且和我们的安全准则保持一致。改进的设置包括:
这些变更能够让你更加容易地了解和配置群组内哪些角色可以创建项目,而且能够帮助管理员更有自信地强制执行合适的访问控制。