本技術(shù)涉及軟件開發(fā),尤其涉及一種服務(wù)部署方法、裝置、設(shè)備、存儲介質(zhì)及程序產(chǎn)品。
背景技術(shù):
1、在現(xiàn)代軟件開發(fā)中,對著軟件版本迭代頻率的增加,軟件開發(fā)對應(yīng)的服務(wù)部署也面臨著快速迭代的挑戰(zhàn)。在現(xiàn)有的軟件開發(fā)技術(shù)中,為了解決服務(wù)部署存在的挑戰(zhàn),將云計算技術(shù)和軟件開發(fā)技術(shù)相結(jié)合,引入了虛擬化技術(shù)以及容器技術(shù),并通過持續(xù)集成以及才繼續(xù)部署的方式實現(xiàn)自動化的服務(wù)構(gòu)建以及部署。
2、現(xiàn)有技術(shù)中,服務(wù)相關(guān)程序編寫并上傳至對應(yīng)代碼倉庫之后,服務(wù)的部署可以大致分為兩個階段,第一階段是服務(wù)的構(gòu)建,結(jié)合服務(wù)對應(yīng)的代碼倉庫進行服務(wù)構(gòu)建并生成對應(yīng)的容器鏡像;第二階段是服務(wù)的部署,通過部署平臺配置服務(wù)具體的部署信息并將服務(wù)部署在云平臺中。
3、然而,現(xiàn)有技術(shù)中的服務(wù)在面對不同環(huán)境進行部署時,需要重新執(zhí)行部署流程或者修改部署配置信息,從而導(dǎo)致現(xiàn)有技術(shù)中存在服務(wù)部署方案可復(fù)用性低的問題。
技術(shù)實現(xiàn)思路
1、本技術(shù)提供一種服務(wù)部署方法、裝置、設(shè)備、存儲介質(zhì)及程序產(chǎn)品,用以解決現(xiàn)有技術(shù)存在的系統(tǒng)開發(fā)效率較低的技術(shù)問題。
2、第一方面,本技術(shù)提供一種服務(wù)部署方法,包括:
3、獲取服務(wù)部署請求,服務(wù)部署請求包括待部署服務(wù)需要部署的目標(biāo)服務(wù)環(huán)境信息;
4、根據(jù)待部署服務(wù)的目標(biāo)部署類型,確定是否存在與目標(biāo)部署類型對應(yīng)的目標(biāo)服務(wù)部署模板;其中,服務(wù)部署模板用于將服務(wù)部署至服務(wù)部署模板對應(yīng)的服務(wù)環(huán)境中;
5、若存在待部署服務(wù)對應(yīng)的目標(biāo)服務(wù)部署模板,則判斷目標(biāo)服務(wù)部署模板中是否包含目標(biāo)服務(wù)環(huán)境信息;
6、若目標(biāo)服務(wù)部署模板中不包含目標(biāo)服務(wù)環(huán)境信息,則將服務(wù)部署請求中包含的目標(biāo)服務(wù)環(huán)境信息新增至目標(biāo)服務(wù)部署模板中;
7、將目標(biāo)服務(wù)部署模板中的目標(biāo)服務(wù)環(huán)境信息與服務(wù)部署請求進行關(guān)聯(lián);
8、執(zhí)行服務(wù)部署請求,調(diào)用目標(biāo)服務(wù)部署模板,將待部署服務(wù)部署至目標(biāo)服務(wù)環(huán)境信息對應(yīng)的服務(wù)環(huán)境中。
9、在一種可能的設(shè)計中,在將目標(biāo)服務(wù)部署模板中的目標(biāo)服務(wù)環(huán)境信息與服務(wù)部署請求進行關(guān)聯(lián)之前,還包括:
10、創(chuàng)建待部署服務(wù)對應(yīng)的服務(wù)版本以及代碼分支;其中,服務(wù)版本用于維護待部署服務(wù)創(chuàng)建或者更新之后的版本信息,代碼繁殖用于為待部署服務(wù)的構(gòu)建提供代碼支持。
11、在一種可能的設(shè)計中,目標(biāo)服務(wù)部署模板還包括容器編排信息,容器編排信息包括待部署服務(wù)的容器信息和待部署服務(wù)的附屬服務(wù)的待部署服務(wù);
12、相應(yīng)的,在執(zhí)行服務(wù)部署請求,調(diào)用目標(biāo)服務(wù)部署模板,將待部署服務(wù)部署至目標(biāo)服務(wù)環(huán)境信息對應(yīng)的服務(wù)環(huán)境中之前,方法還包括:
13、若目標(biāo)服務(wù)部署模板中的第一容器編排信息和服務(wù)部署請求中攜帶的第二容器編排信息不一致,則根據(jù)第二容器編排信息對目標(biāo)服務(wù)部署模板進行更新。
14、在一種可能的設(shè)計中,目標(biāo)服務(wù)部署模板還包括流水線子模板、用于調(diào)用流水線子模板的接口信息、代碼倉地址。
15、在一種可能的設(shè)計中,方法包括:
16、若不存在待部署服務(wù)對應(yīng)的目標(biāo)服務(wù)部署模板,則根據(jù)流水線子模板、接口信息、代碼倉地址、目標(biāo)服務(wù)環(huán)境信息以及第二容器編排信息,按照預(yù)設(shè)模版編寫策略,編寫目標(biāo)服務(wù)部署模板。
17、在一種可能的設(shè)計中,目標(biāo)部署類型包括前端部署或后端部署。
18、第二方面,本技術(shù)提供一種服務(wù)部署裝置,包括:
19、獲取模塊,用于獲取服務(wù)部署請求,服務(wù)部署請求包括待部署服務(wù)需要部署的目標(biāo)服務(wù)環(huán)境信息;
20、第一處理模塊,用于根據(jù)待部署服務(wù)的目標(biāo)部署類型,確定是否存在與目標(biāo)部署類型對應(yīng)的目標(biāo)服務(wù)部署模板;其中,服務(wù)部署模板用于將服務(wù)部署至服務(wù)部署模板對應(yīng)的服務(wù)環(huán)境中;
21、第二處理模塊,用于在存在待部署服務(wù)對應(yīng)的目標(biāo)服務(wù)部署模板時,判斷目標(biāo)服務(wù)部署模板是否包含目標(biāo)服務(wù)環(huán)境信息;
22、第三處理模塊,用于在目標(biāo)服務(wù)部署模板中不包含目標(biāo)服務(wù)環(huán)境信息時,將服務(wù)部署請求中包含的目標(biāo)服務(wù)環(huán)境信息新增至目標(biāo)服務(wù)部署模板中;
23、第四處理模塊,用于將目標(biāo)服務(wù)部署模板中的目標(biāo)服務(wù)環(huán)境信息與服務(wù)部署請求進行關(guān)聯(lián);
24、執(zhí)行模塊,用于執(zhí)行服務(wù)部署請求,調(diào)用目標(biāo)服務(wù)部署模板,將待部署服務(wù)部署至目標(biāo)服務(wù)環(huán)境信息對應(yīng)的服務(wù)環(huán)境中。
25、在一種可能的設(shè)計中,第四處理模塊還用于:
26、創(chuàng)建待部署服務(wù)對應(yīng)的服務(wù)版本以及代碼分支;其中,服務(wù)版本用于維護待部署服務(wù)創(chuàng)建或者更新之后的版本信息,代碼分支用于為待部署服務(wù)的構(gòu)建提供代碼支持。
27、在一種可能的設(shè)計中,目標(biāo)服務(wù)部署模板還包括容器編排信息,容器編排信息包括待部署服務(wù)的容器信息和待部署服務(wù)的附屬服務(wù)的待部署服務(wù);
28、相應(yīng)的,在執(zhí)行服務(wù)部署請求,調(diào)用目標(biāo)服務(wù)部署模板,將待部署服務(wù)部署至目標(biāo)服務(wù)環(huán)境信息對應(yīng)的服務(wù)環(huán)境中之前,執(zhí)行模塊還用于:
29、在目標(biāo)服務(wù)部署模板中的第一容器編排信息和服務(wù)部署請求中攜帶的第二容器編排信息不一致時,根據(jù)第二容器編排信息對目標(biāo)服務(wù)部署模板進行更新。
30、在一種可能的設(shè)計中,目標(biāo)服務(wù)部署模板還包括流水線子模板、用于調(diào)用流水線子模板的接口信息、代碼倉地址。
31、在一種可能的設(shè)計中,第二處理模塊還用于:
32、在不存在待部署服務(wù)對應(yīng)的目標(biāo)服務(wù)部署模板時,根據(jù)流水線子模板、接口信息、代碼倉地址、目標(biāo)服務(wù)環(huán)境信息以及第二容器編排信息,按照預(yù)設(shè)模版編寫策略,編寫目標(biāo)服務(wù)部署模板。
33、在一種可能的設(shè)計中,目標(biāo)部署類型包括前端部署或后端部署。
34、第三方面,本技術(shù)實施例提供一種電子設(shè)備,包括:至少一個處理器和存儲器;存儲器存儲計算機執(zhí)行指令;至少一個處理器執(zhí)行存儲器存儲的計算機執(zhí)行指令,使得至少一個處理器執(zhí)行如上第一方面以及第一方面各種可能的設(shè)計的服務(wù)部署方法。
35、第四方面,本技術(shù)實施例提供一種計算機可讀存儲介質(zhì),計算機可讀存儲介質(zhì)中存儲有計算機執(zhí)行指令,當(dāng)處理器執(zhí)行計算機執(zhí)行指令時,實現(xiàn)如上第一方面以及第一方面各種可能的設(shè)計的服務(wù)部署方法。
36、第五方面,本技術(shù)實施例提供一種計算機程序產(chǎn)品,包括計算機程序,計算機程序被處理器執(zhí)行時,實現(xiàn)如上第一方面以及第一方面各種可能的設(shè)計的服務(wù)部署方法。
37、本技術(shù)提供的服務(wù)部署方法、裝置、設(shè)備、存儲介質(zhì)及程序產(chǎn)品,通過獲取需要部署的服務(wù)對應(yīng)的部署請求,判斷該服務(wù)部署請求是否存在對應(yīng)的目標(biāo)服務(wù)部署模板;在存在目標(biāo)服務(wù)部署模板時,判斷目標(biāo)服務(wù)模板中是否包含對應(yīng)的目標(biāo)服務(wù)環(huán)境信息,若是,則將目標(biāo)服務(wù)模板中的目標(biāo)服務(wù)環(huán)境信息和服務(wù)部署請求進行關(guān)聯(lián);并調(diào)用目標(biāo)服務(wù)模板執(zhí)行服務(wù)部署請求,將待部署服務(wù)部署至目標(biāo)服務(wù)環(huán)境信息對應(yīng)的服務(wù)環(huán)境中。本技術(shù)通過服務(wù)部署模板實現(xiàn)服務(wù)的自動化部署,并且適用于多種服務(wù);在存在和服務(wù)部署模板適配的服務(wù)需要進行部署的時候,只需要將服務(wù)部署模板中的環(huán)境信息和對應(yīng)的服務(wù)部署請求進行關(guān)聯(lián),不需要重新構(gòu)建服務(wù)部署流程,從而實現(xiàn)了提升服務(wù)部署方案的可復(fù)用性。