V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Coding.NET 轻量级社交
开源项目广场
使用帮助
意见反馈
CodingNET
V2EX  ›  Coding

CODING 持续集成 | 自定义插件,满足你多样化的构建需求

  •  
  •   CodingNET · 2021-07-09 18:22:34 +08:00 · 779 次点击
    这是一个创建于 1260 天前的主题,其中的信息可能已经有所发展或是发生改变。

    企业级的应用构建对构建速度、代码质量、构建性能、流水线易用性及易维护性都有较高的要求,企业研发团队通常需要集成第三方系统工具或插件,不断提升整个构建过程中的效率、质量和体验。基于不同的管理及构建场景需求,每个团队对于插件的能力要求各异。

    近期,CODING 持续集成在为用户提供了 10 余种常用的官方插件的基础上,推出了用户自定义插件能力,让团队内成员将得心应手的工具或命令封装成「自定义插件」,便于在构建流程中快速配置所需的插件能力,并支持在团队内共享,方便团队内其他成员快速复用。

    自由定制

    自定义插件不限制技术栈和语言框架,任意命令行可执行程序,均可封装成插件。开发团队可自行开发或使用开源插件来满足团队的构建需求,满足多样化诉求。上传即可使用,无需官方审核。

    图形化编排

    基于 CODING 持续集成的图形化编排能力,在插件的应用上,直接在构建的流程配置步骤中直接选择插件即可,简单易用。

    企业级插件管理能力

    自定义插件支持企业 /团队内共享,团队成员上传插件可选择公开给企业内其他成员使用,有利于开发团队成员间的工具共享,提高开发者的创造力,节省反复造轮子的时间精力。

    自定义插件怎么用?

    1.查看构建插件

    点击首页左侧的「功能设置」→「持续集成」→「构建插件」,你可以在此处看到官方插件、团队插件与个人提交但未公开的插件。在插件详情中查看名称、描述与版本号。

    Rv9PCn.png

    2.开发插件

    插件开发不限制开发语言和环境,仅需满足插件的目录结构规范(如下)以及声明文件的规范要求即可。编写你的插件代码时,逻辑代码保存至 my-plugin-project/src 目录或任意子目录下,步骤运行入口文件确保与声明文件中一致。

    插件目录结构:

    - my-plugin-project  // 您的项目目录
    - my-script.xx     // 构建插件执行脚本或入口文件,支持任意语言组织(需执行环境具备,如需特殊环境可使用容器)
    - qci-plugin.yml   // 构建插件声明文件,定义您的构建插件名称、版本、参数等信息
    

    请点击查阅声明文件规范及更详细开发指引

    3.上传插件

    开发完成后,打包插件代码( zip 包)并通过「功能设置」→「持续集成」→「构建插件」中上传。我们会保存您的项目文件,构建时,构建节点将会下载项目并执行。上传后确认发布插件,发布后可设置公开团队内成员可见。

    Rv9i3q.png

    4.使用插件

    你可以通过图形化编排界面或编译命令行两种方式使用插件功能。当插件为私有插件时,只有作者本人才能添加使用,当作者将插件标记为「公开」后,团队内其他成员也将可以看到并使用此插件。

    • 图形化编排方式

    点击目标「构建计划」→「设置」→「流程配置」,在阶段内添加步骤时选择是否启用官方插件或团队的自定义插件。

    RvPMX6.gif

    • 编译命令行方式

    支持使用命令行的方式直接编辑 Jenkinsfile,参考语句示例如下:

     useCustomStepPlugin(key: 'exec_py_script', version: '1.0', params: [site_packages:'false',requirements:'false'])
    
     // key 为 插件的 ID,version 为版本号(默认使用最新版本,随插件升级而自动升级),params 为当前插件所需要填写的参数。
    

    本次提供的「自定义插件」扩大了 CODING 持续集成的构建能力边界,满足更多个性化的软件构建需求,给广大研发团队提供了最大限度的灵活性,也提高了构建流程配置的效率和易用性。未来,CODING 持续集成也将逐渐兼容 Drone 和 GitHub Action 的插件,不断构建 CODING 持续集成插件生态能力。

    ROhIw4.png

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2736 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 11:32 · PVG 19:32 · LAX 03:32 · JFK 06:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.