Skip to content

  • 体验新版
    • 正在加载...
  • 登录
  • GitCode
  • 帮助文档
  • Wiki
    • Docs
    • Ci
    • Pipelines
  • settings

帮
帮助文档
  • 项目概览

GitCode / 帮助文档

通知 1562
Star 123
Fork 139
  • 代码
    • 文件
    • 提交
    • 分支
    • Tags
    • 贡献者
    • 分支图
    • Diff
  • Issue 163
    • 列表
    • 看板
    • 标记
    • 里程碑
  • 合并请求 23
  • DevOps
    • 流水线
    • 流水线任务
    • 计划
  • Wiki 89
    • Wiki
  • 分析
    • 仓库
    • DevOps
  • 项目成员
  • Pages
帮
帮助文档
  • 项目概览
    • 项目概览
    • 详情
    • 发布
  • 仓库
    • 仓库
    • 文件
    • 提交
    • 分支
    • 标签
    • 贡献者
    • 分支图
    • 比较
  • Issue 163
    • Issue 163
    • 列表
    • 看板
    • 标记
    • 里程碑
  • 合并请求 23
    • 合并请求 23
  • Pages
  • DevOps
    • DevOps
    • 流水线
    • 流水线任务
    • 计划
  • 分析
    • 分析
    • 仓库分析
    • DevOps
  • Wiki 89
    • Wiki
  • 成员
    • 成员
  • 收起侧边栏
  • 动态
  • 分支图
  • 创建新Issue
  • 流水线任务
  • 提交
  • Issue看板
You need to sign in or sign up before continuing.

settings

最后修改来自于BaiXuePrincess 11月 18, 2021
页面历史

流水线设置

要访问流水线设置,请导航至项目的设置 > DevOps 。

可以为每个项目配置以下设置。

你可以使用流水线状态来确定是否可以合并合并请求:

  • 流水线成功时合并。
  • 仅当流水线成功时才允许合并合并请求。

Git 策略

使用 Git 策略,你可以选择获取仓库的默认方式在一个流水线任务中。

有两种选择。使用:

  • git clone ,速度较慢,因为它会为每个流水线任务从头开始克隆仓库,以确保本地工作副本始终是原始的。
  • git fetch ,它更快地重新使用本地工作副本(如果不存在,则回退为克隆)。

默认的 Git 策略可以由.codechina-ci.yml的 GIT_STRATEGY 变量覆盖。

Git 浅克隆

克隆仓库时,可以限制 GitCode CI/CD 获取的更改数量。设置限制git depth可以加快流水线的执行。

注意:新创建的项目自动具有默认的git depth值50,最大允许值为1000。

要禁用浅克隆并使 GitCode CI/CD 每次获取所有分支和标签,请将值保留为空或设置为0 。

.codechina-ci.yml文件中的GIT_DEPTH变量也可以覆盖此值。

超时

超时定义了流水线任务可以运行的最长时间(以分钟为单位)。 这可以在项目的 设置> DevOps >流水线通用设置下进行配置 。 默认值为 60 分钟。 如果要对流水线任务的运行时间施加硬性限制,则减少时间限制,否则就增加时间限制。在任何情况下,如果流水线任务超过阈值,则将其标记为失败。

Runner 超时覆盖

项目定义的超时(用户设置的特定超时或默认的 60 分钟超时)可能会被Runner 覆盖。

自定义 CI/CD 配置路径

默认情况下,我们在项目的根目录中查找.codechina-ci.yml文件。 如果需要,你可以指定备用路径和文件名,包括项目外部的位置。

自定义路径:

  1. 转到项目的 设置> DevOps 。
  2. 展开流水线通用设置部分。
  3. 在 CI/CD 配置文件字段中提供一个值。
  4. 点击 保存更改。

如果 CI 配置在非默认位置存储在资源库中,则该路径必须相对于根目录。 有效路径和文件名的示例包括:

  • .codechina-ci.yml (默认)
  • .my-custom-file.yml
  • my/path/.codechina-ci.yml
  • my/path/.my-custom-file.yml

如果 CI 配置托管在外部站点上,则 URL 链接必须以.yml :

  • http://example.com/generate/ci/config.yml

如果 CI 配置将托管在 GitCode 中的其他项目中,则该路径必须相对于另一个项目中的根目录,并在最后添加组和项目名称:

  • .codechina-ci.yml@mygroup/another-project
  • my/path/.my-custom-file.yml@mygroup/another-project

将配置文件托管在单独的项目中,可以更严格地控​​制配置文件。 例如:

  • 创建一个公共项目来承载配置文件。
  • 仅向被允许编辑文件的用户授予对项目的写权限。

其他用户和项目将能够访问配置文件而不能对其进行编辑。

测试覆盖率解析

如果你在代码中使用测试覆盖率,则 GitCode 可以使用正则表达式将其输出捕获到流水线任务日志中。 在项目中,转到 设置> DevOps 并展开流水线通用设置部分,在测试覆盖解析字段中输入正则表达式。

如果要禁用它或输入 Ruby 正则表达式,请保留空白。你可以使用https://rubular.com来测试你的正则表达式。 正则表达式返回在输出中找到的最后一个匹配项。

如果流水线成功,则覆盖范围将显示在合并请求窗口小部件和流水线任务表中。如果流水线中的多个流水线任务具有覆盖率报告,则对它们进行平均。

MR widget coverage

Build status coverage

可以在流水线设置页面中找到一些针对多种语言的已知覆盖工具的示例。

代码覆盖历史

如果你想查看项目代码覆盖率随时间的变化,则可以查看图形或下载包含此数据的 CSV 文件。 从你的项目中:

  1. 去 项目分析 >存储库,以查看图表上方下拉列表中列出的每个流水线任务的历史数据。
  2. 如果你想要该数据的 CSV 文件,请点击下载原始数据(.csv)。

Code coverage graph of a project over time

删除颜色代码

某些使用 ANSI 颜色代码输出的测试覆盖工具无法通过正则表达式正确解析,并且会导致覆盖解析失败。

如果覆盖工具没有提供禁用输出中颜色代码的选项,则可以通过一个小的单行脚本通过流水线传递覆盖工具的输出,该脚本将去除颜色代码。

例如:

lein cloverage | perl -pe 's/\e\[?.*?[\@-~]//g' 

流水线的可见性

流水线可见性由以下因素决定:

  • 你当前的用户访问级别 。
  • 项目设置> DevOps >流水线通用设置下的公开流水线项目设置。

注意:如果项目可见性设置为 私有 ,则 公开流水线 设置将无效 。

这也决定了这些相关功能的可见性:

  • 流水线任务输出日志
  • 工作文物
  • 流水线的安全仪表板

注意:当前访客用户和非项目成员尚看不到流水线任务日志和工件。

如果启用了公开流水线 (默认):

  • 对于公共项目,任何人都可以查看流水线和相关功能。
  • 对于内部项目,任何登录的用户都可以查看流水线和相关功能。
  • 对于私有项目,任何项目成员(访客或更高级别)都可以查看流水线和相关功能。

如果禁用公开流水线 :

  • 对于公共项目,任何人都可以查看流水线,但是只有成员(报告者或更高级别)可以访问相关功能。
  • 对于内部项目,任何登录的用户都可以查看流水线。 但是,只有成员(记者或更高级别)可以访问与工作相关的功能。
  • 对于私有项目,只有项目成员(报告者或更高版本)才能查看流水线或访问相关功能。

自动取消冗余流水线

如果你希望每次创建新流水线时(例如在 Git 推送之后或从 UI 手动创建)自动取消分支上所有挂起或正在运行的流水线,可以在项目设置中启用此功能:

  1. 去 设置 > DevOps 。
  2. 展开 流水线通用设置。
  3. 选中自动取消冗余流水线复选框。
  4. 点击 保存更改。

请注意,使用interruptible关键字指示是否可以在完成之前取消正在运行的流水线任务。

跳过过时的部署流水线任务

你的项目可能有多个并发部署流水线任务,这些流水线任务计划在同一时间范围内运行。

这可能导致旧的部署流水线任务在新的流水线任务之后运行,而这可能不是你想要的。

为了避免这种情况:

  1. 去 设置> DevOps 。
  2. 展开 流水线通用设置。
  3. 选中跳过过时的部署流水线任务复选框。
  4. 点击 保存更改。

启用后,在新部署开始时将跳过任何较旧的部署流水线任务。

流水线徽章

在流水线设置页面中,你可以找到项目的流水线状态和测试覆盖率徽章。 最新成功的流水线将用于读取流水线状态和测试覆盖率值。

访问项目中的流水线设置页面,以查看指向徽章的确切链接,以及将徽章图像嵌入 HTML 或 Markdown 页面的方法。

Pipelines badges

流水线状态标志

根据你的工作状态,徽章可以具有以下值:

  • pending
  • running
  • passed
  • failed
  • skipped
  • canceled
  • unknown

你可以使用以下链接访问流水线状态徽章图像:

https://gitcode.net/<namespace>/<project>/badges/<branch>/pipeline.svg 

测试覆盖率报告徽章

GitCode 使定义覆盖率报告的正则表达式成为可能,每个流水线任务日志都将与之匹配。 这意味着流水线中的每个流水线任务都可以定义测试覆盖率百分比值。

可以使用以下链接访问测试覆盖率徽章:

https://gitcode.net/<namespace>/<project>/badges/<branch>/coverage.svg 

如果要从特定流水线任务获取覆盖率报告,可以将job=coverage_job_name参数添加到 URL。 例如,以下 Markdown 代码会将coverage流水线任务的测试覆盖率报告徽章嵌入到README.md :

![coverage](https://gitcode.net/codechina/help-docs/badges/master/coverage.svg?job=coverage) 

徽章样式

通过向 URL 添加style=style_name参数,可以以不同的样式呈现流水线徽章。 当前有两种样式:

扁平 (默认)

https://gitcode.net/<namespace>/<project>/badges/<branch>/coverage.svg?style=flat 

Badge flat style

扁平正方形

https://gitcode.net/<namespace>/<project>/badges/<branch>/coverage.svg?style=flat-square 

Badge flat square style

自定义徽章文本

徽章的文本可以自定义. 这有助于区分在同一流水线中运行的多个覆盖流水线任务. 通过将key_text=custom_text和key_width=custom_key_width参数添加到 URL 来定制徽章文本和宽度:

https://gitcode.net/codechina/help-docs/badges/master/coverage.svg?job=karma&key_text=Frontend+Coverage&key_width=100 

Badge with custom text and width

克隆仓库

快速访问

  • 首页
  • 组织
    • 子组织
    • 申请入驻
  • 项目
    • 徽章
    • 批量编辑
    • 新建项目
    • 描述模板
    • 文件查找
    • 合并请求
      • 允许协作
      • 创建合并请求
      • Cherry-pick
      • 快进合并
      • 解决冲突
      • 还原
      • 评审及管理
      • Squash合并
      • 合并请求版本
      • 草稿
    • 项目成员
    • 导入
      • Github
      • URL
    • Releases
    • 代码仓库
      • 分支
      • Git属性
      • Blame
      • 文件历史记录
      • 仓库镜像
      • 保护分支
      • 保护Tag
      • Git LFS
      • 减少仓库大小
      • GPG签名提交
      • 文件编辑
      • WebIDE
    • 项目设置
    • 与群组共享项目
    • wiki
    • 代码片
    • Pages
      • Hugo
      • Mdbook
      • html
  • Issues
    • 机密Issue
    • 关联Issue
    • 截止日期
    • 看板
    • 操作Issue
    • 标签
    • 管理Issue
    • 里程碑
    • Issue排序
  • API
    • Runners Api
  • CI / CD
    • Pipelines
      • 流水线计划
      • 设置
    • 变量
    • Runners
    • .codechina-ci.yml
      • .codechina-ci.yml 参考
      • 语法验证
  • 用户
    • 举报用户
    • 用户账号
      • 登录日志
      • 用户权限
      • 个人访问令牌
      • 个人偏好
    • Notebook
    • 探讨
    • SSH密钥
    • 快捷键
    • Markdown
    • 电子邮件通知
    • 快速操作
      • 自动填充
    • 预留命名空间
    • 搜索
    • 时间跟踪
    • 待办事项
渝ICP备2023009037号

京公网安备11010502055752号

网络110报警服务 Powered by GitLab CE v13.7
开源知识
Git 入门 Pro Git 电子书 在线学 Git
Markdown 基础入门 IT 技术知识开源图谱
帮助
使用手册 反馈建议 博客
《GitCode 隐私声明》 《GitCode 服务条款》 关于GitCode
Powered by GitLab CE v13.7