下載
- TeamCity,當前版本:2017.1
- TeamCity插件:.NET Core Support
- .NET Core SDK,當前版本:1.0.1
安裝
安裝TeamCity。需要注意的地方:
- 安裝路徑
- 端口,這里是9080
- 安裝Server和Agent Windows 服務的賬號(這里建議使用系統賬號而不是用戶賬號)
安裝完成后會自動打開TeamCity的頁面,開始初始化配置。數據目錄,數據庫和管理用用戶。
安裝TeamCity插件:.NET Core Support。
安裝插件有兩種方式,詳細內容可以參考《Installing Additional Plugins》。這里簡單介紹一下文件拷貝的方式。
- 找到插件文件夾,這里是:C:\ProgramData\JetBrains\TeamCity\plugins
- 將下載好的插件文件(dotnet-core-plugin.zip)拷貝進去,注意不要修改文件名。
- 重啟TeamCity服務,刷新TeamCity頁面,此時TeamCity會自動安裝插件。
- 插件安裝完成后可以到Administration->Plugins List頁面中查看插件是否被正確安裝。
安裝.NET Core SDK。
配置
接下來要通過配置TeamCity,完成將Web Application自動編譯、發布的流程。
- 創建Project。Administration->Projects->Create Project
- 按照實際情況,配置VCS。
- 創建項目。
- 因為安裝了.net core的TeamCity插件,所以幾個關鍵的build過程會被自動檢查出來。這里只需要前兩個,也就是restore和publish。
- 修改發布。這里只修改了Configuration和Output directory
- 保存。到這里最基本的自動發布流程已經完成。已經可以運行。
完善
接下來,我會根據一些實際情況,對TeamCity的配置進行一步完善。
- 當asp.net core web application寄宿在IIS中的時候,運行上述的流程可能會出現無法拷貝文件的問題。要解決這個問題有兩種方式:
- 發布前停止IIS服務,發布完成后啟動IIS服務。添加兩個命令行Step:
- 啟動IIS:net start w3svc
- 停止IIS:net stop w3svc
發布前停止站點,發布后啟動站點。添加兩個命令行Step:
- 啟動站點:"C:\Windows\System32\inetsrv\appcmd" start sites "name"
- 停止站點:"C:\Windows\System32\inetsrv\appcmd" stop sites "name"
- 刪除文件:IF EXIST "D:\Sites\Demo" RD /S /Q "D:\Sites\Demo"
- 發布前停止IIS服務,發布完成后啟動IIS服務。添加兩個命令行Step:
參考