`
flashcloud
  • 浏览: 188859 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

[转载]构建基于Jenkins(原Hodson)+Git+Grails持续集成环境

阅读更多

原文出自:http://groovyq.net/content/构建基于JenkinsGitGrails持续集成环境

构建基于Jenkins+Git+Grails持续集成环境

Jenkins是一款Java平台的开源持续集成(Continuous Integration,CI)引擎。它易于安装,配置简单,丰富的插件支持,高度的可扩展性,强大的分布式构建能力都让它在众多的CI引擎中脱颖而出。在这篇文章里我将带领大家一起搭建基于jenkins,git和grails的持续集成环境。

Jenkins安装

进入jenkins官方网站下载最新的jenkins。jenkins提供的war形式的下载,同时也提供各种操作系统的安装文件。本文选用的是war包。

将jenkins.war拷贝到tomcat_home的webapps目录下,启动tomcat。在浏览器的地址栏中输入http://localhost:8080/jenkins,回车。看到如下页面,说明jenkins已经部署成功了。

插件安装

Jenkins缺省支持CVS,Subversion,Maven和SSH。依次进入"系统管理"-->"插件管理"-->"可选插件".这里列出了目前可以获得的所有的插件。

 选择"Git plugin"和"Grails plugin",点击"安装"。

插件安装已经完成,我们需要重启tomcat,新插件才能生效。

环境配置

依次进入"系统管理"-->"系统设置",设置Jenkins相关参数。

插件的参数配置也在这里设置。下面是Git和Grails插件的配置。



创建构建任务

接下来,我们进入最关键的环节:创建构建任务。点击"新建任务"。

输入"任务名称",选择"构建一个自由风格的软件项目",点击"OK"。系统自动进入"任务配置"界面。

首先我们来配置git版本库。在"Source Code Management"下,选择"Git",输入版本库的URL和分支,本人使用的版本库在本地,你也可以使用远程的版本库。

接下来配置构建触发器。如图:

"Poll SCM"用来定期检查版本库是否有更新,如果有更新,触发构建。"*/5 * * * *"表示每隔5分钟检查一次。点击Schedule后面的问号,Jenkins将显示Schedule的帮助信息。

构建触发器定义了"何时构建",下来我们来看看"如何构建".

如图点击"Add build step",在这里我们选择"Build With Grails".下方自动显示Grails相关的配置:

"Target"为需要执行grails命令。命令之间以"空格"隔开;如果命令带有参数,使用"双引号"包围,如:clean "test-app -unit"。"Project Base Directory"是Grails工程的根目录。如果工作目录就是Grails工程的根目录则不需要配置。

至此构建相关的配置已经完成,你可以尝试自己的第一次构建了。

发布Junit测试报告

Jenkins允许发布Junit测试报告,只需指定Junit测试报告的XML路径即可。Jenkins将解析XML生成测试报告。配置如图所示:

查看测试报告:

这里有一个Jenkins的Bug,每一个测试会被出现两条相同的记录。

构建结果通知

虽然我们已经将构建配置好了,但是如何将构建的结果通知给相关的人员呢?邮件通知是最常采用的一种方式。

邮件通知需要配置两个地方,首先进入"系统管理"-->"系统设置"设置全局参数,如图所示。

设置完成后,可以点击"用系统管理员测试邮件配置"按钮进行测试。

接下来是针对每个任务的配置。进入任务,点击"设置"。

这里主要配置当任务构建失败,或者变为不稳定状态,或回到稳定状态的时候将邮件发送给哪些人员。至于邮件的内容由Jenkins自动生成。如果你想自定义邮件内容,你可以安装Email-ext插件。

除了邮件通知,你还可以通过订阅RSS来了解任务的构建情况。

其他功能

  1. 在线查看工作空间:
  2. 查看版本库变更:
  3. 查看Git Poll日志:
  4. 查看构建的命令行输出:

问题和解决办法

  1. 使用grails进行构建的时候报"Could not load Logmanager org.apache.juli.ClassLoaderLogManager"的异常:
  2. [testWebProject] $ cmd.exe /C grails.bat clean && exit %%ERRORLEVEL%% Could not load Logmanager "org.apache.juli.ClassLoaderLogManager" java.lang.ClassNotFoundException: org.apache.juli.ClassLoaderLogManager at org.codehaus.groovy.tools.RootLoader.findClass(RootLoader.java:156) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at org.codehaus.groovy.tools.RootLoader.loadClass(RootLoader.java:128) ......

    这是由于tomcat启动时JAVA_OPTS中将log管理类设置成了org.apache.juli.ClassLoaderLogManager。执行"grails.bat clean && exit"命令时,grails找不到org.apache.juli.ClassLoaderLogManager。打开tomcat_home下的catalina.bat将下面命令注释掉即可。

    set JAVA_OPTS=%JAVA_OPTS% -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file="%CATALINA_BASE%\conf\logging.properties"

 

分享到:
评论

相关推荐

    Jenkins+Git+Maven+Shell+Tomcat持续集成环境

    Jenkins+Git+Maven+Shell+Tomcat 持续集成环境 本文主要讲述如何使用 Jenkins、Git、Maven、Shell 和 Tomcat 搭建一个持续集成环境,以提高软件开发效率和质量。首先,Jenkins 是一个开源软件项目,旨在提供一个...

    Jenkins+Gradle+Git+Centos 实现android持续集成、打包

    ### Jenkins+Gradle+Git+Centos 实现Android持续集成、打包 在现代软件开发过程中,持续集成(CI)已成为确保代码质量和加快开发流程的重要工具之一。本文将详细介绍如何利用Jenkins、Gradle、Git 和 CentOS 来实现...

    实战Docker+Jenkins+Git+Registry构建持续集成环境

    实战 Docker+Jenkins+Git+Registry 构建持续集成环境 本文将详细介绍如何使用 Docker、Jenkins、Git 和 Registry 构建持续集成环境,实现自动化的 Java 项目发布流程。 知识点 1: Jenkins 简介 Jenkins 是一个...

    Windows平台搭建Jenkins+maven+git实现自动发布已经越过几道坑

    在Windows平台上搭建Jenkins+maven+git实现自动化发布,首先需要准备好以下环境: - **JDK**: 安装Java Development Kit (JDK),本文案例中的路径为`C:\Program Files\Java\jdk1.8.0_131`。 - **Maven**: Maven用于...

    jenkins+git+maven+tomcat

    Jenkins+Git+Maven+Tomcat 自动化集成环境搭建 本文将详细介绍如何使用 Jenkins、Git、Maven 和 Tomcat 实现自动化构建、部署 web 应用程序的集成环境。 环境安装 首先,我们需要安装以下环境: 1. 操作系统:...

    postman+newman+jenkins+git APItest自动化集成测试 ppt文档

    "Postman+Newman+Jenkins+Git API测试自动化集成测试" Postman是一款功能强大的API测试工具,能够帮助开发者快速测试和验证API。然而,在实际应用中,手动点击Runner进行测试的方式不够灵活和高效,因此引入了...

    Jenkins+Maven+SVN+Tomcat 持续集成环境快捷部署

    搭建Jenkins+Maven+SVN+Tomcat的持续集成环境,需要按照以下步骤: 1. 环境准备 - JDK1.8.0_131,版本不低于1.7,使用最新版本以获得最佳性能和最新特性。 - Apache Maven 3.3.9,不推荐使用3.5.0版本,以免出现...

    jenkins插件maven+git+html报表展示

    **Jenkins插件Maven+Git+HTML报表展示** 在持续集成和持续部署(CI/CD)的领域中,Jenkins扮演着至关重要的角色。它是一个开源自动化服务器,支持各种任务,如构建、测试和部署软件。在这个场景中,我们讨论的是如何...

    jenkins+git+maven

    jenkins+git+maven搭建自动构建项目过程,其中部分简单安装省略

    Jenkins持续集成maven+jmeter+git接口自动化测试框架.pdf

    背景:jenkins作为中央调度器,集成java、maven、git、email、html-report环境,搭建 一个自动化测试框架,可性能也可接口;maven负责项目管理,jenkins服务器就不需要安 装jmeter运行环境(错误的,maven项目配置...

    k8s+docker+Jenkins+git持续集成与持续发布

    k8s+docker+Jenkins+git 持续集成与持续发布 k8s(Kubernetes)是一种开源的容器编排系统,用于自动化部署、扩展和管理容器化应用程序。Docker 是一种容器化平台,提供了轻量级的操作系统虚拟化解决方案。Jenkins ...

    Docker+Jenkins+GitLab+Maven+Harbor+SpringBoot自动化构建

    1. Docker+Jenkins+GitLab+Maven+Harbor+SpringBoot自动化构建+Jenkins自动化部署配置 2.无须运维部署 ,而是相关的开发人员,测试人员登录jenkins传入需要部署的tag即可,整个部署过程无须运维参与,解放运维劳动力

    容器自动化(五):jenkins+git+docker构建持续化集成环境.pdf

    docker+jenkins+gitlab的持续集成,持续交付,使开发,运维,测试一体化,研发:开发流程高效,稳定,快速,交付结果可预测,运维:容器监控,自动化运维,降低维护成本

    Jenkins+Ant+Git持续集成环境搭建

    基于windows平台的CI平台搭建,涉及到jenkins,Git,Ant,同时highlight了一些常见易犯的错误

    Jenkins+Jmeter+ant接口自动化框架.docx

    Jmeter 是一个开源的性能测试工具,Ant 是一个构建工具,Jenkins 是一个持续集成工具。 首先,我们需要下载 Jmeter 的安装包,下载地址为 http://jmeter.apache.org/download_jmeter.cgi。然后,我们需要下载 Ant ...

    git+gerrit+jenkins+sonar持续集成环境大家资料

    git+gerrit+jenkins+sonar持续集成环境大家资料,具体搭建步骤请参考本人博客。 里面还有一些插件,方便大家少走弯路

    K8S+DockerCE+Jenkins+Maven+Gitlab自动化打包部署

    "K8S+DockerCE+Jenkins+Maven+Gitlab自动化打包部署" 以下是从给定的文件中生成的知识点: 一、概述 * 自动化打包部署是指将程序从开发到部署的整个流程自动化,以提高研发效率和生产效率。 * 本文将介绍使用 K8S...

    jenkins+git+maven搭建自动化部署环境

    jenkins+git+maven搭建自动化部署环境说明文档,详尽的说明

    Jenkins+Git+github 自动化部署.doc

    Jenkins+Git+github 自动化部署

    jenkins+springboot+git自动化部署.docx

    【Jenkins+SpringBoot+Git自动化部署】 自动化部署是现代软件开发流程中的关键环节,它能够提高效率,减少手动操作的错误。以下是如何利用Jenkins、Maven和Git实现SpringBoot项目的自动化部署。 1. **Maven安装** ...

Global site tag (gtag.js) - Google Analytics