Jenkins发布MVC应用程序
一個大的項(xiàng)目一般都會進(jìn)行模塊化、層次化分隔,每個模塊、每個層次都可能是一個或多個工程文件組成,而且各個模塊都有依賴關(guān)系,有先后順序,先build哪個然后再build哪個都是有順序的,如果想build一個項(xiàng)目來發(fā)布那可能要打開多個工程文件一個一個的build,每次發(fā)布新的都要重復(fù)前面的操作,而且還會在發(fā)布的時候由于版本問題出現(xiàn)錯誤。比如A遷入代碼build一個versionA,B遷入代碼build一個VersionB,加入VersionB的是最新的代碼,但人工部署時如果不注意可能會部署成VersionA的代碼,導(dǎo)致B的代碼并沒被包含。這樣交給測試的話一旦測出問題,就還要重新build,這是很麻煩的事情。那有沒有解決它的方法呢?答案當(dāng)然是有了,Jenkins就是用來做持續(xù)集成的。
Jenkins是一開源的持續(xù)集成工具,可以集成多種語言C#,Java,python等都可以,也可以定制開發(fā),想把它玩精通了不容易,有的公司甚至直接設(shè)立一個項(xiàng)目組來負(fù)責(zé)持續(xù)集成工作。使用Jenkins可以解決上面的問題。Jenkins有插件來進(jìn)行版本控制,根據(jù)版本更新來自動進(jìn)行build,前期一旦定義好以后發(fā)布部署的話就會非常方便,可以一鍵部署或者自動化部署。不過這些高大上的東西也不是一時半會都能上手的,每一個知識點(diǎn)如果想深入了解的話可能都需要很多的時間。這里我先拋個磚,演示一個簡單的,使用Jenkins進(jìn)行應(yīng)用程序的發(fā)布。
一、安裝插件
使用Jenkins發(fā)布.Net程序時需要安裝MSBuild Plugin插件。
在Jenkins系統(tǒng)管理——>插件管理中查找MSBuild,然后安裝。下圖是已經(jīng)安裝好了MSBuild Plugin.
二、創(chuàng)建Jenkins Job
點(diǎn)擊新建,創(chuàng)建Project,選擇構(gòu)建一個自由風(fēng)格的軟件項(xiàng)目,這里我創(chuàng)建的是CYWJenkins project。
三、配置
1.MSBuild 配置
系統(tǒng)管理——>Global Tool Configuration,選擇新增MSBuild.
?2.Jenkins Job的配置
上面創(chuàng)建了CYWJenkins,點(diǎn)擊OK之后就會進(jìn)入配置頁面,在配置頁面主要有下面的幾個大類的配置。
Jenkins通過版本控制來進(jìn)行構(gòu)建,而且可以設(shè)置在什么情況下構(gòu)建,即構(gòu)建觸發(fā)器,如何構(gòu)建,以及構(gòu)建后的操作,構(gòu)建的上下游設(shè)置。這里的例子非常簡單就是在本地通過MSBuild來發(fā)布MVC的應(yīng)用程序。
上面紅線標(biāo)出的部分,MSBuild Build File:要構(gòu)建的項(xiàng)目,這個我事先已經(jīng)創(chuàng)建好了MVC的工程CYWJenkinsDemo? Command Line Arguments:構(gòu)建的參數(shù)。
/t:Rebuild?表示每次都重建,不使用增量編譯
/property:Configuration=Release?表示編譯Release版本,
PublishProfile指定創(chuàng)建的Profile名稱(沒有擴(kuò)展名),VS發(fā)布項(xiàng)目時的配置文件名稱
DeployOnBuild=true?表示啟用編譯并發(fā)布
TargetFrameworkVersion=v4.5表示.net?Framework的版本
其中PublishProfile這個文件是怎么來的呢?如何創(chuàng)建它呢?
我們可以選擇工程CYWJenkinsDemo ,右鍵發(fā)布,然后創(chuàng)建Profile,這里要注意不用點(diǎn)發(fā)布,一直下一頁,然后點(diǎn)擊關(guān)閉,會提示要不要保存配置文件,點(diǎn)擊保持就OK了,幾下名字,就是上面的JenkinsPublishProfile。
?四、執(zhí)行
其實(shí)都可以不用手動執(zhí)行,可以配置觸發(fā)器,是版本更新時執(zhí)行還是固定的周期執(zhí)行,這里就先弄簡單的,手動觸發(fā)執(zhí)行。點(diǎn)擊立即構(gòu)建,就能將應(yīng)用發(fā)布出來,以后再次構(gòu)建的化也不用再打開工程然后發(fā)布了,直接打開頁面點(diǎn)擊構(gòu)建就可以了。這些應(yīng)該來說都是通過遠(yuǎn)程服務(wù)器來搞定的。對于執(zhí)行的成不成功呢,可以查看build history
對于執(zhí)行失敗的可以點(diǎn)進(jìn)去查看具體的log,根據(jù)log分析具體原因。這里還可以通過另外的插件來發(fā)送郵件通知管理員是否部署成功。
?
轉(zhuǎn)載于:https://www.cnblogs.com/5ishare/p/7282493.html
總結(jié)
以上是生活随笔為你收集整理的Jenkins发布MVC应用程序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java命令学习系列
- 下一篇: MVC 用户权限HttpContext.