Hudson持续集成服务器(Windows篇)

Hudson服务器的配置还是比较简单的。每个事项也不需要去记,可以直接点击右边的“?”按钮就会显示此项的意义。我是搭载了VS2010的hudson服务器

一、安装与配置

1、首先可以到官网下载hudson.war,安装jre的环境就可以跑起来,如果你是编译java的项目,请安装jdk。由于hudson本身内置http服务器,因此可以不安装tomcat。我搭载的hudson就没有放到tomcat下,而是直接安装成windows服务自启动即可。如果还没有安装成windows服务,可以通过命令行运行hudson。比如把下载回来的 Hudson.war 放在 D:\Hudson 目录下,在命令行下用 java -jar Hudson.war 就可以把 Hudson 开起来。但是这样的话 Hudson 会自动把它的 home 目录设定到当前用户的 home 目录下(windows下就是系统盘--->当前用户--->.hudson目录),所以我们可以在启动 Hudson 的时候手工指定一下 Hudson 的 home 目录:java -DHUDSON_HOME=D:\Hudson -jar hudson.war。启动 Hudson 之后打开浏览器,访问 :8080 就可以看到 Hudson 的 界面了

2、安装MSBuild plugin,在插件管理界面可以找到,勾选安装即可。安装好 MSBuild 后要设置一下,进入系统设置,找到 MSBuild 两个字段:name 和 Path to msbuild.exe。name 填写一个有意义的如MSBuild-msvc2010等,新建任务job 设置的时候有一项选择MSbuild之后需要选择这个name,Path to msbuild.exe 就是你机器上 MSBuild.exe 的绝对路径,比如 C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe。这里需要注意的是,VS2010一定要选v4.0.30319(或者你的更新,但是应该是4.0以上),3.5及其以下是VS2008及其以下版本使用的,选错了会编译失败的。

3、如果你想将SVN服务器跟hudson一起构建,安装了SVN服务器和客户端之后,接下来要设置一下 SCM。我没有安装SVN服务器,因为我们的SVN服务器之前是搭好在另一台服务器的,这次只是搭载Hudson服务器,在hudson上安装SVN客户端,之后会让hudson自动从SVN服务器check out代码进行编译。

4、hudson配置smtp服务器,记得点击advance添加用户名和密码。对于gmail的用户记得勾选校验并设置gmail端口(将来的job会以此用户给指定的项目组成员发送邮件)。邮件通知里的 Hudson URL 默认是 :8080/,改成主机名,否则收到 build 结果通知邮件以后点击链接访问localhost 是无意义的。

5.hudson是个插件式的服务器,需要什么可以自行安装插件。ms的系统这边我们是安装了 disk plugin(检测磁盘的容量),cppcheck plugin(静态代码检查,记得安装plugin完了,系统上还要安装cppcheck报告生成工具程序,cppcheckplugin最后也只是调用系统上的这个工具用来显示检查的结果),doxygen plugin(同样需要安装doxygen报告生成工具,plugin也是使用工具生成的文档进行显示)。在new job中对cppcheck和doxygen的路径设置都是针对hudson workspace的相对路径,这点需要注意。

关于doxygen还想多记录一些,本身按照doxygen的帮助文档,配置还是较为简单的。而想要更好的生成文档,还需要结合其他的工具。

graphviz这个工具是相当棒的,用于生成类图,交互图,各种咆哮图,用了你就知道了。还有就是请严格(其实doxygen支持各种风格的注释,说严格有点过了)按照注释风格书写代码注释。

二、创建 Hudson build job

在 Hudson 的 home 目录里有一个 jobs 的目录,里面存放着所有的 build job,在具体job 的目录下有一个 workspace 文件夹,里面存放的就是从 SCM 里 check out 出来的代码,你可以自己指定 workspace 的位置。

1、在 Hudson 界面里新建任务,然后选 Build a free-style software project 这个类型。(其他类似暂时没有用过)

2、点击 Advanced Project Options 可以设置一些不常用的高级选项,如 Use custom workspace 就可以指定 workspace 的位置。这个选项可以让你把代码 check out 到一个特定名字的文件夹里。假设你想把 code check out 到一个叫 branch 的文件夹里,可以在 Use custom workspace 里设置 D:\Hudson\jobs\foo\workspace\branch。Hudson 内部定义了一些环境变量,使用这些变量可以增加 job settings 的灵活性,比如上面这个目录可以写成:$HUDSON_HOME\jobs\$JOB_NAME\workspace\branch,这样如果你以后变动了 Hudson 的安装位置就可以不用重新设置 job settings 了。有关 Hudson 的环境变量可以访问。一但在这里设置了 custom workspace,那么再使用 $WORKSPACE 这个环境变量拿到的就是这个 custom workspace 的位置,而不是默认的位置。还有类似于build信息的保存期限的,有两种方式,一种是以时间为期限,如设置7天,另一种是数量,如保存10次构建过程信息,其他高级选项可通过对应右边的“?”查看配置。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/ppfyf.html