轻松使用Azure上的SonarQube整合VSTS

SonarQube这一套程序代码分析软件,想必没有人不知道,目前算是世界知名程序代码分析软件之一,本身这套软件可以被下载安装在自家的Server内,或是使用它们云端服务-SonarCloud,进行对程序代码的分析。不过,要架设私人的SonarQube并不容易,必须安装SQL ServerWeb Server两个。但是,SonarQube在扫程序代码时候,又会把程序代码复制一份到SonarQube服务器上,因此,若是使用SonarCloud,难免会担心程序代码被移留在第三方。取个折衷方案就是在Azure上建立自己的SonarQube服务器,并搭配VSTS做到持续集成的时候也确保程序代码质量。

安装Azure SonarQube

为什么要说轻松使用呢,因为在Azure上已经帮你准备好SonarQube的资源安装档了。只要在搜寻SonarQube,就可以找到

资源名称是SonarQube Certified by Bitnami,这个套件安装后预设是使用免费版的SonarQube,如果,想要升级安装好的SonarQube,就必须到它的官网进行付费动作,才可以升级它,并得到相对应的功能。

选好后,就按下建立,建立方式跟自己建立Azure VM一样的相关设定

之后,只需要设定相关参数就可以自动建立好SonarQube服务器,这样是不是很简单。在这里建立的VM会是Linux版本搭配MySQL。等安装完毕后,就可以登入SonarQube。

看到这画面就表示安装OK,但是问题来了,登入需要账号密码,一开始安装完毕后去哪边找到账号密码呢?这时候就要到Azure Port上找到刚刚建立的SonarQube的VM。到VM中找到[开机诊断],然后选择[序列记录文件],如下图,就可以找到默认的账号与密码。

不过建议第一次登入后,还是要修改admin密码才好。

VSTS安装SonarQube套件

既然有了SonarQube服务器,再来就是安装相关套件,要找到SonarQube forVSTS套件,只要到Marketplace输入SonarQube就可以。

安装完毕后,就可以在VSTS的Task找到这三个套件。

以.NET为例,透过这样流程设定就可以把Code送到SonarQube进行Scan,同时,结果也会被显示在最后Build完的结果上。

其中,比较需要注意的是在于Prepare AnalysisConfiguration的设定,有几个点需要注意:

SonarQube Server Endpoint :这部分是设定SonarQube的URL位置,且需要在SonarQube内产生一组联机的Token

Project Key:必须先在SonarQube建立要扫描的项目名称的Tag,这边就是填入在SonarQube项目名称的名字

Project Name:在SonarQube内的项目名字

如果还不熟其他设定,用默认值也是可以的。跑完之后就可以看到SonarQube是否对于这次Build的程序代码是否OK

如果,想要让程序分析变严格,就必须在SonarQube那边设定好条件就可以。透过云端服务,要在持续集成中也建立好自动化的程序代码分析就变简单很多,也不需要花费太多时间去架设。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180613B08O3L00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券