本發(fā)明涉及計(jì)算機(jī)軟件工程領(lǐng)域,具體涉及一種軟件開(kāi)發(fā)環(huán)境構(gòu)建方法、系統(tǒng)、電子設(shè)備和介質(zhì)。
背景技術(shù):
1、在軟件開(kāi)發(fā)環(huán)境的構(gòu)建過(guò)程中,傳統(tǒng)的手動(dòng)部署方式面臨著顯著的局限性。這種方式不僅耗時(shí)較長(zhǎng),容易引入錯(cuò)誤,而且難以靈活應(yīng)對(duì)快速變化的開(kāi)發(fā)測(cè)試需求。
2、隨著軟件開(kāi)發(fā)方法的演進(jìn),敏捷開(kāi)發(fā)模式逐漸成為主流。在敏捷開(kāi)發(fā)框架下,企業(yè)應(yīng)用程序的開(kāi)發(fā)交付流程涵蓋了從代碼編寫到部署的多個(gè)關(guān)鍵環(huán)節(jié)。對(duì)于軟件開(kāi)發(fā)而言,每個(gè)軟件項(xiàng)目都有其獨(dú)特的研發(fā)環(huán)境需求。在敏捷開(kāi)發(fā)的迭代過(guò)程中,同一個(gè)軟件項(xiàng)目也可能根據(jù)自身的開(kāi)發(fā)需求,不斷更換或升級(jí)其研發(fā)基礎(chǔ)環(huán)境。這種動(dòng)態(tài)變化的環(huán)境需求,對(duì)軟件開(kāi)發(fā)環(huán)境的構(gòu)建提出了更高的靈活性和智能化要求。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本發(fā)明提供一種軟件開(kāi)發(fā)環(huán)境構(gòu)建方法、系統(tǒng)、電子設(shè)備和介質(zhì),旨在提高軟件開(kāi)發(fā)效率,減少人為錯(cuò)誤,并更好地適應(yīng)多變的開(kāi)發(fā)測(cè)試需求。
2、本發(fā)明一方面提供一種軟件開(kāi)發(fā)環(huán)境構(gòu)建方法,包括:生成軟件開(kāi)發(fā)環(huán)境所需的腳本文件,腳本文件用于搭建與基礎(chǔ)環(huán)境模板一致的開(kāi)發(fā)環(huán)境;基于腳本文件,制作鏡像,并將鏡像部署到軟件開(kāi)發(fā)環(huán)境的不同開(kāi)發(fā)環(huán)節(jié)中;在鏡像中,對(duì)檢查無(wú)誤的待發(fā)布源代碼進(jìn)行編譯和打包,得到待發(fā)布軟件包;在待發(fā)布軟件包匹配應(yīng)用服務(wù)器的環(huán)境的情況下,將待發(fā)布軟件包推送到應(yīng)用服務(wù)器中。
3、根據(jù)本發(fā)明實(shí)施例,生成軟件開(kāi)發(fā)環(huán)境所需的腳本文件包括:在特定代碼倉(cāng)庫(kù)、配置項(xiàng)或文件系統(tǒng)中生成軟件腳本部分和硬件腳本部分,得到腳本文件。
4、根據(jù)本發(fā)明實(shí)施例,生成軟件腳本部分包括:生成軟件內(nèi)容獲取腳本和軟件配置腳本,其中,軟件內(nèi)容獲取腳本包含基礎(chǔ)軟件運(yùn)行環(huán)境和通用軟件信息,軟件配置腳本允許生成后的鏡像在不同版本之間進(jìn)行切換。
5、根據(jù)本發(fā)明實(shí)施例,基于腳本文件,制作鏡像包括:采用虛擬機(jī)、開(kāi)源云平臺(tái)技術(shù)、聚合技術(shù)或容器技術(shù)中的至少一種,對(duì)腳本文件的不同腳本內(nèi)容進(jìn)行處理,完成鏡像制作。
6、根據(jù)本發(fā)明實(shí)施例,制作鏡像之后,還包括:采用可視化圖形界面工具對(duì)鏡像進(jìn)行流程管理。
7、根據(jù)本發(fā)明實(shí)施例,在鏡像中,對(duì)檢查無(wú)誤的待發(fā)布源代碼進(jìn)行編譯和打包,得到待發(fā)布軟件包之前,包括:對(duì)待發(fā)布源代碼進(jìn)行代碼規(guī)范和安全檢測(cè),在待發(fā)布源代碼不滿足預(yù)設(shè)質(zhì)量要求的情況下,在代碼提交層面對(duì)源代碼進(jìn)行修正,直到待發(fā)布源代碼滿足預(yù)設(shè)質(zhì)量要求。
8、根據(jù)本發(fā)明實(shí)施例,在鏡像中,對(duì)檢查無(wú)誤的待發(fā)布源代碼進(jìn)行編譯和打包,得到待發(fā)布軟件包之后,包括:對(duì)待發(fā)布軟件包進(jìn)行特征信息標(biāo)記;將標(biāo)記后的待發(fā)布源代碼暫存至軟件制品倉(cāng)庫(kù)。
9、本發(fā)明另一方面提供一種軟件開(kāi)發(fā)環(huán)境構(gòu)建系統(tǒng),包括:腳本生成模塊,用于生成軟件開(kāi)發(fā)環(huán)境所需的腳本文件,腳本文件用于搭建與基礎(chǔ)環(huán)境模板一致的開(kāi)發(fā)環(huán)境;鏡像制作模塊,用于基于腳本文件,制作鏡像,以部署到軟件開(kāi)發(fā)環(huán)境的不同開(kāi)發(fā)環(huán)節(jié)中;編譯和打包模塊,用于在鏡像中,對(duì)檢查無(wú)誤的待發(fā)布源代碼進(jìn)行編譯和打包,得到待發(fā)布軟件包;推送模塊,用于檢測(cè)待發(fā)布軟件包和應(yīng)用服務(wù)器是否匹配,若匹配,將待發(fā)布軟件包推送到對(duì)應(yīng)用服務(wù)器中。
10、本發(fā)明又一方面提供一種電子設(shè)備,包括:一個(gè)或多個(gè)處理器;存儲(chǔ)裝置,用于存儲(chǔ)一個(gè)或多個(gè)程序,其中,當(dāng)一個(gè)或多個(gè)程序被一個(gè)或多個(gè)處理器執(zhí)行時(shí),使得一個(gè)或多個(gè)處理器執(zhí)行上述實(shí)施例中任一項(xiàng)的方法。
11、本發(fā)明再一方面提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有可執(zhí)行指令,該指令被處理器執(zhí)行時(shí)使處理器執(zhí)行根據(jù)上述實(shí)施例中任一項(xiàng)的方法。
12、本發(fā)明實(shí)施例提供的軟件開(kāi)發(fā)環(huán)境構(gòu)建方法、系統(tǒng)、電子設(shè)備和介質(zhì),通過(guò)生成腳本文件來(lái)搭建與基礎(chǔ)環(huán)境模板一致的開(kāi)發(fā)環(huán)境,在提高效率的同時(shí),能夠降低人工操作錯(cuò)誤的幾率,同時(shí)支持不同環(huán)境的切換與環(huán)境更新。通過(guò)腳本文件生成鏡像,可以實(shí)現(xiàn)軟件開(kāi)發(fā)環(huán)境的自動(dòng)化構(gòu)建和部署,不僅減輕了人工操作的負(fù)擔(dān),還提高了環(huán)境構(gòu)建的智能化水平,使得開(kāi)發(fā)團(tuán)隊(duì)能夠更專注于代碼本身,而不是環(huán)境配置。同時(shí),基于鏡像的部署方式使得軟件開(kāi)發(fā)環(huán)境可以輕松地在不同開(kāi)發(fā)環(huán)節(jié)之間遷移和擴(kuò)展。這適應(yīng)了敏捷開(kāi)發(fā)中頻繁變更和迭代的需求,提高了開(kāi)發(fā)團(tuán)隊(duì)的響應(yīng)速度和靈活性。
1.一種軟件開(kāi)發(fā)環(huán)境構(gòu)建方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的構(gòu)建方法,其特征在于,所述生成軟件開(kāi)發(fā)環(huán)境所需的腳本文件包括:
3.根據(jù)權(quán)利要求2所述的構(gòu)建方法,其特征在于,所述生成軟件腳本部分包括:
4.根據(jù)權(quán)利要求1所述的構(gòu)建方法,其特征在于,所述基于所述腳本文件,制作鏡像包括:
5.根據(jù)權(quán)利要求4所述的構(gòu)建方法,其特征在于,所述制作鏡像之后,還包括:
6.根據(jù)權(quán)利要求1所述的構(gòu)建方法,其特征在于,所述在所述鏡像中,對(duì)檢查無(wú)誤的待發(fā)布源代碼進(jìn)行編譯和打包,得到待發(fā)布軟件包之前,包括:
7.根據(jù)權(quán)利要求1所述的構(gòu)建方法,其特征在于,所述在所述鏡像中,對(duì)檢查無(wú)誤的待發(fā)布源代碼進(jìn)行編譯和打包,得到待發(fā)布軟件包之后,包括:
8.一種軟件開(kāi)發(fā)環(huán)境構(gòu)建系統(tǒng),其特征在于,包括:
9.一種電子設(shè)備,包括:
10.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有可執(zhí)行指令,該指令被處理器執(zhí)行時(shí)使處理器執(zhí)行根據(jù)權(quán)利要求1~7中任一項(xiàng)所述的方法。