jenkins plugin 开发简单说明
属于一个简单的学习,基于了官方提供的脚手架,运行一个简单测试插件,了解下开发流程
基于脚手架的简单项目
- 创建
使用archetype 会提示选择的模版
mvn -U archetype:generate -Dfilter="io.jenkins.archetypes:"
- 构建
mvn clean verify
mvn clean package
- 本地运行
mvn clean package -Dmaven.test.skip hpi:run
- 运行效果
- 插件效果
jenkins 标准插件的文件,实际上就是一个jar 文件
- 开启debug
可以使用mvn 的jvm.config 小技巧,我们配置jdwp 协议,然后就可以方便的进行remote debug 了
参考配置(.mvn/jvm.config)
# 注意suspend 我使用了n,因为通过hpi:run 启动之后是一个long running job
-agentlib:jdwp=transport=dt_socket,address=*:9090,server=y,suspend=n
- 调试效果
首先需要在idea 配置remote debug,比较简单,如下
创建job 任务debug 插件
deubg 效果
说明
以上属于jenkins 插件开发的一个加单说明,使用的是脚手架的demo,实际jenkins 插件包含了不少周边,可以多看看官方文档,我只是简单记录了下开发以及如何进行调试,后边可以详细的介绍下jenkins 的插件机制
参考资料
https://www.jenkins.io/doc/developer/tutorial/prepare/
https://github.com/jenkinsci/jenkins/blob/master/CONTRIBUTING.md
https://www.jenkins.io/doc/developer/plugin-development/choosing-jenkins-baseline/