【03】Jenkins:SonarQube】的更多相关文章

写在前面的话 SonarQube 这个服务有些人熟悉,有些人陌生.对于我们这样的运维人员,我们需要了解的是,SonarQube 是一个代码质量管理平台,懂得怎么安装配置,这其实就差不多足够了.我们在 Jenkins 这里专门提到这个东西,其原因就在于 Jenkins 有这么个插件,这个插件还被相当多的公司用到.所以得提出了聊聊他. SonarQube 的安装 目前这样的服务大多都已经提供了 docker 安装的方式,如果你对于 docker 很熟悉且你本身在使用,那么你可以使用.我这里还是使用比…
写在前面的话 我们在使用普通的构建任务的时候使用了 Sonar 做代码质量管理,也使用了 Publish Over SSH 插件中更新上线,但是我们在 Pipeline 怎么使用他们呢. 如果你没有查看之前的 Sonar 章节,建议倒回去专门看一遍: https://www.cnblogs.com/Dy1an/p/11198822.html 否则有些概念无法理解! Pipeline 中使用 Sonar 我们操作的前提都是以及安装了 Sonar,具体怎么安装可以参考前面的章节. 1. Sonar…
写在前面的话 经过上一节,我们顺利将 K8S 集群搭建了起来,在其中我也简单的谈了一下关于 K8S 的网络.那么这一节我们主要谈谈如何来简单的使用 K8S 的命令.当然这些命令有很多,我们只是通过一个小例子来操作讲解.是不全面的. 但是其实更多的目的是为了介绍一种方法.在后期的应用中,我们也会和 docker 一样,慢慢的摒弃掉这种纯手敲命令的形式,而且换成更为直观的资源清单(yaml 文件)的形式. 而且本章节我们会好好谈谈在 K8S 中非常重要的几个概念中的一部分,主要包括:Pod 和 Se…
写在前面的话 在某些时候,我们希望能够实现这样一个功能,当用户提交东西到 gitlab 上的时候,希望它能够自动触发构建,发布到我们需要的环境. 目前我们内部有做类似的需求:产品提交原型到 gitlab,然后 gitlab 分支变动触发 Jenkins 构建,将最新的产品原型发布到 nginx 配置的网页访问目录.更新完成以后通过钉钉机器人提供的 webhook 在公司群里通知大家,并打印出本次提交者是谁,提交的内容是啥. 配置 Gitlab 触发 Jenkins 自动构建 需要的插件有:Git…
写在前面的话 从我的工作经历来看,刚出来的时候的第一家公司我们上线采用的是脚本上线.就是那种开发合并完代码以后,在一个固定的时间点,我们上服务器执行更新脚本打包更新.这种方法有一个很大的问题,就是对于整个更新过程,我们并不直观,而且除非服务器之间免密登录互信,否则写脚本也很麻烦.当然那是早期的时候.后来接触的东西多了,在这些东西里面自然也就包含了 Jenkins,当然,Jenkins 不一定最好的,但可以这样说,是我遇到用的最多的.同类产品也有很多,感兴趣的可以去了解. CI / CD 在我写这…
写在前面的话 Jenkins 对于我们用户而言,可能中间会有不同的需求,比如自动构建,接口测试,代码质量检测.但其实我们的最终目的还是打包上线.当然,各个公司的项目开发语言会不一样,但是总体而言发布方式是几乎一致的,不管不是前端还是后端. 插件:Publish Over SSH 简单说下该插件的作用:该插件能耐允许我们向配置好密钥验证的服务器发送文件,并且在远程 Shell 的情况下执行命令. 这就相当于该插件同时具有 scp 和 ssh 的功能.我们可以去插件中心搜索: 插件安装完成以后,打开…
写在前面的话 个人认为 Pipeline 在 Jenkins 中算是一个优化性功能,它能够将我们的构建服务的整个过程流程化,这意味着当我们在执行到某一步的时候,可以添加询问,提示我们是否继续运行下一步.当然,这个东西并非我们必须的,在没有 Pipeline 的时候我们依旧能够很好的完成大部分项目的构建.但是 Pipeline 对于传统构建肯定是一个很好的补充,而且当你习惯以后会爱不释手. 关于流水线(Pipline) Jenkins 从 2.0 开始逐渐从一个 CI 工具转变成为 CD 工具,P…
写在前面的话 在一个企业研发部门内部,可能存在多个运维人员,而这些运维人员往往负责不同的项目,但是有可能他们用的又是同一个 Jenkins 的不同用户.那么我们就希望实现一个需求,能够不同的用户登录 Jenkins 以后看到不同的项目.Jenkins 提供了简单的权限管理,我们可以在 系统管理 --> 全局安全配置 看到: 但是这里的权限配置太过简略,显然无法满足我们复制的需求,所以在这个时候引入了 Jenkins 的一个插件:Role-based Authorization Strategy…
写在前面的话 在 Jenkins 中有那么一些功能,可能你几乎不会怎么用到,但是某些时候又能够帮助你解决一些很麻烦的事情.我这里单独的把这些小配置抽离出来作为一个单独章节.很多配置不需要记得,但是要知道,知道 Jenkins 本身是有提供给我们这个功能的. 定时构建 关于定时构建,可以举个简单的例子,比如我们某些特别的项目,我们需要每过一段时间就去更新它.有可能这类服务是随时都在修改的,但是我们又不能每次修改都去更新,那样会导致更新过于频繁,所以我们希望每隔一段时间更新一次. 这样的功能在 Je…
写在前面的话 通过上一节我们成功的搭建起来 Jenkins,那么接下来就是体验如何构建我们的第一个项目了.当然在这之前我们得专门针对 Java 环境就行简单的配置. 全局工具配置 其实这次配置的主要还是关于 Java 项目的工作配置,包括 JDK,Maven,以及代码仓库 Maven 等. 打开:系统管理 --> 全局工具配置 由于在安装 Jenkins 的时候安装了很多推荐插件,所以一般常用的配置项这里都能找到. 1. 配置多版本 JDK: 我们运行 Jenkins 的时候已经有了 JDK8,…