一种基于Gitlab的微服务项目代码配置方法及系统技术方案

技术编号:37852408 阅读:13 留言:0更新日期:2023-06-14 22:43
本发明专利技术属于微服务项目代码配置领域,提供了一种基于Gitlab的微服务项目代码配置方法及系统。其中,该方法包括获取业务代码和运维代码;基于Gitlab将业务代码和运维代码拆分到不同微服务项目;通过微服务项目间引用代码的方式,自动化完成微服务项目的部署。本发明专利技术减少了自动化部署相关代码对项目代码的侵入,降低了开发难度,提升了代码安全性;降低了CI/CD流水线的维护难度,简化运维工作流程,提示项目上线效率;使用本方法代码组织管理架构,使得代码开发工作效率提升、代码质量更高,提升了生产环境的稳定性。了生产环境的稳定性。了生产环境的稳定性。

【技术实现步骤摘要】
一种基于Gitlab的微服务项目代码配置方法及系统


[0001]本专利技术属于微服务项目代码配置领域,尤其涉及一种基于Gitlab的微服务项目代码配置方法及系统。

技术介绍

[0002]本部分的陈述仅仅是提供了与本专利技术相关的
技术介绍
信息,不必然构成在先技术。
[0003]Gitlab是当前被广泛使用的开源企业代码仓库管理平台,主要从Group和Project两个维度进行代码和文档管理,其中Group是群组,Project是工程项目,一个Group可以管理多个Project。一般的,一个微服务项目在构建过程中,会放在一个Group中,并在该Group中创建多个微服务子项目Project。CI/CD是指可持续集成持续部署,目前主流的CI/CD工具是jenkins,但是鉴于jenkins联动gitlab需要配置插件以及鉴于目前广泛地使用gitlab来进行版本管理的情况,gitlab

ci搭配自动部署方案渐渐成为更好的替代方案。使用Gitlab

ci作为CI/CD需要在Project中创建.gitlab

ci.yml,如果CI/CD流程复杂还需要创建其他文件,造成对微服务项目代码的侵入,并且不方便DevOps人员的维护。

技术实现思路

[0004]为了解决上述
技术介绍
中存在的技术问题,本专利技术提供一种基于Gitlab的微服务项目代码配置方法及系统,其能够降低CI/CD维护难度,提高代码质量,提高工作效率。
[0005]为了实现上述目的,本专利技术采用如下技术方案:
[0006]本专利技术的第一个方面提供一种基于Gitlab的微服务项目代码配置方法。
[0007]一种基于Gitlab的微服务项目代码配置方法,其包括:
[0008]获取业务代码和运维代码;
[0009]基于Gitlab将业务代码和运维代码拆分到不同微服务项目;
[0010]通过微服务项目间引用代码的方式,自动化完成微服务项目的部署。
[0011]作为一种实施方式,在基于Gitlab将业务代码和运维代码拆分到不同微服务项目的过程中,根据业务流程环节,基于Gitlab将各个业务流程环节所对应的业务代码及运维代码拆分至相匹配的微服务项目中。
[0012]作为一种实施方式,在基于Gitlab将业务代码和运维代码拆分到不同微服务项目之前,还包括:
[0013]在Gitlab中创建Group群组,用于存放微服务各项目。
[0014]作为一种实施方式,在基于Gitlab将业务代码和运维代码拆分到不同微服务项目的过程中,在Group群组中创建微服务项目各个子项目的Project,用于存放项目所对应的业务代码。
[0015]作为一种实施方式,在基于Gitlab将业务代码和运维代码拆分到不同微服务项目的过程中,在Group群组中创建一个部署微服务项目的Project Deploy,用于存放项目相应
运维代码。
[0016]作为一种实施方式,通过微服务项目间引用代码的方式,自动化完成微服务项目的部署的过程包括:
[0017]在部署微服务的项目Project Deploy中构建CI/CD的流水线管道,配置CI/CD通用组件模板;
[0018]在各个微服务子项目Project中引用CI/CD通用组件模板,触发下游微服务部署项目的CI/CD的流水线管道,在部署项目的流水线中,通过触发认证获取部署服务的权限来完成微服务项目的部署。
[0019]本专利技术的第二个方面提供一种基于Gitlab的微服务项目代码配置系统。
[0020]一种基于Gitlab的微服务项目代码配置系统,其包括:
[0021]代码获取模块,其用于获取业务代码和运维代码;
[0022]代码拆分模块,其用于基于Gitlab将业务代码和运维代码拆分到不同微服务项目;
[0023]代码引用模块,其用于通过微服务项目间引用代码的方式,自动化完成微服务项目的部署。
[0024]作为一种实施方式,在基于Gitlab将业务代码和运维代码拆分到不同微服务项目的过程中,根据业务流程环节,基于Gitlab将各个业务流程环节所对应的业务代码及运维代码拆分至相匹配的微服务项目中。
[0025]本专利技术的第三个方面提供一种计算机可读存储介质。
[0026]一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述所述的基于Gitlab的微服务项目代码配置方法中的步骤。
[0027]本专利技术的第四个方面提供一种电子设备。
[0028]一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述所述的基于Gitlab的微服务项目代码配置方法中的步骤。
[0029]与现有技术相比,本专利技术的有益效果是:
[0030]本专利技术通过Gitlab将业务代码和运维代码拆分到不同项目,并通过项目间引用代码的方式,完成自动化部署的过程,减少了自动化部署相关代码对项目代码的侵入,降低了开发难度,提升了代码安全性;降低了CI/CD流水线的维护难度,简化运维工作流程,提示项目上线效率;使用本方法代码组织管理架构,使得代码开发工作效率提升、代码质量更高,提升了生产环境的稳定性。
[0031]本专利技术附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。
附图说明
[0032]构成本专利技术的一部分的说明书附图用来提供对本专利技术的进一步理解,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。
[0033]图1是本专利技术实施例的基于Gitlab的微服务项目代码配置方法流程图;
[0034]图2是本专利技术实施例的微服务项目代码组织管理的结构示意图。
具体实施方式
[0035]下面结合附图与实施例对本专利技术作进一步说明。
[0036]应该指出,以下详细说明都是例示性的,旨在对本专利技术提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本专利技术所属
的普通技术人员通常理解的相同含义。
[0037]需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本专利技术的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
[0038]实施例一
[0039]参照图1,本实施例提供了一种基于Gitlab的微服务项目代码配置方法,其具体包括如下步骤:
[0040]步骤1:获取业务代码和运维代码。
[0041]步骤2:基于Gitlab将业务代码和运维代码拆分到不同微服务项目。
[0042]具体地,在基于Gitlab将业务代码和运维代码拆分到不同本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Gitlab的微服务项目代码配置方法,其特征在于,包括:获取业务代码和运维代码;基于Gitlab将业务代码和运维代码拆分到不同微服务项目;通过微服务项目间引用代码的方式,自动化完成微服务项目的部署。2.如权利要求1所述的基于Gitlab的微服务项目代码配置方法,其特征在于,在基于Gitlab将业务代码和运维代码拆分到不同微服务项目的过程中,根据业务流程环节,基于Gitlab将各个业务流程环节所对应的业务代码及运维代码拆分至相匹配的微服务项目中。3.如权利要求1所述的基于Gitlab的微服务项目代码配置方法,其特征在于,在基于Gitlab将业务代码和运维代码拆分到不同微服务项目之前,还包括:在Gitlab中创建Group群组,用于存放微服务各项目。4.如权利要求3所述的基于Gitlab的微服务项目代码配置方法,其特征在于,在基于Gitlab将业务代码和运维代码拆分到不同微服务项目的过程中,在Group群组中创建微服务项目各个子项目的Project,用于存放项目所对应的业务代码。5.如权利要求3所述的基于Gitlab的微服务项目代码配置方法,其特征在于,在基于Gitlab将业务代码和运维代码拆分到不同微服务项目的过程中,在Group群组中创建一个部署微服务项目的Project Deploy,用于存放项目相应运维代码。6.如权利要求5所述的基于Gitlab的微服务项目代码配置方法,其特征在于,通过微服务项目间引用代码的方式,自动化完成微服务项目...

【专利技术属性】
技术研发人员:王嘉祥周常顺郭猛潘景山
申请(专利权)人:济南超级计算技术研究院
类型:发明
国别省市:

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

1