1. 程式人生 > >jenkins 引數化構建mven專案,一鍵部署至tomcat

jenkins 引數化構建mven專案,一鍵部署至tomcat

上一篇記錄了jenkins的安裝和常用配置,包括常用的外掛下載。那麼這裡來記錄以下Jenkins的引數化構建maven專案。

環境:

centos7

jenkins2.107

maven-3.5.3

jdk-1.8_144

tomcat7

下面記錄過程:

1. 上一篇講的,先安裝需要的常用外掛:

Monitoring      ## jenkins自身的監控外掛,可以監控資源消耗,記憶體,磁碟等 Publish Over SSH       ## 可以通過ssh,傳送檔案到遠端伺服器,並執行shell命令 SSH plugin
      ## 可通過ssh遠端執行shell命令的外掛 以及一些基本常用的配置,請參考我的另一篇博文,下面不再過多贅述: 2. 新建專案,選擇構建maven專案
3. 選擇引數化構建,新增引數:
這裡有我們安裝外掛後,新增的幾個引數, Persistent 開頭的引數與自帶的外掛的區別就是,Persistent引數會預設保留上一次構建成功的引數,而不是直接顯示設定的預設引數。 Git Parameter 外掛就更常用了,可以通過git連線,列出git的分支進行選擇,然後使用指定分支程式碼進行構建,非常好用。 如下:


注意這裡兩個名稱要相同,定義了引數後,使用 $引數名 的形式就可以呼叫引數了。除了這個,最常用的便是字串形式的引數
這裡有一個 Successful Only,勾選上時,就會保留上一次構建成功的值作為下一次構建時的引數的預設值。 4. 接下來,填入maven構建命令:
根據自己情況,自行填寫。指定的pom.xml 檔案一般不需要修改,這個值是相對路徑,也可根據實際需求進行修改。 然後,構建構建成功後,執行操作:

這個功能就是通過ssh,講檔案傳送到遠端主機上,然後執行命令。就行配置:

name進行選擇遠端伺服器,需要提前在系統設定中配置好 伺服器地址,連線方式,預設路徑等。 然後: Source file 則是需要傳送的檔案 Remove prefix 則是需要排除的檔案,類似圖上的設定,則會只發送一個war包檔案到遠端伺服器上 Remote directory 遠端伺服器檔案路徑,此路徑畢竟用登陸的賬號用讀寫許可權,否則傳送檔案會失敗 Exec command 遠端執行的命令。預設是shell命令。預設不使用pty終端。 PS: 這裡有幾點要特別注意: 執行命令的使用者為jenkins配置中設定的遠端伺服器登陸使用者,在執行指令碼之前,先將引數設為環境變數,系統環境變數也需要重新source一下 不然在指令碼中,無法獲取到環境變數。另外,如果要用sudo命令的話,需要使用-E引數,不重置環境變數。並且,sudo命令,預設是需要在pty終端中才能使用,可以 點選高階,勾選使用pty終端執行命令。 但是,如果使用pty終端執行,啟動了tomcat後,jenkins預設在命令執行完成後,會kill 衍生程序,也就會自動kill掉tomcat的啟動程序,就導致無法啟動。 且,在命令列前設定: BUILD_ID=DONTKILLME 也沒用,需要修改jenkins啟動引數。這裡我沒有使用這種辦法。 還有一種辦法:修改visudo ,取消掉預設的需要pty終端才能執行sudo的配置,使用root命令,執行:visudo,如下:
將這一行註釋掉即可。這樣就不需要pty終端使用sudo命令了。這樣在jenkins的配置中就不需要勾選使用pty了。也就不會殺死衍生程序了。 這樣,就能正常執行你專案的啟動指令碼(我這裡是python指令碼)。 5. 然後構建後操作,可以增加一個郵件傳送操作,將構建的結果傳送到自己郵箱:
選擇這個郵件外掛提供的操作,在傳送列表裡,可以寫任意多個郵箱地址,逗號隔開,這樣在構建完成後,即可傳送郵件。告知構建結果。郵箱的配置,在上一篇裡記錄過。 OK,到此,就完成了maven專案的引數化構建,一鍵部署。這也是最常用的功能。 有什麼疑問,歡迎提問,見必答

相關推薦

jenkins 引數構建mven專案部署tomcat

上一篇記錄了jenkins的安裝和常用配置,包括常用的外掛下載。那麼這裡來記錄以下Jenkins的引數化構建maven專案。 環境: centos7 jenkins2.107 maven-3.5.3 jdk-1.8_144 tomcat7 下面記錄過

Jenkins持續構建Android專案(二)-構建Android專案生成apk(by 星空武哥)

Jenkins安裝完我們就可以新建專案了 首先開始新建一個專案,選擇型別為“構建一個自由風格的軟體專案” 新建完成,就是配置專案 開始配置“General” 構建觸發器 我們選擇Poll

jenkins 引數構建作業

在構建中使用引數,引數可以理解為此構建的環境變數。 設定引數 新建一個param_build作業,選擇引數化構建過程。   引數有   現在新增幾個:   執行構建   執行之前要設定引數值   引數的使用   引數可以在構建過程中使用,如圖使用${}引用引數。 檢視

Jenkins持續構建Android專案(四)-上傳apk到蒲公英(by 星空武哥)

1、註冊賬號,獲取取API Key和User Key 然後在“賬戶設定”中找到“API資訊”,獲取API Key和User Key 2、安裝curl 安裝完成後需要配置curl環境變數,然後在cm

jenkins 自由風格構建war包並自動部署jenkinstomcat同一臺機器)

jenkins 自由風格 環境:centos7.3 ip:192.168.216.130 參考 http://www.cnblogs.com/h--d/p/5682030.html一 在正式構建之前需要先設置下jenkins1 點擊Manage Jenkins,然後點擊Global Tool

eclipse配置ant開發環境部署專案

  ANT出現之前,編譯和部署Java應用需要使用包括特定平臺的指令碼、Make檔案、不同的IDE以及手工操作等組成的大雜燴。現在,幾乎所有的開源Java專案都在使用Ant,許多公司的開發專案也在使用Ant。Ant的大量使用,也自然帶來了對總結Ant最佳實踐的迫切需求。   

安裝了寶塔面板的伺服器部署私有云

介紹 寶塔面板:是一款linux/windows平臺均可使用的伺服器管理軟體,自帶環境包,主要基於centos作業系統,可一鍵包裝nginx、apache、php、mysql、pureftpd、phpmyadmin等環境,自帶線上網頁管理面板,可用於建站、開通FTP、防火牆管理、以及強大的線上檔案管理功能等

Jenkins實現測試環境到生產環境部署(Windows)

前言: 因為dotnet在釋出站點後,然後再上傳服務時,會因為各種的網速問題,導致站點瞬間掛掉!那麼通過一鍵部署,先在測試站點測試好的檔案,複製到正式站點上的一個緩衝區,進行預熱配置,之後再本機進行檔案替換,速度是相當的快,最終把影響降到最低。 所用到的外掛: 注意:此外掛很久沒有更新,一次只能是一個目錄

docker-compose入門示例:部署 Nginx+Tomcat+Mysql

命令 real 一定的 mes 映射 如果 們的 提前 出現 整體環境配置 整體環境的配置,如果一個一個 Dockerfile 去寫,那麽是相當麻煩的,好在 Docker 有一個名為 Docker-Compose 的工具提供,我們可以使用它一次性完成整體環境的配置: 首先

Gitbook 部署 GitHub Pages

Gitbook 的資料文件使用的是 Digital Ocean 的主機,而 DO 家的很多地址被牆了,導致往往無法訪問。因此我在思考除了將書籍釋出到 GitBook.io 以外,能不能部署到其他地方?這時我找到了一個渠道——將書籍釋出到 GitHub Pages

jenkins+gradle+python 引數構建 編碼問題

      我的 自動化構建平臺使用的是jenkins+ gradle + python實現的。其中,jenkins負責管理搭建構建環境,管理構建歷史等,gradle負責打包android 的 apk,打包完後使用python將apk上傳到伺服器,然後在走介面更新版本資訊等。

Jenkins引數構建過程

1. 操作環境 1. Windows: win10 2. Jenkins Jenkins 2.75 3. Ant apache-ant-1.10.1 2. 設定位置   在這裡,我們是通過“引數化構建過程”中新增“St

jenkins 構建github專案新增selenium HTML報告

1、配置git原始碼: 2、構建: 3、系統管理-外掛管理,新增html-report外掛 4、配置構建完成後新增html報告 5、第一次構建,開啟測試報告,看到的是空白頁面,解決方法,安裝Groovy外掛後,重新設定新增 execute system Groovy script;

Jenkins高階篇之Pipeline實踐篇-6-Selenium和Jenkins持續整合-pipeline引數構建selenium自動化測試

       這篇來思考下如何寫一個方法,可以修改config.properties檔案裡面的屬性。加入這個方法可以根據key修改value,那麼我們就可以通過jenkins上變數,讓使用者輸入,來修改config.properties檔案裡面的值。例如測

jenkins pipeline引數構建

引數化構建過程中的引數choice在pipeline script中的引用是env.choice,非pipeline的舊版方式引用是$choicepipeline script不會寫時可以點選流水線語法,進入後選擇示例步驟,比如從svn拉取程式碼,選擇svn: Subvers

教師結構面試獲取資料

教師結構化面試,一個程式設計師男朋友,為愛而碼 【需求】   1、教 結構化面試資料太少,而且最好列印   2、資料儲存word檔案,方便共享 作為一名程式設計師,開始coding... 把如下程式碼儲存為download.py,雙擊執行,結果如下:

Jenkins使用Gradle構建Android專案時Error: Some file crunching failed, see logs for details

近兩天在自己本機上使用Jenkins構建Android專案報了一個錯誤 15:39:05.511 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] FAILURE: Build failed with an e

jenkins pipeline指令碼 構建 java 專案例子

一. 最近使用jenkins pipeline 比較多,這個是配置一個通用的 java 專案的模板 #!groovy def oper_checkout(SCM_TYPE,SCM_URL,SCM_AUTH_PASS,SCM_BRANCH=' ',SCM_AUTH_USER='&nb

jenkins配置打包,備份部署多伺服器多環境啟動

jenkins配置 1 安裝外掛 系統管理->外掛管理 外掛:Maven Integration plugin,Publish Over SSH 2 ssh scp 配置 系統管理->系統設定 ssh server 配置: 如果用的是統一的key或者密碼,則配

利用jenkins部署專案

思路:原生代碼提交到svn==>jenkins將svn的最新程式碼構建成應用,打成war包,上傳到to tomcat的webapps目錄下,然後重啟tomcat 1、安裝jenkins,本文安裝windos版 2、執行jenkins,關閉jenkins,修改主