圖片來源:https://pixabay.com/en/books-spine-colors-pastel-1099067/ 和 https://blog.xebialabs.com/2016/03/21/essential-devops-terms/
在上一篇([從.Net工程師的角度來看DevOps 22]免費的CI Server - AppVeyor介紹)了解到了如何把專案關聯到AppVeyor裡面,然後可以很簡單利用AppVeyor裡面內建的一些設定來build專案。
在這篇,我們將完全拋棄AppVeyor的內建機制,改成用我們建立出來的build script來執行。
有自己的build script不止在設定上變得更簡單,local跑的和CI Server跑的會一樣,並且如果要整合到另外一個CI Server也不會有什麼問題。
sample 程式在 github devops-psake sample/chapter23
同步發表於我的部落格:鏈接 (部落格的格式會漂亮一些)
任何CI Server基本上都會有地方讓我們關掉內建的執行方式,改成直接執行我們指定的檔案,AppVeyor當然也不例外。做法很簡單,首先:
修改build的畫面
再來他內建會自動去找Test相關的dll並且做執行。由於我們的build script已經會做Test,因此可以直接把內建機制關掉節省時間:
把Test關掉
上面設定好了之後,就可以切回到LATEST BUILD的畫面去手動觸發我們的build:
build結果,可以看到和我們localbuild的output內容一樣
由於我們是public專案,所以可以直接看到我們的build log:https://ci.appveyor.com/project/alantsai/devops-psake/build/1.0.4
設定好了之後,如果能夠一目了然在專案上面看到目前build情況會很好,因此,我們可以設定一個Badge(徽章)放在我們repo的readme裡面。設定方式就是:
再來看到了如何整合我們的build狀況到Github,並且AppVeyor會自動在我們push的時候執行build,形成了Continus Integration(CI)
在下篇,我們將會看另外一個免費的CI Server,Visual Studio Team Service(VSTS),並且了解一下和AppVeyor的差異和內建VSTS提供的build方法。