[Cake] 0.C#Make自動(dòng)化構(gòu)建-簡(jiǎn)介
0. Cake是什么?
Cake是C# Make的縮寫(xiě),是一個(gè)基于C# DSL的自動(dòng)化構(gòu)建系統(tǒng)。它可以用來(lái)編譯代碼,復(fù)制文件以及文件夾,運(yùn)行單元測(cè)試,壓縮文件以及構(gòu)建Nuget包等等。
熟悉大名鼎鼎的Make的小伙伴,應(yīng)該已經(jīng)知道Cake大致是個(gè)什么樣的工具了,Cake具有以下幾個(gè)特點(diǎn):
方便編寫(xiě):使用基于C#的DSL,非常易于編寫(xiě)自動(dòng)化的腳本。
跨平臺(tái): 基于Roslyn和Mono來(lái)編譯我們寫(xiě)的自動(dòng)化腳本,使得它可以運(yùn)行在windows,linux,mac上。
可靠的:可以建立在自己的機(jī)器上,也可以建立在像AppVeyor,TeamCity,TFS,VSTS或Jenkins這樣的CI系統(tǒng)上,都可以以相同的方式運(yùn)行。
豐富的工具集:支持MSBuild,MSTest,xUnit,NUnit,Nuget,ILMerge,Wix和SignTool等等,以及支持豐富的插件(Cake Addins)。
開(kāi)源:基于MIT開(kāi)放源代碼(Cake on Github),并且是.NET 基金會(huì)支持的一個(gè)項(xiàng)目(Cake on dotnet foundation)。
1. 一個(gè)簡(jiǎn)單的DEMO
筆者在Github上創(chuàng)建了一個(gè)簡(jiǎn)單的DEMO(cake.demo),下面簡(jiǎn)單的介紹,項(xiàng)目非常簡(jiǎn)單,一個(gè)類(lèi)庫(kù)項(xiàng)目,一個(gè)測(cè)試項(xiàng)目,如下: