修改 jenkins 插件
-
- 背景
- 引起原因
- 动手
- 意外
- 给插件改名
背景
上家公司有个项目,安装了两台 wildfly server做集群(假设叫做服务器A和服务器B,用 jenkins 的 wildfly 自动部署时,A 能部署成功,但 B 部署失败。
引起原因
经过多次研究,最终发现是服务器 B 在部署的时候,疑似默认 timeout 参数太短导致部署不成功。于是打算修改该插件,在插件页面添加一个 timeout 参数
动手
- 先去
将该插件的源码下载到本地https://github.com/jenkinsci/wildfly-deployer-plugin
- 重写一个 CLI.java 类,写一个connect方法并添加一个 timeout 参数 ( 参考
)https://github.com/landuo/wildfly-deployer/blob/master/src/main/java/org/jenkinsci/plugins/wildfly/CLI.java#L93
- 参考 WildflyBuilder.java 重写一个 WildflyBuilderCustom.java 类,在构造函数上加上 timeout 参数,并在相应地方调用 CLI 的 connect 方法 (参考
)https://github.com/landuo/wildfly-deployer/blob/master/src/main/java/org/jenkinsci/plugins/wildfly/WildflyBuilderCustom.java#L117
- 执行
打包出 .hpi 文件。将原插件删除后将打包好后的插件包上传并测试mvn clean package
意外
正常 jenkins server做完以上操作后,新的插件就会生效,但上家公司那个 jenkins server 不知道为什么还保留着原来的插件
给插件改名
将 pom.xml 文件中 <name> </name> 和 <description> </description> 标签里的名字和描述改自己定义的名字和描述,与原本的 WildFly Deployer Plugin 区别开,重新打包上传,在使用的时候选择新的插件就行了。
jenkins 自动部署资料
链接:https://pan.baidu.com/s/1_Gy1VUVI9ZjMYIcDnfvjvA
提取码:x6U4
加Q一起学习进步: 3034181846