`
lovefly_zero
  • 浏览: 389899 次
  • 性别: Icon_minigender_1
  • 来自: 株洲
社区版块
存档分类
最新评论

使用Hudson进行持续集成(八)

    博客分类:
  • CI
阅读更多

运行并监控作业

  译自: http://www.javaworld.com/javaworld/jw-12-2008/jw-12-hudson-ci.html 

 

要运行您新近创建的作业,第一步就是跳转到http://localhost:8080/hudson(Hudson 控制面板)。图20显示了我在Ubuntu服务器上设置的全新的Hudson实例。
 

 图20. Hudson 控制面板

    在截屏的中心部分,您可以看到我刚刚定义的HeliosJMXTrunk 作业。当然这个截屏上还有其它一些很值得我们关注的条目:

  • 灰色球体状图标描述着作业的一种状态。灰色这种情况表明当前作业从来没有被构建过。
  • 在左边的表格中,名称为"Build Queue"的标签会显示当前正在运行或者准备运行的作业。表格中名为"Build Executor Status"的标签会公布已分配构建线程的状态。Hudson默认情况下会分配两个用于构建的线程,这意味着Hudson可以并行的执行两个构建。如果要修改它的数量,您可以单击Manage Hudson ,然后修改(1.3以后 # of executors)Configure Executors。请小心使用这个数量,因为软件的构建往往会相当密集的消耗内存资源;把太多构建同时加载到Hudson服务器是不合理的做法,因为这反过来可能会减缓您所有作业的执行效率。
  • RSS订阅图标。Hudson提供了另一种事件通知的方式:RSS订阅,包含整体系统的订阅和单独作业的订阅,主要有如下几种情况:
    •  成功的构建
    •  不稳定的构建
    •  被终止的构建
    •  SCM的改变

接下来请求一次构建,您可以点击作业列表表格中最右侧的构建图标。当然,您也可以单击当前作业的名称,它将指向您当前作业的主页,然后单击Build Now链接按钮。

当作业一旦运行,您将会看到这个作业正在队列中的仪表板和当前工作主页上运行。这两种显示如图21 。


 

图21. 当作业运行时两种不同的显示

 

      一般来说,您想在某些时候以通过视图输出作业的运行来监控当前作业的进展情况。为此,您链接到作业主页,单击Console Output。如果工作已完成,这将显示构建脚本产生的静态输出,;如果作业仍然在运行中,Hudson将不断刷新网页的内容,以便您可以看到它运行时的输出。图22 描述了这个非常有用的功能。



 

图22.  控制台以直播方式显示作业运行时的输出

一旦构建完成后,完成后的作业将会有三个地方进行显示。

  • 你可以在Hudson的控制面板上看到它,如图23 。
  • 你可以在当前作业主页上看到它,如图24 。
  • 通过点击构建历史中某个具体的构建链接,您就能跳转到Hudson为这个构建实例而专门创建的构建主页上。如图25。



 

  图 23.  Hudson控制面板上显示已完成的作业

 

     下面简要介绍控制面板中符号的意义,它描述了“作业状态”这一部分,黄色球标意味着构建成功,但被认为不稳定。W栏目代表着“天气”,这里的小太阳图标表示阳光普照。因为构建成功了而且没有任何处理插件(如上面所述的插件)来通知Hudson报告任何糟糕的情况。当然值得一提的是,最近一次构建花费了15分钟。这是因为我为测试套件中的一些单元测试时使用了一些调度组件,故意使运行时间延长了。把实际构建和测试在当前作业分隔开来运行其实是一个很好的选择


 图 24.  当前作业主页上显示已完成的作业

 

     当前作业主页上还包含了一些有趣的条目。左侧栏的链接主要控制作业的配置(为了修改你在New Job后的定义)、删除作业、构建作业。右边部分的链接指向最新的项目报告和构件。

 

 

图 25.  当前构建主页的已完成构建

    构建主页是针对一个构建实例而特设的。请注意,Hudson会分配一个内部的版本号用于跟踪分布式构建。此网页还列出Subversion的最新修订(没有在此次构建上的),同样还有三个失败的JUnit测试案例。这三个失败就是导致Hudson认为此次构建不稳定的原因,这说明该次软件构建并没有错误,只是有单元测试失败了。接下来的构建中,如果没有了任何单元测试错误的话,在控制面板和工程主页将显示一次稳健的构建。如图26中截屏所示。



 

 图 26. 二次构建后的控制面板和作业主页

 

    我现在已经涵盖了作业的配置、作业的启动以及请求一次即时构建所必须的步骤。接下来我们简单的讨论一下在Hudson中如何描述一个作业的状态。

作业状态

     在上面展示的截图中,您将注意到有两个图标描述当前作业的状态。Hudson使用两个概念来介绍一个作业的总体状况:

  • 作业状态:  图27中分级符号概述了一个作业新近一次构建会产生的四种可能的状态:
    • Successful: 完成构建,且被认为是稳定的。
    • Unstable:    完成构建,但被认为不稳定。
    • Failed:  构建失败。
    • Disabled: 作业已禁用。
  • 作业稳定性: 当一个作业中构建已完成并生成了一个未发布的目标构件,如果您准备暗中评估此次构建的稳定性,Hudson会基于一些后处理器任务为构建发布一个稳健指数(从0-100 ),这些任务一般以插件的方式实现。它们可能包括单元测试(JUnit)、覆盖率(Cobertura )和静态代码分析(FindBugs) 。分数越高,表明构建越稳定。图28中分级符号概述了稳定性的评分范围。任何构建作业的状态(总分100)低于80分就是不稳定的。

 

Job states

图 27.  作业状态

Job stability

图 28.  作业稳定性

  • 大小: 62.7 KB
  • 大小: 11.4 KB
  • 大小: 78.2 KB
  • 大小: 17.3 KB
  • 大小: 39.7 KB
  • 大小: 46.1 KB
  • 大小: 29 KB
3
0
分享到:
评论

相关推荐

    使用Hudson进行持续集成.doc

    **使用Hudson进行持续集成** Hudson是一款开源的持续集成工具,它可以帮助开发团队自动执行构建、测试和部署等任务,以确保软件项目的质量和稳定性。本文将详细介绍如何使用Hudson进行持续集成,主要涵盖以下几个...

    使用Hudson进行持续集成资料总结

    通过阅读"使用Hudson进行持续集成.chm"这个文件,你可以更详细地了解Hudson的使用方法、常见问题及最佳实践。这份资料可能涵盖了安装教程、插件介绍、故障排查指南等内容,对于初学者和有经验的用户来说都是宝贵的...

    Hudson持续集成实战

    《Hudson持续集成实战》是一本专注于自动化部署的教程,旨在帮助读者掌握使用Hudson进行持续集成的关键技术和实践策略。Hudson,作为一个开源的持续集成工具,被广泛应用于软件开发过程中,以提升效率,减少错误,并...

    使用Hudson持续集成

    使用Hudson持续集成使用Hudson持续集成

    使用Hudson持续集成.pptx

    通过持续集成控制代码质量 Maven+Hudson+Sonar 持续集成的基本原则很简单:尽早集成,经常集成。 持续自动构建 :使用CI,您只要按一下按钮,它会依照预先制定的时间表,或者响应某一特定事件,就开始进行一次构建...

    hudson持续集成包

    通过使用Hudson,开发团队能够更有效地进行持续集成,提升软件质量,减少错误,加速交付速度。对于这个压缩包文件“hudson”,可能是Hudson的安装包或特定版本的归档,用于在本地或服务器上搭建Hudson环境。为了...

    Hudson持续集成服务器的安装配置和使用

    根据提供的信息,我们可以详细探讨如何安装配置和使用Hudson持续集成服务器。Hudson是一个开源的持续集成工具,用于自动化软件开发中的构建、测试和部署过程。以下内容将围绕Hudson的安装配置及其与相关工具(如SVN...

    Hudson持续集成实战.zip

    【Hudson持续集成实战】 Hudson,作为一个开源的持续集成工具,被广泛应用于软件开发团队中,以自动化构建、测试和部署过程,确保代码的质量和项目的稳定性。它提供了丰富的插件支持,使得集成多种工具和服务变得...

    持续集成工具Hudson入门介绍(结合Ant)

    本篇将详细介绍如何使用Hudson与Ant进行持续集成。 【描述】:虽然没有具体的描述,但可以推测文章可能涵盖了设置Hudson环境、配置Ant构建脚本以及实现自动化的构建和测试流程等内容。 【标签】:“源码”和“工具...

    Hudson持续集成

    Hudson 是一个可扩展的持续集成引擎。 主要用于: 1.持续、自动地构建/测试软件项目,如CruiseControl与DamageControl。 2.监控一些定时执行的任务。 Hudson拥有的特性包括: •易于安装-只要把hudson.war部署到...

    hudson持续集成包 01

    【Hudson持续集成包 01】:这是一个与Hudson持续集成工具相关的压缩包,包含了必要的组件和资源,用于支持软件开发过程中的自动化构建、测试和部署。Hudson是开源的持续集成服务器,旨在帮助开发者频繁地进行构建,...

    基于Hudson的持续集成指南

    【持续集成】(Continuous Integration, CI) 是一种软件开发实践,它强调开发...通过学习本指南,读者不仅可以理解持续集成的概念,还能掌握使用Hudson建立和维护CI环境的具体步骤,从而提升团队的开发效率和软件质量。

Global site tag (gtag.js) - Google Analytics