Jenkins 是一款流行的開源持續集成(Continuous Integration)工具,普遍用於項目開發,具備自動化構建、測試和部署等功能。本系列博客以 windows 10 環境爲例html
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htmljava
建議先改一下工做主目錄,請看第6 配置node
安裝後程序會自動建立了一個windows服務,Jenkins默認使用的端口是8080,在瀏覽器中輸入地址:http://localhost:8080/,可打開界面python
非必須的git
我本次的項目是.net程序,使用git管理代碼web
因此須要安裝git插件。MSBuild是在.NET 2.0中引入的針對Visual Studio的構建系統。它能夠執行構建腳本,完成各類Task──最主要的是把.NET項目編譯成可執行文件或者DLL,須要安裝mubuild插件c#
若是按照上面的配置,git插件默認是已經安裝上的,若是沒有安裝,能夠這樣安裝windows
系統管理 -》插件管理-》installed 查看已安裝的插件,若是沒有git plugings就須要安裝瀏覽器
系統管理 -》插件管理-》Avaliable 找到git plugin 下載安裝bash
若是驗證git plugin已經安裝上了呢
New 任務-》肯定建立後-》source code management 若是看到了git這個選項,證實git插件已經安裝上了
好接下來配置git
從gitlab上面拷貝項目是須要登錄的,這裏咱們配置密鑰後,才能夠將項目代碼克隆下來
要進行下面的操做得先安裝git
若是是win7 ssh-keygen -t rsa 後會報錯沒有這個指令
git bash下-》
而後在 C:user/admin/.ssh下面就能看到
win10下就按下面得操做
[root@node1 ~]# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: bf:1e:4d:b3:0f:fb:8b:71:cd:ef:d3:70:69:a4:46:ff root@node1.chinasoft.com The key's randomart image is: +--[ RSA 2048]----+ | | | | | | | . . | | S + + .| | . o =.*.| | o * oo=| | o B .E| | .o o.+o+| +-----------------+ [root@node1 ~]# cat .ssh/id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3vhfbA4NdkP8g1WVyYkw93f1PZ04nWoyFnoerC9b40jIY5px+tkugdy/RZ3/bp4hMC5yNgV1S25Tm8RpzBJMp7pbJz8dO+LCKqUnXq9Eh0QhsZE0xlQN+J4awy9YIGiD2nFg7k/ZzeAtQRzNryrrPnKaWpXtg7tMGGTWBjeyLAVuqCOMU7euY94G26UmVfjDLIJkcJqB+8dwvodW3wpmUER32qVPKZLnSYSOCfoNed+P4Eujs5PBCLuzFvGyiDhY2Pwrk/4S11jWUa7TJItfoPXzeGc/ujaJi/o24dt8VXeFa/Rm4wywYLNW3TRjXy1mPpdVlob3701MMQ0bf3qPv root@node1.chinasoft.com
id_rsa:私鑰
id_rsa.pub:公鑰
二、在gitlab上配置公鑰
1
2
3 把公鑰複製到key裏面,Title會自動填充,也能夠改爲容易識別的名字
三、在jenkins上配置私鑰
有兩種方式都能配置,一種全局配置,一種在新建task中配置全局密鑰
全局配置:
1
2
3
4
好了,這算是配置完成了,能夠嘗試從git拉取項目代碼了
下面來測試一下
新建一個任務
保存並構建,藍色:成功 紅色:失敗
能夠查看輸出
這個安裝比較簡單,下載安裝後,配置一下
插件安裝後要重啓jenkins
非必須的
jenkins的工做路徑默認在安裝盤中:個人在C:\Program Files (x86)\Jenkins\workspace,顯然咱們不想把構建的項目放在c盤下吧,怎麼辦呢,改工做路徑
改工做路徑最好一開始就改好,不然會很麻煩,若是你配置並投入了運行再改的話,按照我下面的方法配置,會發現這至關於一個全新的服務,以前的配置和插件都沒有了,固然網上也有解決辦法,我沒試
這是win10上的操做
一、添加環境變量JENKINS_HOME 值是工做主目錄
二、建立你的主目錄 D:\mywork\jenkins
三、修改配置文件,jenkins.xml C:\Program Files (x86)\Jenkins\jenkins.xml
若是沒權限改的話,先拷貝出來,改好後再拷貝進去
將這一句
<env name="JENKINS_HOME" value="%BASE%"/>
改成
<env name="JENKINS_HOME" value="%JENKINS_HOME%"/>
四、重啓或者啓動
重啓: localhost:8080/restart
退出:localhost:8080/exit
重啓或退出後若是出現網頁打不開了,能夠看一下jenkins服務是否沒有起來,個人電腦-》管理-》服務和應用程序-》服務
若是沒有啓動就手動起一下,個人就是手動起來的,而後就行了
若是要卸載,能夠先把服務停了,直接將jenkis文件夾刪除就行了,而後從新安裝
五、看一下主目錄
系統管理-》用戶管理-》建立用戶 這裏要說的是郵箱必須填寫,若是不填寫,不報錯,也不讓你註冊成功。至少個人瀏覽器是這樣的
一、準備C#依賴安裝包
我pc上搭建過c#運行程序,網上說:
2 配置MSBuild編譯參數
咱們上面已經從gitlab成功拉取項目要代碼了,下面就來編譯一下,咱們要編譯的項目是C#程序,使用MSbuild來編譯構建
從上往下,依次是
這裏主要講一下「Command Line Arguments」的配置,更全面的 MSBuild 文檔能夠參閱 MSDN:https://msdn.microsoft.com/zh-CN/library/dd393574.aspx
好了保存構建吧。這是構建成功後的輸出信息
1、定時構建語法
* * * * *
(五顆星,中間用空格隔開)
第一顆*表示分鐘,取值0~59
第二顆*表示小時,取值0~23
第三顆*表示一個月的第幾天,取值1~31
第四顆*表示第幾月,取值1~12
第五顆*表示一週中的第幾天,取值0~7,其中0和7表明的都是週日
1.每30分鐘構建一次:
H/30 * * * *
2.每2個小時構建一次
H H/2 * * *
3.天天早上8點構建一次
0 8 * * *
4.天天的8點,12點,22點,一天構建3次
0 8,12,22 * * *
(多個時間點,中間用逗號隔開)
1.Poll SCM:定時檢查源碼變動(根據SCM軟件的版本號),若是有更新就checkout最新code下來,而後執行構建動做
2.若是我想每隔30分鐘檢查一次源碼變化,有變化就執行
1.舉個案例場景,好比我下面Job1是web項目打包併發布的構建任務,我想每次打完包發佈後,而後觸發自動化測試Job2的構建。
(固然發佈後,通常會等幾分鐘纔會徹底加載完成,再下一次構建的時候,能夠用python加個腳本sleep幾分鐘)
咱們設置這樣的執行順序,Test1->Test2->Test3
也就是說,咱們須要在Test2的配置界面設置,構建前,須要勾選Build after other projects are build,而後Test2構建結束後,須要繼續構建Test3.
打開Test2的配置界面
而後看看Test2的構建後步驟如何設置。