本想純粹說下52ABP新版本發(fā)布,但是寫著寫著,過去的時間更多折騰的是DevOps體系的建設。這篇同樣適用于小公司或者個人開發(fā)者脫離人肉運維的方法。
說下52ABP,我們發(fā)布了新版本,版本號3.1.0,看起來和.NET Core 3.1的版本號一樣。距離上個版本的時間比較久,是因為我們在等.NET Core 3.1的發(fā)布,當然它不是最重要的一個原因,它只是一個諸多的原因之一而已。
最大的原因我想是:
52ABP想做出來的東西具有通用性,我們自己能用,然后我們的客戶能用,門檻還不能太高。
所以以后52ABP的版本迭代速度會加快了,因為CI CD已經被我們折騰好了。
首先我們?yōu)榱烁鉊evOps走了不少彎路,比如剛開始跑去搞k8s,想一步到位,后來發(fā)現那個是真運維干的事情。作為開發(fā)人員, 對于我當前的客戶和我們小團隊而言最后還要維護這個東西還是算了吧,培養(yǎng)一個會K8S體系的程序員成本真心大。
還是回過頭來看說DevOps吧。
DevOps要實現的幾大要素:
然后我們對DevOps技術選擇也加了幾個要求
所以我們一個個來找,代碼管理工具嘗試了,Gogs、Gitea 、Gitee、GitHub、Gitlab、Azure DevOps這些工具,這些工具在管理代碼上以及需求上都是 大同小異,都能夠滿足需求。
但是你想進一步嘗試CI、CD的時候,你會發(fā)現你能選擇的并不多。
雖然乍一看好像很多比如隨便搜下:Travis CI、Drone、Jenkins、GitRunner、Bamboo等等,甚至有好事者統(tǒng)計了 GitHub 上使用最多的 10 個 CI 工具,做了個統(tǒng)計圖。
所以要自建那么CI工具可以選擇的就只剩Drone、Jenkins、GitRunner。
這三款真的是各有千秋,就不細說了,最后我們選擇了GitRunner。
基本盤搭建好了之后,就是系統(tǒng)的考慮了。最開始是全Linux配合Docker,后來稍微做了一點小小的調查,發(fā)現又把戰(zhàn)線拉長了。
最后的改了改部署結構變成了:
有了DevOps技術方案,還要有技術規(guī)范,畢竟DevOps可以干的事情那么多。就選一個項目部署來說吧。
在一家正常的軟件公司中,都會有幾種不同的軟件開發(fā)環(huán)境。他們通常具有以下開發(fā)環(huán)境:
開發(fā)環(huán)境--Development演示(模擬、臨時)環(huán)境--Staging生產環(huán)境-- Production那么就產生一個疑問,為什么我們需要那么多不同的開發(fā)環(huán)境呢?
額。。如果你回答不上來這個問題,建議看看我的 ASP.NET Core基礎視頻,里面有教程,B站直通車地址
https://www.bilibili.com/video/av48164112?p=16我們是ASP.NET Core 作為后端開發(fā)環(huán)境,可以做到無縫兼容,不得不說.NET大法就是好。
而前端選擇的是Angular,作為一個走在面向未來的前端框架,雖然還可以,但是在環(huán)境配置上需要通過編寫腳本命令來判斷,而不是系統(tǒng)判斷,這個稍微弱了點。但是好歹能滿足我們的條件。
最后我們實現的效果是無須修改任何的配置文件
開發(fā)環(huán)境即可在本機完成Staging環(huán)境部署到Pro.52abp.com中Production環(huán)境則部署到www.52abp.com中
不得不說有了 CI CD之后真香,而且成本也低,基本無需維護。
現在我們來說說52ABP-Pro框架這次更新的內容吧
新增功能
補充了部分單元測試
功能增強與修復
我們對代碼生成器進行了更新,之前確實太久沒更新了這次一次性修復和更新了很多內容。
真前后端頁面的自動生成,重新調整了Readme文件,讓大家配置起來更加的方便和運行.
如果您是52ABP-PRO的客戶,請自行注冊賬號,然后添加微信號:wer_ltm
,我會拉你進52ABP企業(yè)版的倉庫。
52ABP-PRO是一個快速響應,移動優(yōu)先的符合現代UI設計和SOLID架構的強力開發(fā)框架,它是您進行商業(yè)電子快速落地實踐的完美完美起點。為您的商業(yè)點子帶來無限可能,使您的網站在網絡上脫穎而出。
我們歡迎第三方開源組件提供自己的解決方案,我們將會測試并集成到 52ABP 中。
52ABP框架的整體遵循領域驅動設計的最佳實踐和約定!同時我們采用大家熟悉的工具并圍繞它們進行最佳實踐,提供符合SOLID原則的開發(fā)經驗。
52ABP框架的服務端是基于ABP(ASP.NET Boilerplate),它用于創(chuàng)建現代Web應用程序的完整體系結構和強大的基礎架構!
52ABP框架的前端(SPA)是采用螞蟻金服體驗技術部提供的Ant Design設計體系,它是基于『確定』和『自然』的設計價值觀,通過模塊化的解決方案,降低冗余的生產成本。
關于Vue
我想如果您可能要問Vue模板,說實話,我們也做了個Vue的前端模板。但是講道理沒有TS的前端真的不香,加了TS之后又沒有Angular香。想了想還是等Vue3.0 我們才正式出商用的Vue模板吧。