您的位置:首页 > 其它

持续集成-平台搭建(hudson+sonar)

2011-02-11 14:04 281 查看
Hudson 是一个可扩展的持续集成引擎。主要用于:持续、自动地构建/ 测试软件项目. 监控一些定时执行的任务。

Sonar 是一个开源的质量管理平台,专注于从项目到类方法的持续的分析和测量技术质量,它把代码质量相关软件集成到一起统一管理;

简单来说,
hudson 是持续、自动地构建/ 测试软件项目,
sonar 则是持续,自动地统计并分析软件项目的相关质量数据,例如单元测试的通过率,覆盖率,代码的复杂度,代码的行数等等,用于评估和度量软件项目质量。
Hudson:
http://hudson-ci.org/
Sonar:
http://www.sonarsource.org/

搭建:

1 、安装:
1 )下载最新的版本(它打包为一个 WAR 文件)。hudson 官方网址: http://hudson-ci.org/ 2 )运行
java -jar hudson.war

注意:Hudson 需要运行 Java 5 以及以上的版本。
还有一种安装方式就是将下载的war 包文件部署到 servlet 容器,然后启动容器,在浏览器的URL 地址栏中输入类似http://localhost:8088/hudson/ 这样的地址即可。下图是安装成功后的界面(使用的是XP+tomcat+java5 环境):
2 、启动:进入到服务器目录下/home/ 用户名/apache-tomcat-6.0.20/bin
执行脚本shutdown.sh 或者startup.sh 进行重新或者停用
3 、系统配置:
在已运行的hudson 主页中,点击左侧的系统管理—> 系统设置:
在系统配置页面,这个列表中的第一个项显示的是Home directory 。这里包含了Hudson 要执行的所有工作区和存储它的所有配置。
为了配置一个JDK 和Maven2 实例,请在每一节下面单击Add 按钮,这里将添加实例的名称和绝对地址。
建议不要勾选Install automatically 选项,而是输入用户本机的java ,maven2 的安装路径并命名。
再介绍该页面其他文本信息所表达的含义:
system.message 填写一些说明信息
Quiet period:hudson 定时构建工程的时间( 秒)
Enable security: 设置hudson 登陆的规则( 默认 为匿名登陆) ,具体见下文介绍
TCP port for JNLP slave agents: 不了解JNLP 不敢胡写总之就是三种方式: 固定(fixed) 随机(Radom) 不使用(disabled), 使用固定时可以填入JNLP 信息
security realm: 可以使用中间件容器, 数据库,LDAP 来验证安全,
authorized: 可以设置身份的验证方法: 系统用户, 匿名用户, 自定义用户, 还有继承用户( 此处也在研究中, 建议使用匿名用户)
JDK installations: 设置JDK 的安装路径
Shell executable: 设置window shell 命令
Ant installation: 设置ant 的安装路径
mave installation 设置mave 的安装路径
cvs executable: 设置cvsnt 执行进程的路径(cvs.exe)
.cvspass file: 设置cvsnt 管理员文件的路径(passwd 文件)
e-mail notification: 设置当发生错误时发送的邮箱地址
hudson url: 就是hudson 的默认地址
还可以配置服务器的其他几个方面,比如向 Hudson 提供一个电子邮件服务器的位置,以便在构建失败时接收电子邮件。根据您的组织设置电子邮件的方式,可能需要让系统管理员帮助设置这个特性。设置电子邮件并不是必需的;Hudson 还支持以 RSS 作为通知机制,对于某些人来说,这种方式比电子邮件更好。究竟选择哪些通知机制完全取决于您。

搭建:

1. 下载
到官方网站下载Sonar 的压缩包,解压到任意目录 http://www.sonarsource.org/downloads/

2. Mysql 数据库安装

去没有 sql 官网上下载mysql 的rpm 包:MySQL-client-community-5.1.45-1.rhel5.i386.rpm 和MySQL-server-community-5.1.45-1.rhel5.i386.rpm

分别

rpm –ivh MySQL-server-community-5.1.45-1.rhel5.i386.rpm

rpm –ivh MySQL-client-community-5.1.45-1.rhel5.i386.rpm

3. 登陆mysql ,mysql 的初始用户名密码为root/ 空

正常的登录为 mysql –u sonar –p sonar

4. 创建数据库

Sonar 默认使用嵌入式Derby 数据库,如果要迁移到Mysql 上,需首先创建一个sonar/sonar 的UTF-8 的mysql 数据库, 并授权访问sonar 库

mysql> CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
mysql> grant all privileges on sonar.* to 'sonar'@'%' identified by 'sonar';
mysql> flush privileges;

5 .修改confsonar.properties 文件:
Properties 代码:
sonar.jdbc.url: jdbc:mysql:// 服务器IP 地址 :3306/sonar?useUnicode=true&characterEncoding=utf8
sonar.jdbc.driver: com.mysql.jdbc.Driver
sonar.jdbc.validationQuery: select 1

5 、修改服务器的maven 插件的settings.Xml ,添加以下配置信息即可

<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.jdbc.url>
jdbc:mysql://服务器IP地址:3306/sonar?useUnicode=true&characterEncoding=utf-8

</sonar.jdbc.url>
<sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver>
<sonar.jdbc.username>sonar</sonar.jdbc.username>
<sonar.jdbc.password>sonar</sonar.jdbc.password>
<sonar.host.url>http://服务器IP地址:9000</sonar.host.url>
</properties>
</profile>


Sonar插件的安装

1、进入Hudson的系统管理->的插件管理,如下图



2、进入“可用插件”,选择sonar( Hudson Sonar Plugin) 插件,在本页面右下角(最下面)点击安装,如下图



3、页面提示成功,即标识完成sonar 插件的安装

4、 重启hudson ,插件就生效了。

Sonar插件配置

1、进入Hudson->系统管理->系统配置,如下图
http://10.20.156.23:36100/hudson/configure


2、在《系统配置》页面找到Sonar,如下图,配置sonar的系统信息



3、做完以上配置,Hudson+Sonar就集成起来了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: