- 自动 DevOps
- Runner
- 产物
- 归档作业
- 默认保护 CI/CD 变量
- 最大包含数量
- 最大下游流水线触发率
- 默认 CI/CD 配置文件
- 设置 CI/CD 限制
- 作业令牌权限
- 作业日志
- 禁用流水线建议横幅
- 禁用从 Jenkins 迁移横幅
- 软件包注册表配置
- 必需的流水线配置(已弃用)
{{< details >}}
- Tier: 基础版, 专业版, 旗舰版
- Offering: 私有化部署
{{< /details >}}
管理员 区域有与 CI/CD 相关功能的实例设置,包括 runner、作业产物和软件包注册表。
自动 DevOps
要为所有项目启用(或禁用)自动 DevOps:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 勾选(或取消勾选以禁用)框,选择 默认使用自动 DevOps 流水线用于所有项目。
- 可选地,设置 自动 DevOps 基础域,用于自动部署和自动审查应用。
- 选择 保存更改 以使更改生效。
每个现有项目和新创建的项目如果没有 .gitlab-ci.yml
,将使用自动 DevOps 流水线。
Runner
为新项目启用实例 Runner
您可以设置所有新项目默认可用实例 Runner。
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 持续集成和部署。
- 选择 启用新项目的实例 Runner 复选框。
每次创建新项目时,实例 Runner 都可用。
为实例 Runner 添加信息
要在所有项目的 runner 设置中显示实例 runner 的详细信息:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 持续集成和部署。
- 在 实例 runner 详细信息 字段中输入文本,包括 Markdown,如果需要。
要查看渲染后的详细信息:
- 在左侧边栏,选择 搜索或前往,找到您的项目或群组。
- 选择 设置 > CI/CD。
- 展开 Runner。
为多个项目启用项目 Runner
如果您已经注册了项目 runner,您可以将该 runner 分配给其他项目。
要为多个项目启用项目 runner:
- 在左侧边栏底部,选择 管理员。
- 从左侧边栏选择 CI/CD > Runner。
- 选择您想要编辑的 runner。
- 在右上角选择 编辑 ({{< icon name=”pencil” >}})。
- 在 限制此 runner 的项目 下,搜索项目。
- 在项目的左侧,选择 启用。
- 为每个附加项目重复此过程。
禁用 runner 版本管理
{{< history >}}
- 在极狐GitLab 15.10 中引入。
{{< /history >}}
默认情况下,极狐GitLab 实例会定期从 JihuLab.com 获取官方 runner 版本数据,以确定是否需要升级 runner。
要禁用您的实例获取这些数据:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 Runner。
- 在 Runner 版本管理 部分中,清除 从 JihuLab.com 获取极狐GitLab Runner 发行版本数据 复选框。
- 选择 保存更改。
限制实例中所有用户的 runner 注册
{{< history >}}
- 在极狐GitLab 15.5 中,为 JihuLab.com 和私有化部署启用,。
{{< /history >}}
极狐GitLab 管理员可以通过显示和隐藏 UI 的区域来调整允许注册 runner 的人员。此设置不影响从 UI 或通过经过身份验证的 API 调用创建 runner 的能力。
当 UI 中隐藏注册部分时,项目或群组的成员必须联系管理员以在群组或项目中启用 runner 注册。如果您计划阻止注册,请确保用户可以访问运行作业所需的 runner。
默认情况下,项目和群组的所有成员都可以注册 runner。
要限制实例中所有用户注册 runner:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 Runner。
- 在 Runner 注册 部分中,清除 项目成员可以注册 runner 和 群组成员可以注册 runner 复选框,以从 UI 中移除 runner 注册。
- 选择 保存更改。
{{< alert type=”note” >}}
在您禁用项目成员的 runner 注册后,注册令牌会自动旋转。令牌不再有效,您必须使用新的项目注册令牌。
{{< /alert >}}
限制群组中所有成员的 runner 注册
先决条件:
- Runner 注册必须为实例中的所有用户启用。
极狐GitLab 管理员可以调整群组权限以限制群组成员注册 runner。
要限制特定群组中的成员注册 runner:
- 在左侧边栏底部,选择 管理员。
- 选择 概览 > 群组 并找到您的群组。
- 选择 编辑。
- 清除 可以注册新群组 runner 复选框,如果要禁用群组中所有成员注册 runner。如果设置为只读,您必须为实例启用 runner 注册。
- 选择 保存更改。
允许 runner 注册令牌
{{< history >}}
- 在极狐GitLab 16.11 中引入。
{{< /history >}}
{{< alert type=”warning” >}}
传递 runner 注册令牌的选项和某些配置参数的支持在极狐GitLab 15.6 中已弃用,计划在极狐GitLab 20.0 中移除。使用runner 创建工作流生成身份验证令牌以注册 runner。此过程提供完整的 runner 所有权可追溯性,并增强您的 runner 队列的安全性。
有关更多信息,请参阅迁移到新的 runner 注册工作流。
{{< /alert >}}
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 Runner。
- 选择 允许 runner 注册令牌 复选框。
产物
最大产物大小
您可以设置不同 作业产物 的最大大小:
- 实例
- 项目
- 群组
作业中每个产物文件的默认最大大小是 100 MB。对于 JihuLab.com,请参阅产物最大大小。
使用 artifacts:reports
定义的作业产物可以有不同的限制。在这种情况下,使用较小的值。
{{< alert type=”note” >}}
此设置适用于最终归档文件的大小,而不是作业中的单个文件。
{{< /alert >}}
要修改最大产物大小:
-
对于实例:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 持续集成和部署。
- 更改 最大产物大小 (MB) 的值。
- 选择 保存更改。
-
对于群组或项目:
群组设置覆盖实例设置。项目设置覆盖实例和群组设置。
- 在左侧边栏,选择 搜索或前往,找到您的项目或群组。
- 选择 设置 > CI/CD。
- 展开 常规流水线
- 更改 最大产物大小 (以 MB 为单位) 的值。
- 选择 保存更改。
默认产物过期时间
可以在极狐GitLab 实例的 管理员 区域设置 作业产物 的默认过期时间。持续时间的语法在 artifacts:expire_in
中描述,默认值是 30 天
。
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 更改默认过期时间的值。
- 选择 保存更改 以使更改生效。
此设置是针对每个作业设置的,可以在 .gitlab-ci.yml
中覆盖。要禁用过期,将其设置为 0
。默认单位是秒。
{{< alert type=”note” >}}
对此设置的任何更改仅适用于新产物。过期时间不会更新为更改此设置之前创建的产物。管理员可能需要手动搜索并过期之前创建的产物,如故障排除文档中所述。
{{< /alert >}}
保留最新成功流水线中所有作业的最新产物
启用时(默认),每个 Git 引用的最新流水线产物被锁定以防删除,并且无论过期时间如何都被保留。
禁用时,任何 新 成功或修复的流水线的最新产物允许过期。
此设置优先于项目设置。如果在整个实例中禁用,您无法在单个项目中启用此功能。
要禁用此设置:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 持续集成和部署。
- 清除 保留最新成功流水线中所有作业的最新产物 复选框。
- 选择 保存更改
当您禁用该功能时,最新产物不会立即过期。必须运行新的流水线才能使最新产物过期并被删除。
{{< alert type=”note” >}}
所有应用程序设置都有一个可定制的缓存过期间隔,可能会延迟设置的生效。
{{< /alert >}}
禁用作业产物的外部重定向页面
默认情况下,极狐GitLab Pages 在用户尝试查看由极狐GitLab Pages 提供的作业产物时显示外部重定向页面。
极狐GitLab 私有化部署的管理员可以禁用外部重定向警告页面,以便您可以直接查看作业产物页面:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 持续集成和部署。
- 清除 启用作业产物的外部重定向页面。
归档作业
您可以归档旧作业以防止它们被单独重新运行。归档的作业在作业日志顶部显示锁定图标 ({{< icon name=”lock” >}}) 和 此作业已归档。
要设置作业被视为旧作业并过期的持续时间:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 持续集成和部署 部分。
- 设置 归档作业 的值。
- 选择 保存更改 以使更改生效。
经过这段时间后,作业在后台被归档,不再能够被重试。保持为空以永不过期作业。必须不少于 1 天,例如:15 天
、1 个月
、2 年
。
对于在 JihuLab.com 中设置的值,请参阅计划作业归档。
默认保护 CI/CD 变量
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 选择 默认保护 CI/CD 变量。
最大包含数量
{{< history >}}
- 在极狐GitLab 16.0 中引入。
{{< /history >}}
可以为整个实例设置每个流水线的最大包含数量。默认值是 150
。
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 更改 最大包含数量 的值。
- 选择 保存更改 以使更改生效。
最大下游流水线触发率
{{< history >}}
- 在极狐GitLab 16.10 中引入。
{{< /history >}}
可以为整个实例设置每分钟可以触发的下游流水线的最大数量(对于给定的项目、用户和提交)。默认值是 0
(没有限制)。
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 更改 最大下游流水线触发率 的值。
- 选择 保存更改 以使更改生效。
默认 CI/CD 配置文件
可以在您的极狐GitLab 实例的 管理员 区域设置新项目的默认 CI/CD 配置文件和路径(如果未设置,则为 .gitlab-ci.yml
):
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 在 默认 CI/CD 配置文件 字段中输入新的文件和路径。
- 选择 保存更改 以使更改生效。
也可以为特定项目指定自定义 CI/CD 配置文件。
设置 CI/CD 限制
{{< history >}}
- 在极狐GitLab 16.0 中移除 每个项目的最大活跃流水线数量 设置。
- 在极狐GitLab 17.1 中引入 实例级 CI/CD 变量的最大数量 设置。
- 在极狐GitLab 17.1 中引入 dotenv 产物的最大字节大小 设置。
- 在极狐GitLab 17.1 中引入 dotenv 产物中的最大变量数量 设置。
- 在极狐GitLab 17.6 中从极狐GitLab 企业版移动到极狐GitLab 基础版的 单个流水线中的最大作业数量 设置。
{{< /history >}}
您可以从 管理员 区域配置一些 CI/CD 限制:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 持续集成和部署。
- 在 CI/CD 限制 部分中,您可以设置以下限制:
- 实例级 CI/CD 变量的最大数量
- dotenv 产物的最大字节大小
- dotenv 产物中的最大变量数量
- 单个流水线中的最大作业数量
- 当前活跃流水线中的总作业数量
- 项目的最大流水线订阅数量
- 最大流水线计划数量
- 作业可以拥有的最大需求依赖数量
- 过去七天内群组中创建或活跃的最大 runner 数量
- 过去七天内项目中创建或活跃的最大 runner 数量
- 流水线层次树中的最大下游流水线数量
作业令牌权限
{{< history >}}
- 在极狐GitLab 17.6 中引入。
{{< /history >}}
您可以为所有项目从 管理员 区域配置 CI/CD 作业令牌访问设置。
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 作业令牌权限 部分。
- 启用 启用并强制所有项目的作业令牌允许列表 设置,以要求所有项目使用允许列表控制作业令牌访问。
作业日志
增量日志记录
{{< history >}}
- 在极狐GitLab 17.11 中引入。
{{< /history >}}
增量日志记录使用 Redis 而不是磁盘空间来临时缓存作业日志。启用时,归档的作业日志会增量上传到对象存储。有关更多信息,请参阅增量日志记录。
先决条件:
- 必须为 CI/CD 产物、日志和构建配置对象存储。
要为所有项目启用增量日志记录:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 作业日志。
- 选择 启用增量日志记录 复选框。
- 选择 保存更改。
禁用流水线建议横幅
默认情况下,合并请求中没有流水线的情况下会显示一个横幅,建议如何添加一个。
要禁用横幅:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 清除 启用流水线建议横幅 复选框。
- 选择 保存更改。
禁用从 Jenkins 迁移横幅
{{< history >}}
- 在极狐GitLab 17.7 中引入。
{{< /history >}}
默认情况下,项目启用 Jenkins 集成的合并请求中会显示一个横幅,提示迁移到极狐GitLab CI/CD。
要禁用横幅:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 清除 显示从 Jenkins 迁移横幅 复选框。
- 选择 保存更改。
软件包注册表配置
Maven 转发
{{< details >}}
- Tier: 专业版, 旗舰版
- Offering: 极狐GitLab私有化部署
{{< /details >}}
极狐GitLab 管理员可以禁用 Maven 请求转发到 Maven Central。
要禁用 Maven 请求转发:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 软件包注册表 部分。
- 清除 如果在极狐GitLab 软件包注册表中找不到软件包,则将 Maven 软件包请求转发到 Maven 注册表 复选框。
- 选择 保存更改。
npm 转发
{{< details >}}
- Tier: 专业版, 旗舰版
- Offering: 极狐GitLab私有化部署
{{< /details >}}
极狐GitLab 管理员可以禁用 npm 请求转发到 npmjs.com。
要禁用它:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 软件包注册表 部分。
- 清除 如果在极狐GitLab 软件包注册表中找不到软件包,则将 npm 软件包请求转发到 npm 注册表 复选框。
- 选择 保存更改。
PyPI 转发
{{< details >}}
- Tier: 专业版, 旗舰版
- Offering: 极狐GitLab私有化部署
{{< /details >}}
极狐GitLab 管理员可以禁用 PyPI 请求转发到 pypi.org。
要禁用它:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 软件包注册表 部分。
- 清除 如果在极狐GitLab 软件包注册表中找不到软件包,则将 PyPI 软件包请求转发到 PyPI 注册表 复选框。
- 选择 保存更改。
软件包文件大小限制
极狐GitLab 管理员可以调整每种软件包类型允许的最大文件大小。
要设置最大文件大小:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > CI/CD。
- 展开 软件包注册表 部分。
- 找到您想要调整的软件包类型。
- 输入最大文件大小,以字节为单位。
- 选择 保存大小限制。
必需的流水线配置(已弃用)
{{< details >}}
- Tier: 旗舰版
- Offering: 极狐GitLab私有化部署
{{< /details >}}
{{< history >}}
- 在极狐GitLab 15.0 中从极狐GitLab 专业版迁移到极狐GitLab 旗舰版。
- 在极狐GitLab 15.9 中弃用。
- 在极狐GitLab 17.0 中移除。
- 在极狐GitLab 17.4 中重新添加,而且在
required_pipelines
功能标志后面重新添加,默认禁用。
{{< /history >}}
{{< alert type=”warning” >}}
此功能在极狐GitLab 15.9 中弃用,并在 17.0 中移除。从 17.4 起,仅在功能标志 required_pipelines
后面可用,默认情况下禁用。请改用合规流水线。此更改是一个重大更改。
{{< /alert >}}
您可以将CI/CD 模板设置为极狐GitLab 实例上所有项目的必需流水线配置。您可以使用来自以下来源的模板:
- 默认 CI/CD 模板。
-
存储在实例模板库中的自定义模板。
{{< alert type=”note” >}}
当您使用实例模板库中定义的配置时,嵌套的
include:
关键字(包括include:file
、include:local
、include:remote
和include:template
)不起作用。{{< /alert >}}
项目 CI/CD 配置在流水线运行时合并到必需的流水线配置中。合并后的配置与必需的流水线配置通过 include
关键字 添加项目配置是一样的。要查看项目的完整合并配置,请在流水线编辑器中查看完整配置。
要选择必需流水线配置的 CI/CD 模板:
- 在左侧边栏底部,选择 管理区域。
- 选择 设置 > CI/CD。
- 展开 必需的流水线配置 部分。
- 从下拉列表中选择一个 CI/CD 模板。
- 选择 保存更改。