Continuous integration 使用区块链进行持续集成
我正在写一篇论文,目标是基于区块链的持续集成方法。在阅读中,我注意到对持续集成的理解和实现存在很大分歧,特别是在“构建失败和成功的定义”和“故障处理”这两个点上。我的想法是使用区块链和智能合约作为开发人员的拉取请求和CI服务器的构建结果之间的投票机制。下图是我的想法 当开发人员发送拉取请求时,将向区块链网络提出一个事务,区块链网络将构建候选发送到CI服务器。CI服务器以投票的形式将其结果发布回区块链网络,并根据协商一致机制(多数或绝对投票)接受构建并合并分支 然而,我对区块链的世界还不熟悉,我不清楚如何应用共识机制,如PoW或PoS和智能合约。也许你们中的一些人可以帮我回答一些问题,或者就如何设计它给出建议Continuous integration 使用区块链进行持续集成,continuous-integration,devops,blockchain,Continuous Integration,Devops,Blockchain,我正在写一篇论文,目标是基于区块链的持续集成方法。在阅读中,我注意到对持续集成的理解和实现存在很大分歧,特别是在“构建失败和成功的定义”和“故障处理”这两个点上。我的想法是使用区块链和智能合约作为开发人员的拉取请求和CI服务器的构建结果之间的投票机制。下图是我的想法 当开发人员发送拉取请求时,将向区块链网络提出一个事务,区块链网络将构建候选发送到CI服务器。CI服务器以投票的形式将其结果发布回区块链网络,并根据协商一致机制(多数或绝对投票)接受构建并合并分支 然而,我对区块链的世界还不熟悉,我
这是一篇学士学位论文,我并不想彻底改变计算机科学,我的目标是学习更多关于CI的知识,以及区块链是否能起到任何作用。上述系统的主题和设计已经我的主管批准。除了加密货币之外,使用区块链平台的主要案例有:
- 在相互不信任的参与者之间创建一个可信的操作环境李>
- 当任何节点的消除或恶意意图不会导致整个系统的不可操作性时,构建一个没有故障点的交互系统(技术或组织)李>
- 构建廉价的分布式数据库
关于您的问题(1),PoW或PoS是确定公共区块链平台主链区块的技术机制。您的智能合约将在该协议的基础上运行,并且很可能实现BFT组(PBFT、IBFT等)的共识算法。谢谢您的回答。我理解您对节点所有权和分散点的担忧,并且目前在描述此想法的优点时也有很多困难。与您关于独立CI服务器的观点相关。其想法是通过构建区块链网络来取代TravisCI等集中式解决方案,每个节点为CI构建目的提供计算能力,并赚取交易费作为奖励。”开发商在mempool中输入构建及其奖励价格(类似于Etherum的天然气限值)后(1),然后广播到BCI网络(2)。感兴趣的工作人员执行构建(3)并相互报告结果(4)。如果他们达成一致意见(如“通过”),他们将构建添加到区块链(5)。构建任务的执行可以通过哈希和签署构建日志输出[…]作为可行的工作证明。”我觉得这很有趣,如果我的第一个概念不起作用,我想用它作为替代方案。我认为这缓解了您描述的问题。要保存和分发构建结果,您可以使用IPFS。祝你的项目好运!Спасибо друг :)