美文网首页sonarTest
Jenkins + SonarQube & SonarQ

Jenkins + SonarQube & SonarQ

作者: 纳爱斯 | 来源:发表于2017-06-12 15:09 被阅读1207次

    Jenkins SonarQube SonarQube Scanner

    操作步骤

    • 第一步:安装插件,两种方式
    1. Jenkins系统管理管理插件可选插件🔍SonarQube Plugin,如下图所示👇

      Install SonarQube Plugin
    2. 直接下载 SonarQube Plugin,然后进入 Jenkins系统管理管理插件高级上传插件,点击选择文件找到之前下载的 sonar.hpi,如下图所示👇

      Install SonarQube Plugin
      然后点击上传即可!!!
      Tip:第一种安装插件的方式有可能会失败,那么就选择第二种安装方式。还有一种情况,当 Jenkins 版本与 SonarQube Plugin 版本不匹配时也会导致安装插件失败。所以建议将 Jenkins 升级到最新版本
    • 第二步:配置 SonarQube,进入 Jenkins系统管理系统设置SonarQube servers

      Add SonarQube
      点击 Add SonarQube 会看到如下图所示界面👇
      参数配置界面
    参数说明:
        required:
               Name:SonarQube
        optional:
               Server URL:http://IP:9000/
               Server version:根据安装的 SonarQube 版本自行选择
               Server authentication token:这个参数需要在 SonarQube 平台上单独生成,下面进行说明
               SonarQube account login:登录 SonarQube 用户名
               SonarQube account password:登录 SonarQube 密码
               Database URL:这个参数的值,其实就是 `SonarQube & SonarQube Scanner` 这篇文章,修改 `sonar.properties` 配置中 
    `sonar.jdbc.url` 的值
               Database login:登录数据库用户名
               Database password:登录数据库密码
               (剩下的都是可选参数,就不一一列举了,上面说的这些都是最常用的,下面对 Server authentication token 这个参数说明一下)
    
     `Server authentication token` 生成
     1. 登录 `SonarQube` → `配置` → `权限` → `选择用户` → `管理员` → 点击 admin 用户 `Tokens` 那一列,如图👇
    
           ![只要是管理员用户就可以,没必要一定是admin用户](http:https://img.haomeiwen.com/i4979007/c9f00ad576f5894b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
      会看到如下界面👇
          ![Generate Token](http:https://img.haomeiwen.com/i4979007/1f2e18c9da7fee26.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
     2. 在`输入框`中输入任意字符(英文字母、中文、特殊字符)都可以,然后点击 `Generate` 按钮,会看到如图所示👇
        ![Token](http:https://img.haomeiwen.com/i4979007/ee7a603dcfcf86eb.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
     3. 将所得的 `Token` 填入 `Jenkins` 的 `SonarQube servers` 的配置项中,如图👇
        ![SonarQube servers](http:https://img.haomeiwen.com/i4979007/37105613d8a968a6.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
     `Tip:理论上来讲,只要配置上图中的 Name 和 Server URL 这两个参数就OK了`
    
    • 第三步:配置 sonar-scanner,进入 Jenkins系统管理Global Tool Configuration → 找到 SonarQube Scanner,如图👇


      点击 SonarQube Scanner 安装...
      点击新增 SonarQube Scanner
      如果不想用自动安装这种方式,安装的话,那就取消勾选,将自行下载的 sonar-scanner 上传至服务器,然后将存放的路径写入
      SONAR_RUNNER_HOME 的输入框,如果所示👇
    • 第四步:在 JOB 中配置 Execute SonarQube Scanner,进入你想要增加 SonarQube Scanner 静态代码检测的项目中,点击配置构建 → 点击增加构建步骤 → 选择 Execute SonarQube Scanner,如图👇

    Tip:
         如果是在 Maven 项目中,想要添加 `Execute SonarQube Scanner` 
     的话,则选择
        Pre Steps → Add pre-build step → Execute SonarQube Scanner
                                     or
        Post Steps → Add post-build step → Execute SonarQube Scanner
    
    Select Execute SonarQube Scanner Execute SonarQube Scanner Plugin
    选择 JDK 并且将 SonarQube & SonarQube Scanner 这篇文章中的 sonar-project.properties 的参数填入 Analysis properties 中,如图👇 Configuration Scanner
    然后点击保存,回到 JOB 页面,点击立即构建测试一下,如果成功的话会看到 SonarQube 的入口,如图👇 Success
    点击图中的 SonarQube,跳转至 SonarQube 平台对应的项目中去,如图👇 SonarQube
    至此 Jacoco + Jenkins + SonarQube & SonarQube Scanner环境如何搭建及两者之间如何关联的描述已经结束了。欢迎各位看官,及时纠错,如有疑问,请在下方评论,谢谢

    相关文章

      网友评论

        本文标题:Jenkins + SonarQube & SonarQ

        本文链接:https://www.haomeiwen.com/subject/oowcxxtx.html