Devops 开发运维高级篇之微服务持续集成代码上传和代码检查

本文涉及的产品
任务调度 XXL-JOB 版免费试用,400 元额度,开发版规格
注册配置 MSE Nacos/ZooKeeper,182元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 微服务持续集成(1)-项目代码上传到Gitlab微服务持续集成(2)-从Gitlab拉取项目源码微服务持续集成(3)-提交到SonarQube代码审查

微服务持续集(1)-项目代码上传到Gitlab


现在gitlab创建两个项目:


2387773-20220225170257087-2070268992.png

2387773-20220225170300934-2054159954.png

 


 

然后先做后端提交

后端项目先提交到本地git

2387773-20220225170341412-1079524001.png2387773-20220225170354108-1575723460.png

 

然后新定义远程仓库地址:

2387773-20220225170418711-127045897.png2387773-20220225170434439-1568306605.png

 

 

复制gitlabtensquare_back项目中httpURL

2387773-20220225170553427-145406535.png

 

提交完查看gitlab:

2387773-20220225170639403-1888438099.png

 

 

然后再做下一步:


Windows本地安装TortoiseGit(小乌龟)用来提交前端项目代码


2387773-20220225170745993-1933345330.png

 

 

 

2387773-20220225170750624-1270731720.png

 

都是默认下一步:

然后打开项目目录:右击设置:

2387773-20220225170942777-769445299.png

 

 

右击小乌龟git打开设置提交远程URL前端项目的URL)http的

2387773-20220225171032428-154331111.png


 

 

确定后就push


 

2387773-20220225171131456-1219944536.png2387773-20220225171153009-2080159871.png

 

然后查看gitlab的tensquare_front1项目,刷新看一下。

 

 

 

 

微服务持续集(2)-Gitlab拉取项目源码

 

在jenkins里创建一个任务

2387773-20220225171313395-1373179835.png

 2387773-20220225171522117-1274261345.png

 

 

然后就是创建jenkinsfile文件:

 

2387773-20220225171553272-1573305296.png

2387773-20220225171719364-77333164.png

写完记得push!

 

2387773-20220225171834961-4718153.png

 

 

然后开始构建,在jenkins服务器上查看构建项目:


 

 

2387773-20220225172052343-1869868274.png

2387773-20220225172106362-1915115772.png

 


微服务持续集成(3)-提交到SonarQube代码审查


1) 创建项目,并设置参数


创建tensquare_back项目,添加一个选择参数

2387773-20220225172145364-1823642515.png2387773-20220225172233788-826406724.png

 

 

2)每个项目的根目录下添加sonar-project.properties 我这个都有了

主要就是查看是否一致:

sonar.projectKey和sonar.projectName


3)修改Jenkinsfile构建脚本


//git的凭证
def git_auth="d5bb0e98-15f2-477f-8db7-2c33ecc6c644"
//git的URL
def git_url="git@20.0.0.20:root/tensquare_back.git"
node {
    stage('pull code') {
        checkout([$class: 'GitSCM', branches: [[name: "*/${branch}"]], extensions: [], userRemoteConfigs: [[credentialsId: "${git_auth}", url: "${git_url}"]]])
    }
    stage('check code') {
                        //定义SonarQubeScanner工具
                        def scannerHome = tool 'sonar-scanner'
                        //引用SonarQube系统环境
                        withSonarQubeEnv('sonarqube') {
                        sh """
                            cd ${project_name}
                            ${scannerHome}/bin/sonar-scanner
                             """
                        }
    }
}


2387773-20220225172554423-1699894538.png

 

 

 

然后提交

去构建:

2387773-20220225172627366-1946542982.png

 

全部构建后,去sonarqube刷新看一下!

2387773-20220225172706108-2110919088.png

 



相关文章
|
3月前
|
运维 监控 Kubernetes
“你那边修好了吗?”——DevOps时代,运维团队到底该怎么配合?
“你那边修好了吗?”——DevOps时代,运维团队到底该怎么配合?
90 2
|
6月前
|
人工智能 安全 Java
智慧工地源码,Java语言开发,微服务架构,支持分布式和集群部署,多端覆盖
智慧工地是“互联网+建筑工地”的创新模式,基于物联网、移动互联网、BIM、大数据、人工智能等技术,实现对施工现场人员、设备、材料、安全等环节的智能化管理。其解决方案涵盖数据大屏、移动APP和PC管理端,采用高性能Java微服务架构,支持分布式与集群部署,结合Redis、消息队列等技术确保系统稳定高效。通过大数据驱动决策、物联网实时监测预警及AI智能视频监控,消除数据孤岛,提升项目可控性与安全性。智慧工地提供专家级远程管理服务,助力施工质量和安全管理升级,同时依托可扩展平台、多端应用和丰富设备接口,满足多样化需求,推动建筑行业数字化转型。
228 5
|
6月前
|
人工智能 Java 数据库
飞算 JavaAI:革新电商订单系统 Spring Boot 微服务开发
在电商订单系统开发中,传统方式耗时约30天,需应对复杂代码、调试与测试。飞算JavaAI作为一款AI代码生成工具,专注于简化Spring Boot微服务开发。它能根据业务需求自动生成RESTful API、数据库交互及事务管理代码,将开发时间缩短至1小时,效率提升80%。通过减少样板代码编写,提供规范且准确的代码,飞算JavaAI显著降低了开发成本,为软件开发带来革新动力。
|
3月前
|
IDE Java API
Java 17 新特性与微服务开发的实操指南
本内容涵盖Java 11至Java 17最新特性实战,包括var关键字、字符串增强、模块化系统、Stream API、异步编程、密封类等,并提供图书管理系统实战项目,帮助开发者掌握现代Java开发技巧与工具。
199 1
|
3月前
|
敏捷开发 运维 数据可视化
DevOps看板工具中的协作功能:如何打破开发、测试与运维之间的沟通壁垒
在DevOps实践中,看板工具通过可视化任务管理和自动化流程,提升开发与运维团队的协作效率。它支持敏捷开发、持续交付,助力团队高效应对需求变化,实现跨职能协作与流程优化。
|
2月前
|
机器学习/深度学习 人工智能 运维
DevOps 不香了?可能是你还没用上“智能运维”!
DevOps 不香了?可能是你还没用上“智能运维”!
107 0
|
4月前
|
敏捷开发 自然语言处理 IDE
通义灵码+云效 DevOps MCP:通过云效工作项自动生成代码并提交请求
本文将详细介绍如何利用云效MCP服务,根据工作项内容生成对应代码、创建分支、提交代码,并发起合并请求。
|
5月前
|
人工智能 数据可视化 JavaScript
颠覆开发效率!国内首个微服务编排框架Juggle开源啦!
Juggle是国内首个开源的微服务编排框架,专注于解决企业微服务进程中接口重复开发、系统对接复杂等问题。它提供零代码、低代码和AI增强功能,通过可视化拖拽快速组装简单API为复杂接口,支持多协议、多语言脚本和流程多版本管理。相比国外框架如Conductor,Juggle更贴合国内需求,具备高效开发、企业级可靠性及信创适配等优势,助力企业实现敏捷创新与数字化转型。
颠覆开发效率!国内首个微服务编排框架Juggle开源啦!
|
11月前
|
消息中间件 API 持续交付
后端开发中的微服务架构实践####
【10月更文挑战第21天】 本文深入探讨了微服务架构在后端开发中的应用,从基本概念出发,详细阐述了微服务的核心优势、设计原则及关键技术。通过实际案例分析,揭示了微服务如何助力企业应对复杂业务需求,提升系统的可扩展性、灵活性与可靠性。同时,也指出了实施微服务过程中可能面临的挑战,并提供了相应的解决方案和最佳实践。 ####
132 3
|
4月前
|
Java API 微服务
Java 21 与 Spring Boot 3.2 微服务开发从入门到精通实操指南
《Java 21与Spring Boot 3.2微服务开发实践》摘要: 本文基于Java 21和Spring Boot 3.2最新特性,通过完整代码示例展示了微服务开发全流程。主要内容包括:1) 使用Spring Initializr初始化项目,集成Web、JPA、H2等组件;2) 配置虚拟线程支持高并发;3) 采用记录类优化DTO设计;4) 实现JPA Repository与Stream API数据访问;5) 服务层整合虚拟线程异步处理和结构化并发;6) 构建RESTful API并使用Springdoc生成文档。文中特别演示了虚拟线程配置(@Async)和StructuredTaskSco
479 0

热门文章

最新文章