我是一名從事Java開發工作的程序員,公司在准一線城市,成立5年時間,ERP系統開發是公司業務中重要的一部分。前段時間我個人接手了一個ERP二次開發的任務,根據客戶的需求對公司已開發的ERP進行改造來滿足它的實際應用。前期的開發工作還是比較輕松的,輕車熟路的在現有的ERP功能中,對部分功能進行了刪除,添加客戶特定的功能需求等,根本不需要編輯大量的代碼,開發進度及其順利,這真是一份美差事!但是隨着開發進度的推移,我的噩夢也到來了:
首先,問題出現在構建、部署、測試、修改bug再提交這個過程中,這也是我認為這個任務最耗時間的部分。我將代碼在本地MyEclipse中修改完成后,繼而打成war包,發送給公司負責部署的同事,他將war包部署發布在測試服務器上,提供地址供測試人員去測試,測試人員將測試后的bug表已Excel形式發送給我,我再對代碼進行修改,再打war包。。。這簡直是一個死循環。
其次,由於大多數客戶初期並不知道自己想要的是什么樣的ERP,只有在操作試用當中,才會發現他們自己真正想要的是什么,這個客戶也不例外。我們將產品發布到外網,供他們試用時,他們幾乎是每天都會對功能提出“建設性”意見,這里應該怎么修改,那里應該添加些什么樣的功能。因此幾乎隔一天都會拿到客戶“新需求”,對系統的功能修改,再交付,那段時間的日子不堪回首,客戶的要求是真的很多。
再次,偶爾會出現,周末甚至是晚上九十點鍾的時候,由於某些限定條件,客戶類似於導出Excel按鈕失效這樣一些小問題的發生(這里各位看客會提出疑問:這樣的產品為什么允許給客戶使用?因為我們不正規啊,因為客戶急需啊,客戶並不介意、要跟我們一起推進啊),我都會急匆匆趕回公司,順帶捎上我們的部署大師,沒他我給客戶部署發布不了啊,整的那段時間他對我敬而遠之,最不想接到的就是我的電話。
就這樣一直磕磕絆絆的過了一段時間,直到無意中接觸到了華為軟件開發雲,僅僅經過半天的使用,我就被它給徹底征服了。幫我解決了很多的問題,在這里,我也把它推薦給跟我有同樣遭遇的你們。
我主要使用的是流水線功能,然后就實現了只操作一次。我是這樣做的:
1、通過git將我本地寫好的代碼上傳到軟件雲的代碼倉庫中,配置及其簡單,使用也很方便,在倉庫中的管理也很直觀清晰:
2、根據上傳的代碼建立代碼檢查任務,目前應該是可以支持Java、js、web、css和C++,對於我來說完全夠用,建完是這樣的:
3、根據倉庫里的代碼新建一個構建任務:
六個步驟搞定,so easy!建完效果如下:
4、根據編譯構建生成的war包,建立一個部署任務:
只需要五個步驟的操作,輕松了不少:
5、重點來了,建立流水線任務,將之前建立的三個任務添加到流水線當中:
三步建完一個流水線任務,是不是很輕松?接下來的運行就是很簡單的了,每次更新代碼之后,點擊執行即可:
通過流水線的功能,我要做的就是:編寫代碼,更新到代碼倉庫,點擊流水線任務,有問題就改代碼然后再更新倉庫,運行流水線,就是這么簡單,我不再需要反復去做重復的事情,不再需要去麻煩我的部署的同事。而且代碼倉庫還可以直接在線編輯代碼,對一些小問題,在家就可以修改,然后重新運行構建部署,根本不需要再去公司解決,隨時隨地解決問題,這是一件很爽的事情。
毫不誇張的說,建立一次自動化流水線服務,受用終生啊!對我工作效率的提高不只是一點點,之前我遇到的那些都得到了妥善解決,自己一個人就可以完全搞定。
現在我已經熟悉了華為軟件開發雲這個平台,已經可以逐步分出一部分精力轉移到其他的工作當中去,因為二次開發已經不再占用我過多的時間和精力。我甚至願意多接一些erp二次開發的客戶需求,因為有了流水線功能,一切信手拈來,老板都誇我能干!
另外,單獨使用軟件開發雲的代碼檢查功能也不錯,有1000條檢查規則,凝縮了華為的研發經驗在其中,還可以自由組合,再也不用擔心我的編碼問題了。添加到流水線當中,使流水線如虎添翼。
