开发 Jenkins 插件

一、环境准备

Jenkins 是基于 Java 开发的。所以要开发 Jenkins 插件,首先要安装 JDK、mvn 等工具

二、创建 Jenkins 插件项目

1、新建一个项目目录,并在命令行进入该目录后执行如下 mvn 命令

mvn -U archetype:generate -Dfilter=io.jenkins.archetypes:

如下图,创建成功显示 “BUILD SUCCESS”,这样在刚才那个目录下就多出了一个 demo 目录:

  • 其中输入两次4,因为引用的是1.4的版本,所以输入两次4
  • demo 是 artifatId,你可以随便输
  • 版本,可以输也可以空着
  • 最后输入 y,开始创建项目

 三、构建并运行插件

1、命令行中进入 demo 目录,执行如下目录

mvn hpi:run

编译后可能会有如下错误,如图:

原因是 jenkins 插件需要在 jdk8上运行。安装 jdk 8后并修改 JAVA_HOME 后再次运行 mvn hpi:run 即可

我的安装目录在这里所以运行 export 修改临时 JAVA_HOME

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

另外还要注意 jenkins 项目运行在 8080 端口所以要保证该端口没被占用

2、builder 成功后浏览器中访问如下地址,这样你就可以在本机上调试你的 Jenkins 插件了

http://localhost:8080/jenkins/

如下图:  

3、创建一个自由风格的 Jenkins 项目

4、添加 Say hello world 构建步骤

5、输入名称后点击 保存

 6、点击 立即构建,并查看构建日志

 

四、修改 jenkins demo 插件代码 

1、代码结果

 2、前端页面对应修改位置

 3、插件名称修改位置,当然以上都用了国际化文件,只是我没用而已

 4、页面上对应组件的属性及 get、set 方法

5、参数检查(这里的检查是创建项目时的参数检查,不是构建时的参数检查),检查信息显示到如下图

6、构建后执行的方法,以及日志显示内容,后续主要业务就写到这里。

7、如果需要在构建时参数检查,按如下代码实现

五、打包

执行如下命令,打包生成 hpi

mvn package

在我的电脑上打包老是报错,可以选择如下命令跳过 test 后成功

mvn package -DskipTests=true

注:或者 默认 pom 编译老是报错,也没找到什么原因,没办法只能升级版本解决(但要注意你使用的 Jenkins 服务器版本,我就是因为公司用的版本低而又降了回去),修改内容如下

或者在第一步的时候选择 4 -> 14,也可以

 六、在 Jenkins 中使用

6.1、Freestyle project

三 中已经讲过,就不再细讲了

6.2、Pipeline

第一种 node 形式,其中 webHost 是参数名,冒号后边是值

node {
    step([$class:"RunSuiteBuilder", webHost:'http://localhost:8080/jenkins/job/pi/configure', host:'http://10.16.30.9:7171', token:'eyxxxxxxxxVs', suiteId:22, timeout:120])
}

第二种 stage 形式

pipeline {
    agent any
    stages{
        stage('QAplatform-plugin'){
            steps{
                step([$class:"RunSuiteBuilder", webHost:'http://localhost:8080/jenkins/job/pi/configure', host:'http://10.16.30.9:7171', token:'eyxxxxxxxxVs', suiteId:22, timeout:120])
            }
        }
    }
}

 

  

 

  

 

posted @ 2023-07-07 08:58  rslai  阅读(165)  评论(0编辑  收藏  举报