一、安裝并配置Jenkins。
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:主機(jī)域名、網(wǎng)站空間、營銷軟件、網(wǎng)站建設(shè)、將樂網(wǎng)站維護(hù)、網(wǎng)站推廣。
Jenkins 的前身是 Hudson 是一個(gè)可擴(kuò)展的持續(xù)集成引擎。主要用于:
持續(xù)、自動(dòng)地構(gòu)建/測(cè)試軟件項(xiàng)目,如CruiseControl與DamageControl。
監(jiān)控一些定時(shí)執(zhí)行的任務(wù)。
它有兩種安裝方法,一種是獨(dú)立安裝,另一種是做為一個(gè)Tomcat的一個(gè)war插件來運(yùn)行(JDK環(huán)境是必不可少的),先下載Tomcat,解壓tomcat到某個(gè)目錄,如/usr/local,進(jìn)入tomcat下的/bin目錄,啟動(dòng)tomcat,將jenkins.war文件放入tomcat下的webapps目錄下,啟動(dòng)jenkins時(shí),會(huì)自動(dòng)在webapps目錄下建立jenkins目錄,所以在地址欄上訪問時(shí)需要在IP后面加Jenkins目錄,例如:http://IP/jenkins:8080。
使用命令行命令Scanner及Runner分析代碼,需要人工下載源代碼文件夾到分析命令所在服務(wù)器進(jìn)行人工運(yùn)行,持續(xù)性分析體驗(yàn)很差。使用Jenkins可以自動(dòng)的下載源代碼,并自動(dòng)完成分析,還可以設(shè)置定時(shí)任務(wù),實(shí)現(xiàn)全自動(dòng),是懶人必備利器??!
下例中,使用Git+Scanner及Git+Maven分別進(jìn)行源代碼自動(dòng)分析。原理基本一樣,首先要有一個(gè)代碼庫,如Bitbucket,然后在Jenkins中配置Git從代碼庫中自動(dòng)下載最新的代碼,最后調(diào)用Scanner或Maven把代碼發(fā)送到SonarQube進(jìn)行分析,SonarQube上顯示本次項(xiàng)目的分析報(bào)告。
1、在CentOS中獨(dú)立安裝Jenkins、Maven。
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo #添加Jenkins的源 rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key #安裝Jenkins的Key yum install jenkins #安裝Jenkins ll /usr/lib/jenkins/ #安裝成功后可以查看到Jenkins的war包,如果要升級(jí)jenkins,只需要下載這個(gè)war包替換下就行。 vim /etc/sysconfig/jenkins #配置Jenkins,默認(rèn)啟動(dòng)端口8080,如果不需要改,配置文件可以不動(dòng) systemctl start jenkins #啟動(dòng)Jenkins服務(wù) chkconfig jenkins on #設(shè)置為開機(jī)自動(dòng)啟動(dòng) cat /var/lib/jenkins/secrets/initialAdminPassword #顯示Jenkins安裝后的Admin的授權(quán)號(hào)碼,復(fù)制出來在網(wǎng)頁登陸時(shí)粘貼上,用于完成授權(quán)。
2、在其它電腦上瀏覽器訪問Jenkins,訪問地址:http://服務(wù)器IP:8080,粘貼上復(fù)制好的授權(quán)號(hào),授權(quán)成功后,設(shè)置管理員賬號(hào)及密碼,再安裝默認(rèn)組件,最后進(jìn)入啟動(dòng)界面:
在Jenkins中下載并安裝sonarQube Plugin插件。
安裝完成后勾選下圖,Jenkins自動(dòng)重啟。
3、在Jenkins中配置Sonar及設(shè)置全局配置
在Jenkins首頁的系統(tǒng)管理》系統(tǒng)配置中找到Sonaqube的配置項(xiàng)
設(shè)置全局工具配置
4、新建一個(gè)自由項(xiàng)目,并配置Scanner時(shí)行配置
在Bitbucket中找到要分析項(xiàng)目源碼Git地址,復(fù)制下來
在Git中配置源碼獲取地址,并增加在Bitbucket中最少具有讀取權(quán)限的用戶名及密碼,實(shí)現(xiàn)從源碼庫下載源碼的功能。
構(gòu)建Scanner來執(zhí)行代碼分析
把Scanner的配置文件復(fù)制到Analysis properties中,項(xiàng)目名稱、主鍵、版本號(hào)根據(jù)實(shí)際需要修改。
立即構(gòu)建首次代碼分析
查看執(zhí)行過程
出現(xiàn)錯(cuò)誤,和SonarQubo中的Findbugs插件有沖突,需要在SonarQubo中刪除這個(gè)插件,再執(zhí)行分析就能成功
分析成功
SonarQube中查看分析結(jié)果
5、安裝Maven,并新建一個(gè)maven項(xiàng)目,進(jìn)行配置
在系統(tǒng)管理——》全局工具管理中安裝Maven
隨便取個(gè)名字并保存
現(xiàn)在還不會(huì)安裝maven,只有在“立即構(gòu)建”時(shí)才會(huì)執(zhí)行安裝maven的操作,接下來新建一個(gè)maven項(xiàng)目
同樣的配置Git
源碼目錄下的“pom.xml”是Eclipse中的Maven生成的配置文件,需要在Eclipse中先進(jìn)行配置,并且生成在根目錄下。
增加一個(gè)執(zhí)行Shell
寫入如下命令
第一次很慢,因?yàn)橐认螺dMaven安裝后,再執(zhí)行代碼分析,以后就快多了,構(gòu)建成功了在Console Output中有SUCCESS的提示
在sonar中查看(這是已經(jīng)配置好的儀表盤)