[發明專利]一種基于摘要差異樹的部署包處理方法、系統及存儲介質在審
| 申請號: | 202210204550.X | 申請日: | 2022-03-03 |
| 公開(公告)號: | CN114610335A | 公開(公告)日: | 2022-06-10 |
| 發明(設計)人: | 林超群;曾紀康;吳俊;李仁杰;王彪 | 申請(專利權)人: | 羅普特科技集團股份有限公司;羅普特(廈門)系統集成有限公司 |
| 主分類號: | G06F8/61 | 分類號: | G06F8/61;G06F16/13;G06F16/16 |
| 代理公司: | 廈門福貝知識產權代理事務所(普通合伙) 35235 | 代理人: | 郭涵煒 |
| 地址: | 361000 福建省廈門市軟件園三期集*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 摘要 差異 部署 處理 方法 系統 存儲 介質 | ||
1.一種基于摘要差異樹的部署包處理方法,其特征在于,包括以下步驟:
S1:遞歸讀取兩次發布的部署包的文件夾的內容,分別構建以對應所述部署包文件夾目錄為結構的摘要樹并保存;
S2:比較兩個所述摘要樹的內容,構建摘要差異樹,其中,將兩個所述摘要樹中文件夾名不相同的文件夾節點及其子節點的樹結構復制到所述摘要差異樹中,以及將兩個所述摘要樹中文件名不相同的文件節點的樹結構復制到所述摘要差異樹中;
S3:利用所述摘要差異樹對部署包進行增量發布或者對部署包進行文件刪除。
2.根據權利要求1所述的一種基于摘要差異樹的部署包處理方法,其特征在于:在所述步驟S1中,所述構建以對應所述部署包文件夾目錄為結構的摘要樹并保存具體包括:
構建一個空摘要樹;
遞歸讀取部署包的文件夾內容;如果是文件夾,則將該文件夾名記錄到空摘要樹中,并設置空的子樹容器,繼續遞歸遍歷該文件夾里的內容;如果是文件類型,則生成相應的摘要并存入該節點中,從而生成摘要樹;
將摘要樹進行保存。
3.根據權利要求1所述的一種基于摘要差異樹的部署包處理方法,其特征在于:所述步驟S2具體包括以下步驟:
遞歸讀取其中一個摘要樹的內容;
當遞歸節點對比到文件夾類型時,判斷另外一個摘要樹的相同位置是否有和該文件夾名同名的文件夾節點,若有,則遞歸遍歷該文件夾節點的子節點的內容,若沒有,則將新摘要樹的該節點及其子節點的樹結構復制到所述摘要差異樹中;
當遞歸節點對比到文件類型時,判斷另外一個摘要樹的相同位置是否有和該文件名同名的文件,如果有同名文件,則判斷該節點的摘要是否相同,如果摘要相同則繼續遞歸,如果摘要不相同,則將該節點的樹結構復制到摘要差異樹中,如果沒有同名文件,則將該節點的樹結構完整的復制到所述摘要差異樹中。
4.根據權利要求3所述的一種基于摘要差異樹的部署包處理方法,其特征在于:所述部署包包括舊部署包以及新部署包,所述摘要樹包括舊摘要樹和新摘要樹,所述摘要差異樹包括第一摘要差異樹和第二摘要差異樹,所述第一摘要差異樹基于新摘要樹與舊摘要樹比較獲得,所述第二摘要差異樹基于舊摘要樹與新摘要樹比較獲得。
5.根據權利要求4所述的一種基于摘要差異樹的部署包處理方法,其特征在于:在所述步驟S3中,所述利用摘要差異樹對部署包進行增量發布具體包括:
新建一個部署包容器;
遞歸讀取所述第一摘要差異樹,如果遞歸到的樹的節點為文件夾,則在所述部署包容器對應目錄結構路徑上新建一個同名文件夾,如果遞歸到的樹節點為文件,則將所述新部署包對應目錄結構路徑的文件復制到所述部署包容器對應目錄結構路徑中,形成增量部署包;
將增量部署包進行增量發布。
6.根據權利要求4所述的一種基于摘要差異樹的部署包處理方法,其特征在于:在所述步驟S3中,所述利用摘要差異樹對部署包進行文件刪除具體包括:
遞歸遍歷第二摘要差異樹并構建刪除腳本,將所述刪除腳本上傳服務器,從而刪除服務器上舊部署包應刪除的文件。
7.根據權利要求3所述的一種基于摘要差異樹的部署包處理方法,其特征在于:利用fs.writeFile將摘要樹以json的形式進行保存,利用fs.readdir遞歸讀取部署包的文件夾內容,并利用fs.stat判斷目標項是否文件夾。
8.根據權利要求3所述的一種基于摘要差異樹的部署包處理方法,其特征在于:所述如果是文件類型,則生成相應的摘要并存入該節點中具體包括:
如果是文件類型,則利用Node.js的fs模塊讀取文件流,并利用Node.js的crypto模塊對文件生成md5摘要,然后將md5摘要存入該節點中。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于羅普特科技集團股份有限公司;羅普特(廈門)系統集成有限公司,未經羅普特科技集團股份有限公司;羅普特(廈門)系統集成有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202210204550.X/1.html,轉載請聲明來源鉆瓜專利網。





