[Jenkins]持續整合之路(三)使用TFS作為原始碼管理

Jenkins預設安裝的原始碼管理只有Git和Subversion,由於公司政策的因素,一直以來專案都是使用TFS(TFVC)作為版本控管及Daily Build,好,來增加TFS plugin,順便到TFS設定TFS Check-in時觸發Jenkins工作。

 

今天來完成Jenkins加入TFS作為原始碼管理的安裝及組態工作

版本控管是持續整合的第一步,也是重要的基礎,讓Jenkins有了從版本庫取得程式碼及編譯程式碼的能力後,最基本的每日組建Daily Build也就能完成了。

 

和TFS(Team Foundation Server)有雙向的需求

  • 第一個需求是Jenkins能從TFS取得程式碼。
  • 第二個需求則是除了Jenkins向TFS定期的輪詢,也希望TFS有程式碼簽入事件時,即時通知Jenkins作組建,就像Git Polling the repository或是The post-commit Git hook。

 

在還沒安裝TFS plugin之前,我們新增CI Job(工作)時,原始碼控制只會有Git和subversion兩個選項。

 


Jenkins 安裝TFS Plugin

管理 Jenkins > 管理外掛程式

切到可用的tab下,過濾條件輸入team,勾選安裝Team Foundation Server,最後按直接安裝按鈕。

設定完畢後,之後我們新增CI Job時,就能在原始碼管理時設定TFVC。

*如果是公司內部使用,建議申請ap的帳號,密碼終身有效。

 


TFS服務勾點設定

進入TFS管理網頁,選擇要設定的專案 > 設定> 服務勾點  > 按下綠色的+號

新增服務勾點訂閱

選Jenkins > 按下下一個按鈕

選取觸發程序-程式碼已簽入 > 按下下一個按鈕

依序輸入Jenkins基底URL、登入Jenkins的帳密,通過測試後,按下完成按鈕。

*如果收到Jenkins查詢失敗,例外狀況為’無法連線’,因為目標電腦拒絕連線。

可以到Jenkins管理網頁確認安全性設定。

 

持續整合之路再往前邁進一小步,接下來再準備好CI訊息通知的設定(Slack and Email),就來新增新Jenkins第一支CI JOB。

 


參考

Jenkins with VSTS

https://docs.microsoft.com/zh-tw/vsts/service-hooks/services/jenkins?view=vsts