jenkins配置svn、gradle、ssh


1.先說下實現的效果,從svn拉取代碼、調用gradle編譯構建、將構建包分發到部署服務器並備份原來的部署包;

2.直接從http://mirrors.jenkins-ci.org/war/latest/jenkins.war 下載最新的war包。

啟動方法: java  -jar jenkins.war 即可,如果要以后台進程的方式啟動,改成nohup java -jar jenkins.war & 即可;

加 --httpPort指定運行端口;

jdk、gradle這種依賴插件要先配置好;

image

這里設置一下JENKINS_HOME環境變量,這樣,所下載的插件產生的數據都會到指定的目錄里;不配的話默認是在home目錄;

3.具體配置如圖

image

a、這里,可以更新需要的插件,這里用的jenkins1.652,更新插件時,svn插件不要更新了;剛開始更新后,從svn拉代碼一直出錯;可能是插件的兼容性問題;

b、系統配置里

image

image

配置好jdk、gradle、shell

 

c、裝下Publish over SSH插件

image

 

圖1填寫密碼也可不填,圖2填私鑰所在路徑,圖3填私鑰值,圖4填默認遠程目錄

這里的私鑰可以用   ssh-keygen -t rsa  生成,將生成的公鑰值放到遠程服務器的authorized_keys 文件里,即可免碼登錄;

 

d、新建條目,配置如下

image

圖上配置項目名稱、svn地址、svn登錄名、密碼,及本地目錄;

 

image

 

圖上1,任務腳本;

圖2根路徑,

圖3構建腳本;

圖4構建后的war包路徑;

圖5將war包路徑拷貝到遠程目錄中所排除的路徑部分,即我只需要拷貝一個war包,不需要它的父級目錄;

圖6拷貝到遠程的目錄,注意這個是相對目錄,相對之前配置的ssh遠程目錄;

圖7遠程腳本文件,在拷貝完之后執行;這個腳本主要是將遠程部署目錄的工作包備份到歷史文件夾,再把tmp中新的包覆蓋工作包;

執行腳本:

#!/bin/bash
#_his='/usr/local/myapp/history/cbb_web'
#_deploy='/home/weblogic/Oracle/Middleware/user_projects/domains/base_domain/deploy'
#_jar='icustoms-cbb-pre-1.0.war'

_his='/usr/local/myapp/history/cbb_robot'
_deploy='/home/weblogic/apps/cbb-robot'
_jar='cbb-sender-sh-pre-robot-1.0.jar'

cp ${_deploy}/${_jar} ${_his}/$(date +%Y%m%d-%H%M%S)_${_jar} -fr
mv ${_his}/tmp/${_jar} ${_deploy}

 

e、多次編譯分發

image

重復圖上的這兩步,就可以完成一次構建中多次編譯、分發部署;圖上的CIFS Publish插件是分發到windows目錄;

 

f、創建節點服務器,可以將構建任務委托給節點服務器去做;

image


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM