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

Use Hudson之最佳实践

    博客分类:
  • CI
阅读更多

    简介:持续集成(CI)的测试执行和趋势的自动化已经大大改变了很多公司在构建管理、发布管理和测试流程的方式。本章节介绍Hudson的最佳实践,以提供给部门主管、业务经理和软件开发工程师和架构师更好地理解Hudson在围绕项目的生命周期中能产生什么促进作用。

     :详细的做法将在后面的章节一一介绍

 

1、 使Hudson一直处于安全状态。

       最好的做法是在一个Hudson实例中验证用户和实施访问控制。
       在默认配置中,Hudson不执行任何安全检查。这意味着任何人都可以进入该网站配置Hudson和作业实例,然后执行构建。虽然此配置在内部使用和快速安装时通常是可以接受的,但这是高风险的做法,比如有人不小心删除您的构建作业,或重配置您的作业为每分钟构建一次,或在开始很多构建的同时重建您的构建实例等等。

2、 定期备份Hudson目录(指Hudson实例)。

        当您的Hudson中存在相互依赖的项目时,跟踪项目的这个版本的依赖另外项目的某一个版本时往往变得很困难。因此Hudson 支持"file fingerprinting"以便简化这些步骤,所以最好尽量使用它。 

4、 可靠的构建就是完全从源代码控制系统取出的干净的构建

        为了确保一个构建是可重用的,该构建就必须完全是从源代码控制系统取出的一个干净的构建。这种做法也就意味着所有的代码,包括第三方jar包,构建脚本,发布说明等等都必须是从源码控制系统取出的。

5、 与问题跟踪系统紧密集成,如JIRA或Bugzilla,以简化维护一个更改日志的需求。

       此集成能帮助您当构件产生后跟踪其变化,包括构建状态,构建是否完全按需求执行或者有缺陷,然后链接到实际构建结果和构件。

6、 与存储库浏览器工具紧密集成,如果您正使用Subversion作为源代码管理工具,像FishEye(注:我使用Trac)。

       存储库浏览器提供快速地更新在Subversion存储库的最新资源。它也对比现时构建和以前构建之间发生的哪些变化提供了差异图形表。

7、 每运行一次Java构建时就有规律地配置您的作业以生成趋势报告和执行一系列的自动化测试。

       趋势(图)能帮助项目经理和开发人员快速可视化当前项目的进展情况。而且,单元测试往往并不能为我们提供足够的信心,尤其是在该软件应符合理想的交付阶段之时。你对该软件测试越多,它就越能使该软件符合理想中的软件质量。

8、 在最空闲的磁盘空间的分区内设置Hudson主目录。

       Hudson需要一些磁盘空间执行构建和文件归档。所有的设置、构建日志、构件档案都存放在Hudson_HOME目录下。只需存档此目录来进行一次备份。同样,恢复数据也只需从一个备份中取代当前Hudson_HOME目录的内容。

9、 先归档不再使用的作业,然后再删除它们。

        所有不再使用的作业都应归档,如果有需要这也能使它们重新投入使用。

10、 为您创建的每个维护或开发分支设置一个不同的作业/项目。

        使用CI工具的优势之一就是在软件开发生命周期的早期发现问题。为您创建的每个分支设置一个不同的作业/项目,这将最大限度地有助于在早期检测到问题,以支撑并行开发的成果和降低风险。

11、 为并行的项目构建分配不同的端口,以避免在同一时间开始所有的作业。

         多个任务同时运行时往往会导致冲突。应尽量避免计划在同一时间开始所有的工作。为并行的项目构建分配不同的端口,以避免构建冲突。

12、 设置电子邮件通知以映射到该项目的所有开发者,这么做是为了让团队中每一员都能掌握到该项目的当前状态。

         在人员列表每个成员中用他(或她)正确的电子邮件地址进行配置以及他(或她)当前应扮演什么样的角色。

13、 采取适当的步骤,确保失败时能尽快以报告的方式获悉。

          例如,在(运行)整个测试套件之前运行一系列有限制的“试探性测试”可能也是恰当的。

14、 为您的维护任务编写作业,诸如清理操作以避免磁盘空间已满的问题。
15、 为每次成功构建创建一个标记、符号或者代码库基线。
16、 在运行该构建目标/对象之前先配置Hudson引导程序以更新您的工作副本。
4
1
分享到:
评论

相关推荐

    hudson-3.3.1.war

    For Production use, Hudson 3.3.1 from the Eclipse Foundation is now available. This WAR file is suitable for any O/S. We recommend that users of 3.0, 3.1, 3.2 or 3.3.0 upgrade to this release. his ...

    hudson使用配置说明文档

    8. **最佳实践**:分享一些使用Hudson的最佳实践,如定期备份,优化资源使用等。 由于压缩包中的文件是音乐,而不是Hudson的相关文档,所以无法提供具体的配置说明。请确认您是否提供了正确的文件,或者是否有遗漏...

    hudson学习教程Hudson安装与使用,Hudson配置,Hudson插件

    - 插件涵盖各种用途,如SCM集成、测试报告生成、持续集成最佳实践等。 **Hudson 配置** 1. **工作区配置** - 配置每个项目的本地工作区,用于存放源码和构建产物。 - 设置构建参数,如环境变量、系统属性等。 ...

    hudson持续集成包

    6. **最佳实践** - **频繁提交**:鼓励开发人员每天至少提交一次代码,以降低集成难度。 - **快速构建**:优化构建过程,使其在几分钟内完成,以便快速获取反馈。 - **自动化测试**:编写自动化测试,确保每次...

    Hudson持续集成实战

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

    hudson自动构建文档

    通过深入学习和实践上述内容,你将能够熟练地使用Hudson进行自动构建,提升开发团队的效率,实现持续集成和持续交付的目标。在实际应用中,不断探索和优化Hudson的配置,将使你的CI/CD流程更加高效和可靠。

    Hudson持续集成实战.zip

    在实际操作中,团队还需要遵循最佳实践,如定期清理旧的构建记录,以避免资源浪费;使用参数化构建以适应不同环境;设置邮件通知,确保团队成员及时了解构建结果。 总之,Hudson持续集成实战涉及项目规划、工具配置...

    hudson 开发指南

    六、最佳实践与社区资源 6.1 版本控制:推荐使用Git进行插件源代码管理,便于协作开发和版本追踪。 6.2 社区参与:加入Hudson社区,获取最新的开发信息,提问和分享经验,参与插件的维护和更新。 6.3 文档编写:...

    hudson安装全过程

    ### Hudson安装全过程详解 #### 一、前言 Hudson是一款开源持续集成工具,主要用于自动化构建、测试软件项目,支持多种SCM(如Git、SVN等),并且可以通过插件扩展功能。本文将详细介绍Hudson的安装过程,包括JDK...

    Hudson快速启动和停止脚本

    在敏捷开发环境中,持续集成是至关重要的实践,它可以帮助团队快速发现并修复错误,提高软件质量。"Hudson快速启动和停止脚本"是针对Hudson服务进行管理的实用工具,通过这些脚本,我们可以更加便捷地控制Hudson服务...

    hudson教程

    Hudson 是一个开源的持续集成工具,用于自动化各种软件项目构建、测试和部署等任务。在本教程中,我们将深入探讨如何配置和使用Hudson。 首先,为了运行Hudson,你需要准备以下组件: 1. **Apache Tomcat 7.0 以上...

    centos环境hudson自动化部署报告.doc

    10. **最佳实践**:报告中还应包含一些最佳实践,如使用版本控制、代码审查、持续集成等,以推动开发团队遵循良好的自动化部署规范。 通过这份“CentOS环境Hudson自动化部署报告”,读者将全面了解如何在Linux环境...

    Hudson平台搭建及使用

    【Hudson平台搭建及使用详解】 Hudson是一个开源的持续集成(CI)服务器,它提供了一种自动化构建、测试和部署软件的解决方案。Hudson以其简单易用和丰富的插件功能而受到赞誉,使得项目管理和配置变得更加高效。...

    Hudson持续集成服务器的安装与配置

    3. **持续集成最佳实践**:定期自动构建,尽早发现并修复问题;保持构建绿色,即每次提交都能通过所有测试。 4. **持续部署**:配置自动化部署流程,一旦构建成功,自动将新版本部署到测试或生产环境。 总结来说,...

Global site tag (gtag.js) - Google Analytics