前面我們已經創建了TeamCity Server 和一個 Agent,接下來我們為一個.net core 控制台程序配置自動化的編譯。
創建 .net core 項目
我們在本地創建一個簡單的 .net core demo程序 hello (這里假設您已經安裝了.net core 的 SDK):
mkdir hello cd hello dotnet new dotnet restore dotnet run
如果能看到輸出 ”Hello World!”,就說明demo 程序已經OK了:

否則,請參照 .net core的相關文檔進行排查。
管理源代碼
您可以使用任何代碼管理工具來管理demo程序的代碼,因為TeamCity幾乎支持我們能見到的所有源代碼管理工具。筆者使用的是TFS,所以后面的配置會以TFS為例進行。
好了,我們已經完成了准備工作,下面就進入TeamCity開始創建相關的配置。
創建 TeamCity project
TeamCity 通過工程來管理項目相關的配置,所以我們先為 hello 程序創建一個 project。

點擊 "Create project" 按鈕開始創建 project:

選擇手動創建相關的配置,然后進入創建 project 頁面:

輸入 project 的名稱,然后點擊 "Create" 按鈕完成 project 的創建。
創建 build 配置
Project 可以包含一個或多個 build 配置,這些build 配置才是正干活的單位。我們的目的是要完成 hello 程序的自動化編譯,所以我們需要創建一個 build 配置來完成這個工作。

選擇手動創建一個 build 配置:

為新的 build 配置指定一個名稱, 然后點擊 "Create" 按鈕完成創建並開始配置這個 build。
配置源代碼工具

要編譯代碼,首先要解決從哪里獲取代碼的問題,通過創建一個新的 VSC Root,我們告訴 TeamCity 從TFS 上獲取程序代碼。當然,在這里要選擇正確的 VCS 類型。

接着為新的 VCS Root 指定名稱,並且設置獲取代碼的詳細信息:

設置完成后可以先點擊 "Test connection" 按鈕測試一下,然后點擊 "Create" 按鈕完成 VCS Root 的創建。

看樣子 TeamCity 已經可以從 TFS 上獲取代碼了,但我們仍然需要關注兩處細節。
1. 管理獲取到 Agent 上的代碼的路徑:

此處的設置為: 把取到的代碼統統放入 hello 目錄中。
2. 通過 TeamCity Server 來獲取代碼

由於我的 Agent 並不能直接連接 TFS, 所以我們可以讓 TeamCity 從 TFS 上獲取代碼然后傳遞到 Agent 上去編譯。
添加 build 步驟
由於稍微復雜一些的任務都不能一步搞定,所以可以為一個 build 配置添加多個 build 步驟。執行的時候,這些步驟被一個接一個的順序執行。

我們的任務太簡單了,所以添加一個命令行類型的 build 步驟就足夠了:

其實,我們就是在 hello 目錄下執行了 dotnet restore 和 dotnet build 兩條命令而已。
收集編譯產物
為了得到編譯后的程序,我們需要把它們收集起來,然后通過 TeamCity 進行分發。

其實就是指定一個目錄,然后讓 TeamCity 把里面的東西都添加到一個壓縮包里。
到此為止,TeamCity Server 上的配置已經完成了。但是真正干活的是 Agent, 所以我們還要看看 Agent 到底能不能完成編譯 hello 程序的任務。
為 Agent 安裝 .net core SDK
因為真正的編譯是在 Agent 上完成的,所以我們必須保證,hello 程序能夠在 Agent 被編譯。那么當務之急就是在 Agent 上安裝 .net core SDK。我們的 Agent 的 OS 是 Ubuntu 14.04,所以參照 .net core SDK 的安裝說明進行安裝即可:
sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list' sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893 sudo apt-get update sudo apt-get install dotnet-dev-1.0.0-preview2-003131
檢查勞動成果
打開 TeamCity 進入 build 配置頁面,點擊 "run" 按鈕:

在編譯完成后,我們可以點擊下載編譯后的 hello 程序。
