Jenkins小菜初次使用小記



title: Jenkins自動集成小記

Jenkins是用來自動構建任務的,也許你還不知道什么叫自動構建任務,它的意思是可以針對某個任務進行自動化,比如你開發的某個軟件,每次寫完代碼提交到github之后,你可以設置讓Jenkins自動進行打包構建發布包或者進行Units測試,發布報告,不用你每次手工在IDE中去Build,尤其是當打包非常繁瑣的時候,用自動化構建可以極大的提高工作效率。

前言

公司是同事使用Jenkins做的自動化構建,非常方便,每次提交代碼,自動檢測打包是否成功,然后發送郵件通知,因為我們集成了findingbugs插件,在打包前還會對代碼進行findingbus檢索,告訴你findingbus的狀態,還會生成release的發布包,非常之方便。

wement.io這個項目我想多人協作開發,自然想到了Jenkins,讓大家能夠配合的非常的舒服,昨天折騰了三小時,搞定了Jenkins,其中包括怎么創建一個任務,怎么設置github,和github的項目掛鈎,怎么設置郵件通知。

安裝Jenkins

直接去Jenkins官網下載war包,我這里是直接部署在阿里雲的centos7上的,然后用scp xxx.war root@yourip:/home直接從本地拷貝到雲服務器上,拷貝之后直接用java -jar xxx.war就可以運行成功了,如果你期望退出命令行還不關閉Jenkins的話,就用命令nohug java -jar xxx.war來運行包,java進程自動在后台運行了,關閉命令行窗口也不會退出程序,這樣你的Jenkins就運行了,默認端口監聽在8080,如果你也是用的雲服務器,請確保你的8080端口是允許訪問的。

當然,要運行Jenkins,你需要安裝Java環境,如果你的代碼倉庫用git的話請安裝git,分別命令如下:

yum install java

yum install git

還沒有完,Jenkins運行成功了,你再在瀏覽器上打開yourip:8080跟隨Jenkins安裝向導,用默認提示安裝完成即可,接下來就是創建任務了。

創建一個任務

選擇第一性,構建一個自由風格的軟件項目

然后保存即可,任務創建完成。但是如果你的項目是私有項目,你需要在你的服務器上生成ssh,然后貼到你的github上,這樣做的目的是然github信任你的這個服務器,同時要注意你的Jenkins控制台,有可能要你輸入ssh的證書密碼。

郵件通知

一般來說這個時候右鍵通知是沒問題的,但是我今天發現我提交代碼之后,任務並沒有自動構建,然后看Jenkins打的log是這樣的:

22:23:55 [WARNING] mvn dependency:tree -Ddetail=true and the above output.
22:23:55 [WARNING] See http://maven.apache.org/plugins/maven-shade-plugin/
22:23:56 [INFO] ------------------------------------------------------------------------
22:23:56 [INFO] BUILD SUCCESS
22:23:56 [INFO] ------------------------------------------------------------------------
22:23:56 [INFO] Total time: 10.112s
22:23:56 [INFO] Finished at: Thu Aug 10 22:23:56 CST 2017
22:23:56 [INFO] Final Memory: 20M/59M
22:23:56 [INFO] ------------------------------------------------------------------------
22:23:56 Archiving artifacts
22:23:56 Email was triggered for: Always
22:23:56 Sending email for trigger: Always
22:23:56 Not sending mail to unregistered user chengming@testin.cn because your SCM claimed this was associated with a user ID ‘chengming' which your security realm does not recognize; you may need changes in your SCM plugin
22:23:56 An attempt to send an e-mail to empty list of recipients, ignored.
22:23:56 Finished: SUCCESS

意思是構建成功了,但是發送郵件發現提交代碼的用戶名是chengming而不是我在Jenkins中設置的cmlanche,然后Jenkins自動忽略了發送郵件的這個行為。

然后我在我的sourcetree中把提交代碼的用戶換回了cmlanche,任務自動構建,郵件發送成功!

Jenkins分享(一)小結

Jenkins是一個非常方便的工具,免費開源,推薦大家都來學習,都折騰下,對你以后大有好處。我其實也是剛剛學這個,知道的還不多,還需要花很多時間去折騰,有更新的收獲我會慢慢分享出來。

歡迎加入我的Java棧群:518914410,討論有關Java的一切技術。


免責聲明!

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



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