Gitee Support Center / detail

    初识Gitee Go

    1、Gitee Go是什么

    Gitee Go是Gitee全新推出的一款CICD工具,可提供持续集成、持续交付(部署)能力,帮助企业不断提升应用交付的质量和效率。通过构建自动化、测试自动化、部署自动化,完成从代码提交到应用交付的自动化。通过交付流程度量,发现效率问题,并推荐优化方案。

    2、产品优势

    • 一站式平台,研发流程全链路追踪
      从issue创建,到代码提交入库,最终部署上线等一系列环节串联起来,让工程师工作中必需的编译、测试、部署等流程变得简单高效稳定。并与PR门禁、issue状态流转,有机集合起来,不仅使得研发结果可度量,也使得研发过程可观测。
    • 智能构建
      根据当前任务的多少动态调整资源,解决资源争抢问题。可视化的观测排队中的任务、资源占用情况,动态调整任务优先级,帮助您提升流水线执行速度和效率。当任务挤压时除了迅速扩容,也会根据企业内长期沉淀的流水线构建数据,训练预扩容模型,根据预扩容模型提前扩容,进一步提高流水线执行速度,降低您的等待时间,最快可达秒级执行完毕。
    • 多云管理,一键发布
      实现对多云环境的一站式管理,为您提供全局资源看版,帮助您提高资源使用率、降低维护成本。同时与Gitee Go紧密集成,实现对多云资源的统一调配,实现一键发布多云。并可以根据云厂商的不同,实现平滑服务迁移、分级发布、回滚等操作。

    3、应用场景

    场景1:交付流程搭建

    • 针对各种工程类型的应用(如Spring应用),每次代码变更进行自动化构建、测试、部署,对代码、制品、测试报告进行版本管理,对测试、部署进行分级
    • 产品形态:CI/CD流水线,流水线插件模板
    • 价值:快速实现可靠的交付流程(可追溯、可重复、可回滚)

    场景2:测试能力、部署能力服务化

    • 将更多的测试能力、部署能力以插件方式接入流水线,扩展流水线能力(如代码扫描),将原来需要依赖QA(测试工程师)、OP(运维工程师)操作的任务变为RD(研发工程师)自主调用服务完成(如搭建测试环境、分级部署)
    • 产品形态:插件中心
    • 价值:减少沟通申请成本、提升交付效率

    场景3:基于效率度量的持续改进

    • 产出代码变更到应用交付的效率报表和构建、测试、部署环节的过程报表,识别影响效率的关键过程进行改进,跟踪改进效果
    • 产品形态:度量报表
    • 价值:持续的效率改进

    4、名词解释

    • 流水线
      流水线提供了自定义流程编排工具,流水线由多个阶段组成。
    • 阶段
      阶段用来管理一组业务属性相似的任务(例如,构建,测试和部署), 每个阶段包含一个或多个任务。
    • 任务
      任务是流水线最小调度单元,一个任务下所有的脚本等内容在同一个运行环境中执行。
    • 插件
      实现应用的编译、镜像构建、单元测试、代码扫描、覆盖率分析、测试部署、接口测试、集成测试、性能稳定性测试、分级部署逻辑的程序。插件分为官方插件和用户自定义插件,官方插件封装了标准的执行逻辑,用户只需配置输入和输出,无需关注资源;自定义插件由用户编写,用户可选择在自有资源上运行,以兼容无法与环境解耦的历史任务。
    • 触发
      启动流水线的方式,常见触发方式有代码变更自动触发、手工触发、定时触发。
    • 运行(构建)
      代表流水线的一次执行。 运行结束得到所有阶段、任务相关的日志以及运行的结果。
    • 制品
      泛指流水线处理的各种数据,可以是可执行程序、lib文件、jar包、Docker镜像、Helm Chart部署文件等。
    • 参数
      参数是指在流水线、阶段、任务上下游传递的内容,是流水线的重要组成部分,以key-value的形式存在。

    Search