本技術(shù)涉及軟件領(lǐng)域,尤其涉及一種軟件部署方法、裝置、終端設(shè)備及計算機可讀存儲介質(zhì)。
背景技術(shù):
1、隨著計算機技術(shù)的發(fā)展,應(yīng)用軟件的應(yīng)用環(huán)境越來越豐富,對應(yīng)用軟件的部署要求也逐步向個性化的方向發(fā)展。具體而言,不同的應(yīng)用平臺具有其特定的環(huán)境配置,相應(yīng)的,將相同的應(yīng)用軟件部署到不同的應(yīng)用平臺上,則需要根據(jù)應(yīng)用平臺的環(huán)境配置進行個性化配置。隨著應(yīng)用軟件版本的升級,針對每個軟件版本,都需要開發(fā)不同應(yīng)用平臺的部署包,這將提高軟件的升級成本。
技術(shù)實現(xiàn)思路
1、本技術(shù)提供一種軟件部署方法、裝置、終端設(shè)備及計算機可讀存儲介質(zhì),解決了現(xiàn)有技術(shù)中軟件升級成本較高的問題。
2、為達到上述目的,本技術(shù)采用如下技術(shù)方案:
3、第一方面,提供一種軟件部署方法,包括:
4、獲取軟件部署任務(wù)的第一配置;
5、在所述軟件部署任務(wù)存在標(biāo)準(zhǔn)配置的情況下,根據(jù)所述標(biāo)準(zhǔn)配置與所述第一配置之間的差異配置執(zhí)行所述軟件部署任務(wù)。
6、本技術(shù)實施例中,相當(dāng)于在標(biāo)準(zhǔn)配置的基礎(chǔ)上考慮差異配置的部分。這樣,在每次軟件版本升級后,只需確定出一個標(biāo)準(zhǔn)配置,不同應(yīng)用平臺的環(huán)境配置均可以該標(biāo)準(zhǔn)配置為基準(zhǔn),根據(jù)差異配置進行軟件部署。通過上述方法,無需針對不同的應(yīng)用平臺開發(fā)不同的部署包,大大降低了軟件升級成本。
7、在第一方面的一種實現(xiàn)方式中,在獲取軟件部署任務(wù)的第一配置之后,所述方法還包括:
8、判斷所述軟件部署任務(wù)是否存在標(biāo)準(zhǔn)配置;
9、在所述軟件部署任務(wù)不存在標(biāo)準(zhǔn)配置的情況下,根據(jù)所述第一配置執(zhí)行所述軟件部署任務(wù)。
10、本技術(shù)實施例中,針對存在標(biāo)準(zhǔn)配置的情況和不存在標(biāo)準(zhǔn)配置的情況,分別設(shè)置不同的部署方式,這樣的實現(xiàn)方式更加靈活,同時能夠有效提高軟件部署的成功率。
11、在第一方面的一種實現(xiàn)方式中,所述判斷所述軟件部署任務(wù)是否存在標(biāo)準(zhǔn)配置,包括:
12、判斷是否存在所述軟件部署任務(wù)對應(yīng)的歷史配置清單,其中,所述歷史配置清單包括所述軟件部署任務(wù)中待部署的目標(biāo)軟件的歷史配置,每組所述歷史配置包括一個歷史軟件版本對應(yīng)的歷史部署環(huán)境;
13、若不存在所述軟件部署任務(wù)對應(yīng)的歷史配置清單,則判定所述軟件部署任務(wù)不存在標(biāo)準(zhǔn)配置;
14、若存在所述軟件部署任務(wù)對應(yīng)的歷史配置清單,則在所述歷史配置清單中查找符合預(yù)設(shè)條件的目標(biāo)配置,其中,所述預(yù)設(shè)條件包括所述目標(biāo)配置中的歷史部署環(huán)境與所述第一部署環(huán)境相匹配;
15、若存在所述目標(biāo)配置,則判定所述軟件部署任務(wù)存在標(biāo)準(zhǔn)配置;
16、若不存在所述目標(biāo)配置,則判定所述軟件部署任務(wù)不存在標(biāo)準(zhǔn)配置。
17、本技術(shù)實施例中,將目標(biāo)軟件的歷史配置整合為歷史配置清單。在軟件部署過程中,通過歷史配置清單可以快捷、清楚地了解目標(biāo)軟件的歷史部署情況,這種方式利于軟件版本的管理。
18、在第一方面的一種實現(xiàn)方式中,所述在所述軟件部署任務(wù)存在標(biāo)準(zhǔn)配置的情況下,根據(jù)所述標(biāo)準(zhǔn)配置與所述第一配置之間的差異配置執(zhí)行所述軟件部署任務(wù),包括:
19、根據(jù)所述目標(biāo)配置確定所述標(biāo)準(zhǔn)配置;
20、獲取所述標(biāo)準(zhǔn)配置與所述第一配置之間的差異配置;
21、根據(jù)所述差異配置執(zhí)行所述軟件部署任務(wù)。
22、與根據(jù)全部的配置信息進行軟件部署相比,本技術(shù)實施例中,根據(jù)差異配置進行軟件部署,能夠有效減少版本存儲空間的使用量。另外,由于無需部署全部的配置信息,能夠大大提高軟件部署效率。
23、在第一方面的一種實現(xiàn)方式中,所述根據(jù)所述目標(biāo)配置確定所述標(biāo)準(zhǔn)配置,包括:
24、將查找到的所述目標(biāo)配置中最先部署的目標(biāo)配置確定為所述軟件部署任務(wù)的標(biāo)準(zhǔn)配置。
25、本技術(shù)實施例中,將目標(biāo)軟件最先部署的目標(biāo)配置作為標(biāo)準(zhǔn)配置,利于后續(xù)的軟件版本管理。
26、在第一方面的一種實現(xiàn)方式中,所述第一配置包括第一部署環(huán)境和第一軟件版本,所述差異配置包括環(huán)境差異信息和版本差異信息;
27、所述獲取所述標(biāo)準(zhǔn)配置與所述第一配置之間的差異配置,包括:
28、將所述第一部署環(huán)境與所述標(biāo)準(zhǔn)配置對應(yīng)的歷史部署環(huán)境進行比對,得到環(huán)境差異信息;
29、將所述第一軟件版本與所述標(biāo)準(zhǔn)配置對應(yīng)的歷史軟件版本進行比對,得到版本差異信息。
30、本技術(shù)實施例中,既考慮了部署環(huán)境的差異,又考慮了軟件版本的差異,能夠保證軟件部署的可靠性。
31、在第一方面的一種實現(xiàn)方式中,所述根據(jù)所述差異配置執(zhí)行所述軟件部署任務(wù),包括:
32、獲取用戶輸入的配置指令;
33、根據(jù)所述配置指令和所述差異配置生成目標(biāo)部署包;
34、根據(jù)所述目標(biāo)部署包執(zhí)行所述軟件部署任務(wù)。
35、在第一方面的一種實現(xiàn)方式中,所述根據(jù)所述配置指令和所述差異配置生成目標(biāo)部署包,包括:
36、若所述配置指令為第一指令,則根據(jù)所述差異配置生成第一部署包,所述第一部署包為所述目標(biāo)部署包。
37、在第一方面的一種實現(xiàn)方式中,所述根據(jù)所述配置指令和所述差異配置生成目標(biāo)部署包,包括:
38、若所述配置指令為第二指令,則根據(jù)所述差異配置生成第一部署包;
39、獲取所述標(biāo)準(zhǔn)配置對應(yīng)的部署包;
40、根據(jù)所述第一部署包和所述標(biāo)準(zhǔn)配置對應(yīng)的部署包生成第二部署包,所述第二部署包為所述目標(biāo)部署包。
41、本技術(shù)實施例中,第一部署包相當(dāng)于僅包括了差異配置,第二部署包相當(dāng)于包括了全部配置。若用戶需要全新部署應(yīng)用平臺,則使用第二部署包進行部署;若用戶需要對應(yīng)用平臺進行更新,則使用第一部署包進行部署。通過上述方式,使得軟件部署更加靈活,利于提高用戶體驗。
42、在第一方面的一種實現(xiàn)方式中,所述差異配置包括環(huán)境差異信息和版本差異信息;
43、所述根據(jù)所述差異配置生成第一部署包,包括:
44、根據(jù)所述環(huán)境差異信息生成文本文件;
45、根據(jù)所述版本差異信息生成二進制文件;
46、根據(jù)所述文本文件和所述二進制文件生成所述第一部署包。
47、由于軟件版本通常涉及開發(fā)過程中的內(nèi)部信息,其數(shù)據(jù)安全要求較高。本技術(shù)實施例中,將與軟件版本相關(guān)的版本差異信息生成二進制文件,利于提高數(shù)據(jù)的安全性。而對于數(shù)據(jù)安全要求較低的環(huán)境差異信息,則生成文本文件,利于管理和后期維護。
48、在第一方面的一種實現(xiàn)方式中,所述根據(jù)所述目標(biāo)部署包執(zhí)行所述軟件部署任務(wù),包括:
49、驗證所述目標(biāo)部署包的有效性,得到驗證結(jié)果;
50、若所述驗證結(jié)果表示驗證通過,則根據(jù)所述目標(biāo)部署包執(zhí)行所述軟件部署任務(wù)。
51、本技術(shù)實施例中,在部署之前,先驗證目標(biāo)部署包的有效性,通過這種方式,能夠有效提高軟件部署的成功率。
52、在第一方面的一種實現(xiàn)方式中,所述在所述軟件部署任務(wù)不存在標(biāo)準(zhǔn)配置的情況下,根據(jù)所述第一配置執(zhí)行所述軟件部署任務(wù),包括:
53、在所述軟件部署任務(wù)不存在標(biāo)準(zhǔn)配置的情況下,根據(jù)所述第一配置生成第三部署包;
54、根據(jù)所述第三部署包執(zhí)行所述軟件部署任務(wù)。
55、本技術(shù)實施例中,第三部署包相當(dāng)于包括了全部的配置信息,由于當(dāng)前不存在標(biāo)準(zhǔn)配置,因此,根據(jù)全部的配置信息進行軟件部署,能夠保證軟件部署的成功率,提供軟件部署的可靠性。
56、在第一方面的一種實現(xiàn)方式中,所述第一配置包括第一部署環(huán)境和第一軟件版本;
57、所述根據(jù)所述第一配置生成第三部署包,包括:
58、根據(jù)所述第一軟件版本和所述第一部署環(huán)境生成所述第三部署包。
59、本技術(shù)實施例中,既考慮了部署環(huán)境,又考慮了軟件版本,能夠保證軟件部署的可靠性。
60、在第一方面的一種實現(xiàn)方式中,在執(zhí)行所述軟件部署任務(wù)之后,所述方法還包括:
61、根據(jù)所述第一配置更新所述軟件部署任務(wù)的歷史配置清單。
62、本技術(shù)實施例中,通過及時更新歷史配置清單,利于后續(xù)對軟件版本的維護。
63、第二方面,提供一種軟件部署裝置,包括:
64、配置獲取單元,用于獲取軟件部署任務(wù)的第一配置;
65、第一部署單元,用于在所述軟件部署任務(wù)存在標(biāo)準(zhǔn)配置的情況下,根據(jù)所述標(biāo)準(zhǔn)配置與所述第一配置之間的差異配置執(zhí)行所述軟件部署任務(wù)。
66、第三方面,本技術(shù)實施例提供了一種終端設(shè)備,包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機程序,所述處理器執(zhí)行所述計算機程序時實現(xiàn)如上述第一方面中任一項所述的軟件部署方法。
67、第四方面,本技術(shù)實施例提供了一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如上述第一方面中任一項所述的軟件部署方法。
68、第五方面,本技術(shù)實施例提供了一種計算機程序產(chǎn)品,當(dāng)計算機程序產(chǎn)品在終端設(shè)備上運行時,使得終端設(shè)備執(zhí)行上述第一方面中任一項所述的軟件部署方法。
69、可以理解的是,上述第二方面至第五方面的有益效果可以參見上述第一方面中的相關(guān)描述,在此不再贅述。
70、上述說明僅是本技術(shù)技術(shù)方案的概述,為了能夠更清楚了解本技術(shù)的技術(shù)手段,而可依照說明書的內(nèi)容予以實施,并且為了讓本技術(shù)的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本技術(shù)的具體實施方式。