一种基于GitOps的区块链系统持续交付方法和装置制造方法及图纸

技术编号:34797668 阅读:13 留言:0更新日期:2022-09-03 20:03
本说明书实施例公开了一种基于GitOps的区块链系统持续交付方法和装置,其中方法,以声明方式初始化区块链配置,所述区块链配置至少包括链级配置和节点配置;提交链级配置至第一Git仓库以及节点配置至第二Git仓库;当更新区块链配置时,包括:从第一Git仓库拉取最新的链级配置,更新链级配置以及提交更新后的链级配置至第一Git仓库;感知于第一Git仓库中链级配置变化,从第一Git仓库拉取链级配置,更新本地节点配置以及提交节点配置至第二Git仓库;感知于第二Git仓库中节点配置的变化,从第二Git仓库拉取节点配置,更新本地区块链应用系统运行环境。本发明专利技术通过GitOps进行持续交付,使用Git仓库管理配置更新,提高了自动交付更改区块链应用系统运行环境的效率。改区块链应用系统运行环境的效率。改区块链应用系统运行环境的效率。

【技术实现步骤摘要】
一种基于GitOps的区块链系统持续交付方法和装置


[0001]本说明书涉及计算机软件
,尤其涉及一种基于GitOps的区块链系统持续交付方法、装置、电子设备和存储介质。

技术介绍

[0002]区块链配置涉及到区块链的多个参与方,由于区块链的去中心化特性,在区块链运行过程中各个节点及其参与方会产生大量的信息交互,还会涉及到对区块链配置进行相应的修改,对区块链配置管理是一个多方协作的场景。使用Git来管理区块链的配置信息可以有效解决多个参与方协作产生区块链配置信息过程中的信息传递、同步以及鉴权等问题。但是这种方案也只到生成或更新区块链系统中每个节点的配置文件,至于节点的部署操作或者有新的参与方加入后节点的配置升级操作仍然需要人工来完成。由于区块链系统多方协作的特点,上线运营之后可能还会持续有参与方加入和退出,导致节点的配置不断变化。手工操作进行配置升级容易出错,且消耗时间比较长。如果不能做到配置变更时,及时完成节点配置的更新部署,导致节点配置落后或者错误,可能会让整个区块链系统存在安全风险。

技术实现思路

[0003]本说明书实施例的目的是针对上述问题,提供一种基于GitOps的区块链系统持续交付方法、装置、电子设备和存储介质。
[0004]为解决上述技术问题,本说明书实施例是这样实现的:
[0005]第一方面,提出了一种基于GitOps的区块链系统持续交付方法,以声明方式初始化区块链配置,所述区块链配置至少包括链级配置和节点配置;提交所述链级配置至第一Git仓库以及所述节点配置至第二Git仓库;当第一参与方更新所述区块链配置时,包括:
[0006]所述第一参与方从所述第一Git仓库拉取最新的链级配置,更新所述链级配置以及提交更新后的所述链级配置至所述第一Git仓库;
[0007]第二参与方感知于所述第一Git仓库中所述链级配置的变化,从所述第一Git仓库拉取更新后的所述链级配置,更新本地所述节点配置以及提交更新后的所述节点配置至所述第二Git仓库;
[0008]应用部署系统感知于所述第二Git仓库中所述节点配置的变化,从所述第二Git仓库拉取更新后的所述节点配置,更新本地区块链应用的相应运行环境。
[0009]第二方面,提出了一种基于GitOps的区块链系统持续交付装置,包括:
[0010]区块链配置初始化模块,用于以声明方式初始化区块链配置,所述区块链配置至少包括链级配置和节点配置;
[0011]区块链配置分仓管理模块,用于提交所述链级配置至第一Git仓库以及所述节点配置至第二Git仓库;
[0012]链级配置更新模块,用于当第一参与方更新所述区块链配置时,从所述第一Git仓
库拉取最新的链级配置,更新所述链级配置以及提交更新后的所述链级配置至所述第一Git仓库;
[0013]节点配置更新模块,用于第二参与方感知于所述第一Git仓库中所述链级配置的变化,从所述第一Git仓库拉取更新后的所述链级配置,更新本地所述节点配置以及提交更新后的所述节点配置至所述第二Git仓库;
[0014]区块链应用系统运行环境更新模块,用于应用部署系统感知于所述第二Git仓库中所述节点配置的变化,从所述第二Git仓库拉取更新后的所述节点配置,更新本地区块链应用的相应运行环境。
[0015]第三方面,提出了一种电子设备,包括:处理器;以及
[0016]被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行第一方面所述的方法。
[0017]第四方面,提出了一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行第一方面所述的方法。
[0018]本说明书可以达到至少以下技术效果:
[0019]本专利技术使用GitOps实现区块链系统持续交付,通过以声明式方式初始化区块链系统配置,避免了传统的传递配置变更动作方式导致的配置不一致的问题;链级和节点配置分离存储保证了配置变更的可追溯性和可审查性以及私有配置信息的安全性;自动实现了从配置变更到最终更新实际运行环境配置,提高了区块链系统配置变更效率。
附图说明
[0020]为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0021]图1为本说明书实施例提供的基于GitOps的区块链系统持续交付方法示意图之一。
[0022]图2为本说明书实施例提供的基于GitOps的区块链系统持续交付方法示意图之二。
[0023]图3为本说明书实施例提供的基于GitOps的区块链系统持续交付方法示意图之三。
[0024]图4为本说明书实施例提供的基于GitOps的区块链系统持续交付方法示意图之四。
[0025]图5为本说明书实施例提供的基于GitOps的区块链系统持续交付方法示意图之五。
[0026]图6为本说明书实施例提供的基于GitOps的区块链系统持续交付装置示意图之一。
[0027]图7为本说明书实施例提供的基于GitOps的区块链系统持续交付装置示意图之二。
[0028]图8为本说明书的一个实施例提供的电子设备的结构示意图。
具体实施方式
[0029]为了使本
的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
[0030]下面通过具体的实例对本说明书所涉及的一种基于GitOps的区块链系统持续交付的方案进行详述。
[0031]关键术语
[0032]Git:是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。GitHub是一个网站,用于广大开发者开源自己的代码,也提供私有仓库的付费功能,而它采用的版本控制软件就是Git。类似地,GitLab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。基本的Git工作流程是:在工作区中修改文件;将你想要下次提交的更改选择性地暂存,这样只会将更改的部分添加到暂存区;提交更新,找到暂存区的文件,将快照永久性存储到Git目录。如果Git目录中保存着特定版本的文件,就属于已提交状态。如果文件已修改并放入暂存区,就属于已暂存状态。如果自上次检出后,作了本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于GitOps的区块链系统持续交付方法,其特征在于,以声明方式初始化区块链配置,所述区块链配置至少包括链级配置和节点配置;提交所述链级配置至第一Git仓库以及所述节点配置至第二Git仓库;当第一参与方更新所述区块链配置时,包括:所述第一参与方从所述第一Git仓库拉取最新的链级配置,更新所述链级配置以及提交更新后的所述链级配置至所述第一Git仓库;第二参与方感知于所述第一Git仓库中所述链级配置的变化,从所述第一Git仓库拉取更新后的所述链级配置,更新本地所述节点配置以及提交更新后的所述节点配置至所述第二Git仓库;应用部署系统感知于所述第二Git仓库中所述节点配置的变化,从所述第二Git仓库拉取更新后的所述节点配置,更新本地区块链应用的相应运行环境。2.根据权利要求1所述的方法,其特征在于,所述以声明方式初始化区块链配置,包括根据所述区块链配置初始化对应的数据结构,所述数据结构至少包括对应于所述链级配置的数据结构和对应于所述节点配置的数据结构。3.根据权利要求1所述的方法,其特征在于,所述第一Git仓库用于保存公开配置信息,以及所述第二Git仓库用于保存私有配置信息。4.根据权利要求1所述的方法,其特征在于,所述第一参与方提交更新后的所述链级配置至所述第一Git仓库,包括:对更新后的所述链级配置发起审查,以及在通过区块链参与方对所述链级配置修改的审查后合并至所述第一Git仓库主分支。5.根据权利要求1所述的方法,其特征在于,所述第二参与方感知于所述第一Git仓库中所述链级配置的变化为采用发布订阅方式,包括WebHook方式。6.根据权利要求1所述的方法,其特征在于,还包括当更新本地区块链应用的运行环境出现异常时,分别调用所述第一Git仓库和所述第二Git仓库中的历史配置恢复本地区块链应用的运行环境。7.一种基于GitOps的区块链系统持续交付装置,其特征在于,包括:区块链配置初始化模块,用于以声明方式初始化区块链配置,所述区块链配置至少包括链级配置和节点配置;区块链配置分仓管理模块,用于提交所述链级配置至第一Git仓库以及所述节点配置至第二Git仓库;链级配置更新模块,用...

【专利技术属性】
技术研发人员:王晓亮宁志伟
申请(专利权)人:苏州长通互联科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1