在上一篇([從.Net工程師的角度來看DevOps 23]在AppVeyor執行Build Script - 整合build資訊到github)介紹完了如何用AppVeyor執行我們定義的build script,不過有時候我們有私人的repo也希望做CI,這個時候免費版本的AppVeyor就不夠了。
這邊將會介紹另外一個能夠build私人repo,由Microsoft提供的免費CI服務,Visual Studio Team Service(VSTS)。
這篇先看內建VSTS所提供的方式來建制範例專案,在下篇在改成執行我們的build script。
VSTS小檔案
VSTS是微軟提供的一個免費的Team Foundation Server(TFS)的雲端版本,build只是他其中一部分的功能(也是這個系列唯一會用到的部分)。
- 網址:https://www.visualstudio.com/zh-hant/team-services/
- 免費版本build有:1個月240分鐘
用VSTS內建的build task來做CI
和AppVeyor一樣,先了解如果沒有build script的情況下,VSTS如何設定build步奏。
在開始之前,先需要在VSTS的帳號建立一個專案:
因為只使用到build,可以捲動到下面,直接選Setup Build
:
這個會把我們帶到Build的頁簽,選擇New Definition
可以選擇一個微軟定義好用來建立.Net Desktop
的template:
再來要設定source的位置:
- 選擇左邊的
Get Source
- 選擇
Github
- 做驗證 - 可以用OAuth或者github的personal token
- 選擇要build的repo
選擇右上角的Save & Queue
然後設定這個build definition的名稱之後儲存:
檢查執行結果
過了一些時間之後,可以看到build成功: 和AppVeyor比較起來,可以看到VSTS在呈現的畫面比較漂亮一些,左邊是那些定義過的steps執行結果,右邊則是一個簡單的summary。因為內建step有執行test(不過是MSTest),所以有看到test結果(但是只有一筆)。
結語
這篇介紹了VSTS的build服務,並且用內建的Template來建立出build definition的檔案。
透過這篇的操作,也會發現設定build definition和AppVeyor非常不一樣,因此在沒有build script的情況下,要從AppVeyor移動到VSTS有一些工要做(以我們這個範例來說,其實內建的template不做任何事情是沒有辦法build起來), 因此build script非常重要。
下篇將會調整VSTS使用我們的build script做build。