{
//檢測界面填寫的字段是否合法
public FormValidation doCheckName(@QueryParameter String name)
throws IOException, ServletException {
if (name.length() == 0)
return FormValidation.error("名稱不能為空");
return FormValidation.ok();
}
@Override
public boolean isApplicable(Class extends AbstractProject> aClass) {
return true;
}
//重寫DisplayName方法,該名稱會在界面的構建階段下拉框中顯示
@Override
public String getDisplayName() {
return "Demo";
}
}
resources內容分析
創建HelloWorldBuilder文件夾
在/resource/io.jenkins.plugins.sample包創建HelloWorldBuilder文件夾,與HelloWorldBuilder.java的類名對應,界面的數據字段才能通過HelloWorldBuilder.java構造函數進行綁定
jelly界面開發
#界面開發主要包括以下模塊
1. config.jelly #插件主頁面
2. help-name.html #jenkins界面點擊問號出現的提示內容,命名規則:help-字段名.html
3. index.jelly #整體佈局,擴展構建階段不涉及index.jelly
config.jelly
#這裡是一個文本輸入框,字段為name,name和HelloBuild.java構造函數傳入的name對應,在HelloBuilder.java中即可獲取到界面傳過來的值
jelly語法參考:
http://commons.apache.org/proper/commons-jelly/tutorial.html
打包 & 離線部署
- 運行 mvn hpi:run
- 打包 mvn package or mvn clean package -Dmaven.test.skip=true #生成插件的路徑在target/demo.hpi
- 部署 jenkins-系統管理-插件管理-高級 上傳demo.hpi插件,重啟jenkins
Demo效果展示
構建下拉框增加Demo選項
設置名稱為:demo
執行日誌
參考文檔
jenkins插件入門:https://jenkins.io/doc/developer/tutorial/
jenkins開發文檔:https://jenkins.io/doc/developer/book/
jenkins擴展點:https://jenkins.io/doc/developer/extensions/
maven hpi插件:https://jenkinsci.github.io/maven-hpi-plugin/
jelly:http://commons.apache.org/proper/commons-jelly/tutorial.html
關於Wise2C睿雲智合
深圳睿雲智合科技有限公司成立於2012年,總部位於深圳,並分別在成都、深圳設立了研發中心,北京、上海設立了分支機構,核心骨幹人員全部為來自金融、科技行業知名企業資深業務專家、技術專家。早期專注於為中國金融保險等大型企業提供創新技術、電子商務、CRM等領域專業諮詢服務。
自2016年始,在率先將容器技術引進到中國保險行業客戶後,公司組建了專業的容器技術產品研發和實施服務團隊,旨在幫助中國金融行業客戶將容器創新技術應用於企業信息技術支持業務發展的基礎能力改善與提升,成為中國金融保險行業容器技術服務領導品牌。
此外,憑藉多年來在呼叫中心領域的業務經驗與技術積累,睿雲智合率先在業界推出基於開源軟交換平臺FreeSwitch的微服務架構多媒體數字化業務平臺,將語音、視頻、webchat、微信、微博等多種客戶接觸渠道集成,實現客戶統一接入、精準識別、智能路由的CRM策略,並以容器化治理來支持平臺的全應用生命週期管理,顯著提升了數字化業務處理的靈活、高效、彈性、穩定等特性,為幫助傳統企業向“以客戶為中心”的數字化業務轉型提供完美的一站式整體解決方案。
客戶與合作伙伴
閱讀更多 睿雲智合Wise2C 的文章