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

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
注册配置 MSE Nacos/ZooKeeper,118元/月
简介: 微服务持续集成(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天前
|
敏捷开发 存储 运维
深入理解后端开发中的微服务架构
在现代软件开发领域,微服务架构已经成为一种重要的设计模式。它通过将复杂的应用程序分解为一套小的、独立的服务来促进敏捷开发和快速迭代。本文旨在探索微服务架构的核心概念、优势与挑战,并结合具体案例分析其在实际应用中的表现。我们将从服务划分策略、通信机制,到数据一致性保障等方面,逐一剖析微服务架构的实施细节。此外,文章还将讨论微服务架构与传统单体架构的区别,以及如何平滑地从传统架构迁移至微服务架构。
|
10天前
|
Kubernetes 持续交付 Docker
现代后端开发中的微服务架构与容器化技术
本文探讨了现代后端开发中微服务架构与容器化技术的重要性和应用。微服务架构通过服务的拆分和独立部署提升了系统的灵活性和可维护性,而容器化技术则为微服务的快速部署和管理提供了解决方案。文章深入分析了微服务架构的优势、挑战以及如何利用容器化技术来支持微服务架构的实现。最后,通过实际案例展示了微服务与容器化技术在提升应用开发效率和系统稳定性方面的应用实践。【7月更文挑战第5天】
|
10天前
|
SQL 数据库 微服务
微服务03,最简单的Demo,我们每个服务不能重复开发相同业务,微服务数据独立,不要访问其他微服务的数据库,微服务的特点之一是提供不能功能的数据库互相分割,微服务需要根据业务模块拆分,做到单一职责,
微服务03,最简单的Demo,我们每个服务不能重复开发相同业务,微服务数据独立,不要访问其他微服务的数据库,微服务的特点之一是提供不能功能的数据库互相分割,微服务需要根据业务模块拆分,做到单一职责,
|
8天前
|
Linux Apache C++
FFmpeg开发笔记(三十五)Windows环境给FFmpeg集成libsrt
该文介绍了如何在Windows环境下为FFmpeg集成SRT协议支持库libsrt。首先,需要安装Perl和Nasm,然后编译OpenSSL。接着,下载libsrt源码并使用CMake配置,生成VS工程并编译生成srt.dll和srt.lib。最后,将编译出的库文件和头文件按照特定目录结构放置,并更新环境变量,重新配置启用libsrt的FFmpeg并进行编译安装。该过程有助于优化直播推流的性能,减少卡顿问题。
40 2
FFmpeg开发笔记(三十五)Windows环境给FFmpeg集成libsrt
|
9天前
|
Linux
FFmpeg开发笔记(三十四)Linux环境给FFmpeg集成libsrt和librist
《FFmpeg开发实战》书中介绍了直播的RTSP和RTMP协议,以及新协议SRT和RIST。SRT是安全可靠传输协议,RIST是可靠的互联网流传输协议,两者于2017年发布。腾讯视频云采用SRT改善推流卡顿。以下是Linux环境下为FFmpeg集成libsrt和librist的步骤:下载安装源码,配置、编译和安装。要启用这些库,需重新配置FFmpeg,添加相关选项,然后编译和安装。成功后,通过`ffmpeg -version`检查版本信息以确认启用SRT和RIST支持。详细过程可参考书中相应章节。
16 1
FFmpeg开发笔记(三十四)Linux环境给FFmpeg集成libsrt和librist
|
1天前
|
运维 监控 安全
DevOps文化下的高效运维实践
【7月更文挑战第14天】在软件开发与运维日益融合的今天,DevOps不仅仅是一种技术实践,更是一种文化的转变。本文将探讨如何在DevOps文化的引领下,通过一系列高效运维的策略与工具,实现持续集成、持续部署和持续监控,进而提高软件交付的速度与质量。我们将从自动化、监控、日志管理、容器化以及安全等方面展开讨论,旨在为读者提供一套完整的高效运维解决方案。
|
1天前
|
弹性计算 运维 Kubernetes
自动化运维的新篇章:容器编排与微服务架构
【7月更文挑战第14天】在数字化转型的浪潮中,企业对运维效率和系统可靠性的需求日益增长。本文深入探讨了自动化运维的最新趋势——容器编排和微服务架构,并阐述了如何通过这些技术提升运维效率、降低系统复杂性以及提高服务的可用性和可扩展性。文章不仅介绍了相关技术和工具的选择,还提供了实际案例分析,旨在为读者提供一套完整的解决方案框架,以适应快速变化的市场需求。
|
2天前
|
Kubernetes 监控 Docker
现代后端开发中的微服务架构与容器化技术
传统的单体应用架构在面对现代大规模应用需求时已显不足,微服务架构及其伴随的容器化技术因其灵活性和可伸缩性成为了主流选择。本文探讨了微服务架构的优势及其与传统架构的对比,详细分析了容器化技术如何支持微服务的部署与管理,以及实际应用中的最佳实践。 【7月更文挑战第13天】
6 2
|
5天前
|
运维 Kubernetes 开发者
现代后端开发中的微服务架构与容器化技术
在当今快速发展的软件开发领域中,微服务架构和容器化技术日益成为开发者关注的焦点。本文将探讨微服务架构的优势、常见的容器化解决方案以及它们如何共同推动后端开发的现代化进程。 【7月更文挑战第9天】
16 5
|
3天前
|
敏捷开发 监控 Kubernetes
现代后端开发中的微服务架构设计与实现
在当今快速发展的软件开发领域,微服务架构因其灵活性和可伸缩性而日益流行。本文探讨了微服务架构的设计原则、实现步骤以及其在后端开发中的应用,旨在帮助开发人员理解如何构建和优化现代化的后端服务系统。 【7月更文挑战第12天】