天天看點

修改jenkins插件

修改 jenkins 插件

    • 背景
    • 引起原因
    • 動手
    • 意外
    • 給插件改名

背景

上家公司有個項目,安裝了兩台 wildfly server做叢集(假設叫做伺服器A和伺服器B,用 jenkins 的 wildfly 自動部署時,A 能部署成功,但 B 部署失敗。

引起原因

經過多次研究,最終發現是伺服器 B 在部署的時候,疑似預設 timeout 參數太短導緻部署不成功。于是打算修改該插件,在插件頁面添加一個 timeout 參數

動手

  1. 先去

    https://github.com/jenkinsci/wildfly-deployer-plugin

    将該插件的源碼下載下傳到本地
  2. 重寫一個 CLI.java 類,寫一個connect方法并添加一個 timeout 參數 ( 參考

    https://github.com/landuo/wildfly-deployer/blob/master/src/main/java/org/jenkinsci/plugins/wildfly/CLI.java#L93

    )
  3. 參考 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

  4. 執行

    mvn clean package

    打包出 .hpi 檔案。将原插件删除後将打包好後的插件包上傳并測試

意外

正常 jenkins server做完以上操作後,新的插件就會生效,但上家公司那個 jenkins server 不知道為什麼還保留着原來的插件

給插件改名

将 pom.xml 檔案中 <name> </name> 和 <description> </description> 标簽裡的名字和描述改自己定義的名字和描述,與原本的 WildFly Deployer Plugin 差別開,重新打包上傳,在使用的時候選擇新的插件就行了。

jenkins 自動部署資料

連結:https://pan.baidu.com/s/1_Gy1VUVI9ZjMYIcDnfvjvA

提取碼:x6U4

加Q一起學習進步: 3034181846