持续集成之配置TeamCity
離開上個東家差不多有一年半的時間了,這一年半更多的還是在學習,或者說更多的是在收拾前輩們寫的代碼,其中的酸甜苦辣只有經歷過的人才知道,想想還是上個東家好,軟件研發的流程很規范,各種配套的工具都是現成的,有專門的配置管理團隊維護,現在的東家呢,我來公司之前公司的代碼是沒有納入版本管理的,老板應該也沒用過這東東,大家都是統一將代碼放到一樣的路徑下,隔段時間交流下最新代碼,這樣的生產效率在人不多情況下還行,但是還是很不方便,在這歷史性的關鍵時刻,本人就充當了配置管理員,建立我們現在使用的版本庫(大家都覺得好用)。再往后老板不怎么寫代碼了,但是經常會讓我給他出個最新的包,或者給別人一個最新的包,每次呢我就吭哧吭哧的先備份下我手頭的代碼然后恢復到庫中的最新代碼,進行長達半個小時的編譯,編譯還經常遇到問題,比如同事忘了提交某個新增的文件,整個過程特別痛苦。最后我痛定思痛,決定引入持續集成,不扯皮了,咱們進入正題。
一.什么是持續集成(Continuous Integration)
持續集成(CI)是當前流行的敏捷開發的基石。簡單來說,持續集成是頻繁、持續的在多個團隊成員的工作中進行集成,并且給與反饋。一個典型的持續集成周期包括以下幾個步驟:
通過這樣一個周期,基本可以能夠保證每天服務器上都有一個最新的版本,如果測試團隊做的好的話還能及時發現存在的問題,反饋給開發人員。站在現在我用的角度,它能幫助我解決編譯問題、實現成果分發自動化。
二.Teamcity
可選的持續集成工具比較多,TeamCity是我上個東家用的,所以我首選它,畢竟它也是一個商業軟件,穩定性、易用性、功能應該都能滿足要求從網上下載相應的安裝包。Teamcity的安裝挺簡單的,只需要簡單的點擊下一步即可,這里需要注意的是服務端運行時所選擇的用戶賬戶,默認選SYSTEM用戶,這個選擇會影響到以后編譯相關的環境
Teamcity的配置
這里說的配置主要是CI服務器的設置,也就是配置一個Project,這里面涉及到很多的概念,比如什么是一個Build,什么是一個BuildStep,這些在其英文幫助文檔中有很詳細的說明,大家可以參照具體的幫助文檔進行理解,整個配置過程還是比較簡單的,這個過程要利用好它提供的BuildParam,變量盡量用BuildParam進行定義,而不要直接寫死,這樣在以后維護起來會比較方便。
遇到的問題
在編譯我們公司的產品時,會莫名奇妙的產生找不到輸出路徑的情況,后來發現原來我們工程在配置輸出目錄時使用了VS的自定義宏,這個自定義宏是針對具體的用戶的,在用戶文檔里有,而TeamCity在調用MSBuild進行編譯時,沒有找到這個用戶宏,也就導致了相應的編譯錯誤。
解決辦法
從服務中找到Teamcity的服務程序,雙擊服務項,在彈出的對話框中找到登錄選項,選擇相應的登錄賬戶來啟動Teamcity服務,這樣在調用MsBuild時就能夠找到這個用戶宏
轉載于:https://www.cnblogs.com/zzugis/p/3444560.html
總結
以上是生活随笔為你收集整理的持续集成之配置TeamCity的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OpenJudge计算概论-最长单词2
- 下一篇: Leetcode: Valid Pare