企业级的应用构建对构建速度、代码质量、构建性能、流水线易用性及易维护性都有较高的要求,企业研发团队通常需要集成第三方系统工具或插件,不断提升整个构建过程中的效率、质量和体验。基于不同的管理及构建场景需求,每个团队对于插件的能力要求各异。
近期,CODING 持续集成在为用户提供了 10 余种常用的官方插件的基础上,推出了用户自定义插件能力,让团队内成员将得心应手的工具或命令封装成「自定义插件」,便于在构建流程中快速配置所需的插件能力,并支持在团队内共享,方便团队内其他成员快速复用。
自由定制 自定义插件不限制技术栈和语言框架,任意命令行可执行程序,均可封装成插件。开发团队可自行开发或使用开源插件来满足团队的构建需求,满足多样化诉求。上传即可使用,无需官方审核。
图形化编排 基于 CODING 持续集成的图形化编排能力,在插件的应用上,直接在构建的流程配置步骤中直接选择插件即可,简单易用。
企业级插件管理能力 自定义插件支持企业/团队内共享,团队成员上传插件可选择公开给企业内其他成员使用,有利于开发团队成员间的工具共享,提高开发者的创造力,节省反复造轮子的时间精力。
自定义插件怎么用?
1. 查看构建插件
点击首页左侧的「功能设置」→「持续集成」→「构建插件」,你可以在此处看到官方插件、团队插件与个人提交但未公开的插件。在插件详情中查看名称、描述与版本号。
2. 开发插件
插件开发不限制开发语言和环境,仅需满足插件的目录结构规范(如下)以及声明文件的规范要求即可。编写你的插件代码时,逻辑代码保存至 my-plugin-project/src 目录或任意子目录下,步骤运行入口文件确保与声明文件中一致。 插件目录结构:
代码语言:javascript复制- my-plugin-project // 您的项目目录
- my-script.xx // 构建插件执行脚本或入口文件,支持任意语言组织(需执行环境具备,如需特殊环境可使用容器)
- qci-plugin.yml // 构建插件声明文件,定义您的构建插件名称、版本、参数等信息
声明文件规范及更详细开发指引请点击底部阅读原文查阅。
3. 上传插件
开发完成后,打包插件代码(zip 包)并通过「功能设置」→「持续集成」→「构建插件」中上传。我们会保存您的项目文件,构建时,构建节点将会下载项目并执行。上传后确认发布插件,发布后可设置公开团队内成员可见。
4. 使用插件
你可以通过图形化编排界面或编译命令行两种方式使用插件功能。当插件为私有插件时,只有作者本人才能添加使用,当作者将插件标记为「公开」后,团队内其他成员也将可以看到并使用此插件。
- 图形化编排方式
点击目标「构建计划」→「设置」→「流程配置」,在阶段内添加步骤时选择是否启用官方插件或团队的自定义插件。
- 编译命令行方式 支持使用命令行的方式直接编辑 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 持续集成插件生态能力。