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

简介: 微服务持续集成(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

 



相关文章
|
5月前
|
Kubernetes Java 调度
无需接入执行器,0 代码改造实现微服务任务调度
本文提出了一种基于云原生的任务调度新方案,不需要依赖SDK,不依赖语言,实现定时调度和分布式跑批。
347 50
|
5月前
|
Kubernetes 调度 微服务
无需接入执行器,0代码改造实现微服务任务调度
本文提出了一种基于云原生的任务调度新方案,不需要依赖SDK,不依赖语言,实现定时调度和分布式跑批
308 1
|
运维 Devops 持续交付
自动化运维的魔法:打造高效DevOps流水线
【10月更文挑战第34天】在数字化时代的浪潮中,DevOps成为企业追求敏捷、高效和稳定的关键。本文将通过一个真实案例,展示如何构建一个高效的DevOps流水线,实现从代码提交到部署的全自动化流程。我们将探讨流水线设计的哲学、工具选择以及面临的挑战,并分享实际的代码示例和操作步骤,帮助读者理解自动化运维的精髓。
389 2
|
jenkins Devops Java
DevOps实践:Jenkins在持续集成与持续部署中的价值
【10月更文挑战第27天】在快速发展的软件开发领域,DevOps实践日益重要。Jenkins作为一款流行的开源自动化服务器,在持续集成(CI)和持续部署(CD)中扮演关键角色。本文通过案例分析,探讨Jenkins在Java项目中的应用,展示其自动化构建、测试和部署的能力,提高开发效率和软件质量。
485 2
|
10月前
|
人工智能 搜索推荐 前端开发
从代码到心灵对话:我的CodeBuddy升级体验之旅(个性化推荐微服务系统)
本文分享了使用CodeBuddy最新版本的深度体验,重点探讨了Craft智能体、MCP协议和DeepSeek V3三大功能。Craft实现从对话到代码的无缝转化,大幅提升开发效率;MCP协议打通全流程开发,促进团队协作;DeepSeek V3则将代码补全提升至新境界,显著减少Bug并优化跨语言开发。这些功能共同塑造了AI与程序员共生的未来模式,让编程更高效、自然。
960 15
|
存储 监控 Devops
DevOps实践:持续集成/持续部署(CI/CD)的实战指南
DevOps实践:持续集成/持续部署(CI/CD)的实战指南
|
9月前
|
Cloud Native Java Devops
Java 学习路线之环境搭建微服务项目实战及 DevOps 流程实操内容解析
这是一份结合最新技术的Java学习路线,涵盖环境搭建、微服务项目实战及DevOps流程。内容包括2025年版开发环境配置(如SDKMAN管理JDK、)、Gradle构建工具使用、微服务图书管理系统实战(Spring Boot 3.3 + Spring Cloud 2025.0)、云原生部署)、AI融合实践(OpenAI集成)以及性能优化与监控(JFR/Micrometer/Sleuth)。通过每日实践、代码审查和技术分享,帮助你掌握现代企业级开发技能,实现云原生应用的独立开发与部署。资源地址:[点击下载](https://pan.quark.cn/s/14fcf913bae6)。
637 0
|
运维 监控 Devops
自动化运维实践:打造高效的DevOps流水线
在软件开发的快节奏中,自动化运维成为提升效率、确保质量的关键。本文将引导你理解自动化运维的价值,通过实际案例分享如何构建一个高效、可靠的DevOps流水线。我们将从持续集成(CI)开始,逐步深入到持续部署(CD),并展示代码示例来具体说明。准备好让你的运维工作飞跃式进步了吗?让我们开始吧!
|
运维 Devops
自动化运维:从脚本到DevOps的进化之旅
在数字化时代,自动化运维不仅是提高生产效率的关键,更是企业竞争力的象征。本文将带领读者穿越自动化运维的发展历程,从最初的脚本编写到现代DevOps文化的形成,揭示这一演变如何重塑IT行业的工作模式。通过具体案例,我们将展示自动化工具和实践如何简化复杂任务,优化流程,并促进团队协作。你将发现,自动化运维不仅关乎技术的进步,更体现了人、流程和技术三者之间协同增效的深层逻辑。
|
运维 Devops jenkins
DevOps实践:持续集成与持续部署在现代软件开发中的作用
【10月更文挑战第42天】在快节奏的软件开发世界里,DevOps已经成为一种提升效率、确保质量和加速交付的重要方法。本文将深入探讨DevOps的核心组成部分—持续集成(CI)和持续部署(CD)—并展示它们如何通过自动化流程优化开发周期。我们将从基础概念讲起,逐步过渡到实际操作,最终通过一个简单代码示例来演示这一过程。文章旨在为读者提供清晰的指导,帮助他们理解和实现CI/CD流程,从而在软件开发领域取得竞争优势。