失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 持续集成[代码流水线管理及Jenkins和gitlab集成]-自动化部署05

持续集成[代码流水线管理及Jenkins和gitlab集成]-自动化部署05

时间:2019-03-03 18:32:23

相关推荐

持续集成[代码流水线管理及Jenkins和gitlab集成]-自动化部署05

安装sonar Scanner

打开/官网 找到下面扫描器 通过这个扫描器可以分析代码分析 因此你也的安装这个扫描器 上传sonar-scanner-2.6.1.zip

下载中文插件包失败,可以通过迅雷下载 手动下载中文插件并上传到此目录下

重启sonar,让插件生效

重启后刷新页面,看到变成中文的了 代码规则这里 一些规则,都是些公共的用法,它会告诉你什么叫好,什么叫不好 装了语言插件才会出现对应代码规则 什么情况下算bug 坏味道,你的代码可能写的没错,但是不规范,风格可能不对。翻译的硬伤 sonar-scanner才是真正扫描代码的,它连接sonar之后,扫描代码,然后把扫描结果存入数据库,sonar界面进行展示

解压和安装,并创建软链接

查看

把sonar-scanner和sonarqube关联起来

取消下面注释

保存,退出

找一些代码 对它进行分析

sonar官方提供了个样板包,有各种源的代码

打开下面地址

/SonarSource

找到下面东西

/SonarSource/sonar-scanning-examples 下载 上传并解压sonar-scanning-examples-master.zip 里面有很多语言

下面可以看到很多源码

查看配置文件

下面配置文件

项目里必须有上面这个配置文件,没有这个配置文件,无法对其进行扫描

样例最新的地址 /SonarSource/sonar-scanning-examples

进行扫描

网页上查看扫描报告 网页上显示的名称和配置文件配置的名称一样

点击进去 右边是自己已经下载的插件,然后才会匹配代码 点开重复的 继续点开可以看到重复的块 它会把重复的部分标识出来 jenkins要集成sonar,要装插件 它会把依赖安装上Jenkins实战Sonar与Jenkins结合这里可以看到sonar的配置

点击下面

相关配置项 先填这些信息,保存 系统管理---全局工具配置 找到扫描器的配置 取消自动安装,到这里意识到sonar Scanner要和jenkins装一个机器上

之前安装在了node1上,需要把它迁移到node2上,和jenkins在一个机器上

把整个目录拷贝过去 node2上检查,并创建软链接 这2个地方改了

保存现在只做到源码管理,没构建这里面就有所有你能干的活Analysis properties这里填的是下面配置文件的内容,复制进去

把下面

改成

复制进去 其它区域都不填写,先保存 右边多了个快捷方式 点击立即构建 查看控制台输出 一些输出 这里配置文件就以参数的形式传输给它了

返回到工程,点击进去 你可以改仪表盘显示 配置控件 你可以添加代码覆盖率的控件 选一个项目demo 保存 你也可以把欢迎删除了 返回仪表盘 jenkins继续编辑配置 还可以设置构建后操作 把项目名改成demo-sonar 再次立即构建Jenkins实战-Job关联和Pipeline新建一个项目构建,这里选择执行shell 想先看看jenkins是以什么用户执行的 保存之后,点击立即构建 查看控制台,看到它以jenkins用户执行的 这就有问题了。部署机是192.168.58.11 是node1,使用的是www用户 jenkins在node2上 生产中,jenkins很多情况下和部署机器也不在一台 通过下面方式可以做到但是需要配置密钥认证 拷贝公钥过去

测试 先保存下点击立即构建,它会失败 提示权限不足给它sudo权限 构建这里加上sudo 保存之后执行还是不可以 把这里加上注释,不让它需要tty 再次构建 执行成功ls -lrt 检查

现在我们有2个,一个是代码质量的,一个是自动部署脚本的 显示阴天的是因为之前执行失败过。有提示开始学钩子脚本这边一提交(push),这边自动构建一遍 jenkins安装此插件 它是一个触发器插件 直接安装 在demo-sonar项目选择下面插件这里选择下一个任务(项目)的名称 搜索即可,出现demo-deploy 没有参数,勾上 保存现在的话,你要是构建demo-sonar,它就会构建demo-deploy 验证下看看 demo-sonar项目,立即构建 看到项目这里也自动执行了。11秒前安装学习piplines插件代码流水线插件,它会执行一系列操作 安装构建插件 使用它,点击选中的加号,新建一个视图 点击OK之后,弹出如下视图 选择初始化的job 显示最近5次的构建 点击保存 点击保存之后显示的 点击run 刷新下也看到右边执行了 点下面按钮可以看到控制台输出的快捷方式Jenkins实战-Jenkins与gitlab集成(Webhook)现在想实现一个功能,代码提交,push到gitlab上 jenkins自动帮你构建

先安装gitlab的钩子脚本 钩子插件已经安装了 配置钩子脚本 先在这里配置 勾选这2个 第二个是当gitlab进行发布的时候,对它进行build 它告诉你,你要在gitlab上填上下面这个url http://192.168.58.12:8080/project/demo-sonar 有一个身份认证的东西 需要再装一个插件才能实现认证 先保存了 安装下面插件 只有装了它才能使用身份验证令牌的方式,让双方验证 生成一个token保存 在gitlab上添加这个钩子脚本 http://192.168.58.12:8080/project/demo-sonar 登录gitlab 在这个项目下找到钩子配置的地方 打开它的wiki https://wiki.jenkins-/display/JENKINS/Build+Token+Root+Plugin 下面告诉你了使用办法 格式如下 buildByToken/build?job=RevolutionTest&token=TacoTuesday

http://192.168.58.12:8080/project/demo-sonar

整合下

http://192.168.58.12:8080/buildByToken/build?job=demo-sonar&token=dc8f07cefb4a25e8c198

job的名称不能错,token也不能错

gitlab上此项目添加好url 注意如果是源码包安装路径不是这样填写 点击add add之后 准备测试,这边先打开日志页面上test一下 成功调用 日志也刷出来了 打开jenkins的pipeline页面,也能看到成功调用模拟生产环境,写个代码,git push之后看看他能否执行

提交到gitlab上

在jenkins页面上看到执行了 打开node2页面,看到页面是最新的了 最好再配置一个构建后操作,它会在构建失败后执行 比如配置构建后发邮件操作这里面缺少自动化测试 你可以在部署后面放一个测试的脚本 比如添加一个demo-test

如果觉得《持续集成[代码流水线管理及Jenkins和gitlab集成]-自动化部署05》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。