持續整合工具TeamCity配置使用

2022-08-11 22:27:21 字數 2577 閱讀 9760

持續整合ci(continuous integration)主要包括自動化的編譯、發布和測試整合,對於我們資訊系統專案開發非常有用。一般開發人員機器上會搭建自己的開發環境,整個專案在伺服器上會搭建測試環境,持續整合工具就可以完成整個專案整合部署的自動化,這裡主要講持續整合工具teamcity7.1.2配置使用。

1.teamcity安裝

安裝過程比較簡單,按照嚮導一步步往下走,預設裝是英文版本的,有乙個地方注意輸入teamcity server port服務的埠號,安裝完成後web管理介面使用此埠訪問。

圖1:teamcity安裝

2.初始化配置

安裝完成後,使用主機位址+埠號進入web管理介面,第一次進入會進行初始化,並建立管理員登入帳戶。

圖2:teamcity建立管理員帳戶

3.建立工程

初始化建立管理員後,會自動登入管理後台。點選create a project建立乙個新工程,輸入名稱和描述。

圖3:teamcity建立乙個新工程

乙個工程下面可以包含多個生成配置,要發布乙個專案需要新增build configurations生成配置,輸入配置名稱,如下圖所示:

圖4:teamcity新增build configurations生成配置

每個生成配置可以直接和源**伺服器關聯,點選vcs settings設定源**伺服器。

圖5:teamcity關聯源**伺服器

點選create and attach new vcs root新建乙個源**管理關聯,teamcity支援使用clearcase、cvs、svn、tfs、vss等版本控制工具,我這裡使用svn,輸入版本控制url路徑、連線使用者名稱和密碼,測試連線成功後儲存。

圖6:teamcity關聯svn伺服器

關聯好版本控制位址後,還需要add build step新增生成步驟,指定要生成工程路徑。我這裡使用.net的vs2010工具,選擇visual studio (sln)執行,teamcity會使用msbuild編譯器生成專案。因為原來專案是使用**型別的專案,因此需要先安裝webdeploymentsetup**部署工具,發布輸出合併程式集的**。

圖7:teamcity指定生成工程

配置好發布工程後,還不能實現完全的自動化發布。teamcity提供了觸發器的功能,可新增乙個vcs trigger發布觸發器,在源**每次籤入時自動發布專案。

圖8:teamcity的vcs trigger發布觸發器

4.發布工程

上面已經介紹建立乙個完整的發布專案,並使用觸發器完成自動化發布。teamcity的管理介面也提供了手工發布專案功能,在管理projects的主頁面,可以選擇指定專案點選run,即可進行發布。

圖9:teamcity發布工程

teamcity工作目錄在安裝目錄teamcity\buildagent\work下,第一次發布會自動建立乙個工程目錄,下面存放teamcity工程所關聯的源**本地目錄。發布成功後,在本地目錄對應的專案中可以找到輸出目錄。

圖10:teamcity更新工作目錄

teamcity發布主要流程包括獲取版本控制庫最新**、解析依賴專案、編譯執行、完成輸出。teamcity採用佇列來管理發布請求,安裝時缺省會安裝乙個發布**服務,用來執行發布列隊。

圖11:teamcity正在編譯發布

對於**型別專案,我們只需要將web伺服器的站點目錄指向teamcity專案輸出目錄,即可完成專案的更新自動發布,無需再手工進行發布。

teamcity不只包括自動化的編譯發布,還有各種報表生成、自動化發布測試等功能。持續整合工具對我們每次的提交的成果進行整合驗證,有利於缺陷的檢查,同時減少了每天的一些重複過程,對推進專案開發的起了重要作用。

持續整合工具是怎樣煉成的?持續整合工具實戰

它可以統計整個專案的覆蓋率 各包的覆蓋率 各類的覆蓋率,最後展示哪些 被覆蓋,哪些 沒有被覆蓋。持續整合報告 當乙個軟體專案使用了持續整合工具以後,許多的管理工作由不可靠的人為操作變為了機械自動化操作。作為專案開發成員,特別是專案經理,最關心的就是持續整合報告。進入持續整合控制台,可以看到所有在用的...

php持續整合工具 xinc中web介面配置分享

xinc提供了乙個非常專業的基於ext js框架的web介面,這個介面用於檢視專案的部署情況 單元測試結果 覆蓋率 svn提交資訊等許多細節問題,所以配置好這個web介面還是非常有必要的。drwxrwxrwx 3www www 409601 0816 03 cssdrwxrwxrwx 4www ww...

敏捷持續整合工具CruiseControl

持續化整合工具便是服務於敏捷軟體開發的乙個系列。它主要將原本分散,無序的工作流程,通過工具軟體有機的組織起來,並且在組織的過程中,參與開發設計測試的各個部門的人員都能從中獲取到自動化方面的優惠。使得團隊的工作效率大大提公升。cruisecontrol是乙個針對持續構建程式 專案持續整合 的框架,它包...