持续集成:jenkins2.0实施要点

自动化部署是自动化运维的重要内容之一,如果一个公司经常喊自动化运维,但没有持续集成的概念,没有实施自动化部署,还需要程序员手工打包部署,那么无疑其生产方式是落后的。持续集成的工具有很多,jenkins是其中典型代表之一。

1、经过测试,jenkins2.0在tomcat6.0.39+jdk1.6下面跑不起来,换jdk1.8下则可以。

2、修改jenkins运行家目录

Jenkins默认保存所有的数据文件在/root/.jenkins,这个路径比较别扭,修改的话,方法有二:

1)、直接在tomcat的catalina.sh里面添加:export JENKINS_HOME=

2)、直接在环境文件里设置,如/etc/profile

3、让jenkins使用特定的jdk版本进行构建

经过测试,在build.xml里面配置单独的jdkpath貌似不管用,执行ant还是会用系统自己的jdk版本编译。那么,如何配置单独的jdk版本呢?方法是在jenkins系统管理——系统设置里面增加一个全局属性,设置一下JAVA_HOME,如下图:

4、发邮件。

jenkins的邮件插件和扩展邮件插件用起来太麻烦,个人强烈建议直接用python整一个脚本,python的smtplib库简单好用,发送html+图片是很容易,相比linux的mailx,强大很多。如果构建失败,调用此脚本将build日志发送给相关人士即可。

5、自动部署

jenkins的自动部署是通过一个名为“Deploy to container Plugin”的插件完成的,原理是利用tomcat的admin接口将war包导进去。个人感觉也不太好使,大家都知道,tomcat虽然可以自动识别war包,但是安全的做法是需要重启,不重启的话,经过反复部署war包,jvm会慢慢出现问题。而且重启的时候,shutdown往往不够彻底,必须kill -9干掉tomcat进程才行。基于此,本人也推荐手工完成自动部署,在jenkins机器和远程机器之间建立互信,先备份,然后上传war包,再重启。即便如此,也要注意对远程web服务器进行监控,本人遇到一次远程web服务器内存不够(用了很多swap),导致部署过去的war包,lib加载不进去导致项目启动失败,报监听启动错误:SEVERE: Error listenerStart

时间: 2024-11-11 15:25:37

持续集成:jenkins2.0实施要点的相关文章

持续集成--Jenkins--2

安装sonar Scanner 打开http://www.sonarqube.org/官网 找到下面扫描器 通过这个扫描器可以分析代码分析 因此你也的安装这个扫描器 上传sonar-scanner-2.6.1.zip [[email protected] plugins]# cd /usr/local/src/ [[email protected] src]# ls mysql-5.6.30-linux-glibc2.5-x86_64.tar.gz sonarqube-5.6.zip [[ema

(转)Jenkins2.0 Pipeline 插件执行持续集成发布流程

1.Jenkins 2.0 的精髓是 Pipeline as Code Jenkins 2.0 的精髓是 Pipeline as Code,是帮助 Jenkins 实现 CI 到 CD 转变的重要角色.Pipeline是一套运行于 Jenkins 上的工作流框架,将原本独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂发布流程.Pipeline 中任何发布流程都可以表述为一段 Groovy 脚本,并且 Jenkins 支持从代码库直接读取脚本. ----------------

拥抱自动化,CODING 2.0 持续集成全新上线

在文章开始前,做一个小调查,在您的软件项目中集成一行新代码平均需要花多长时间? 15 分钟 一小时 半天 一天及以上 注意这里的集成是指将源码放在一起,并验证源码可以作为一个一致.运行可靠的软件的过程,而不只是完成编译. 如果在软件集成阶段耗费的时间经常让您的研发团队加班加点,那么是时候考虑落地持续集成了.我们都知道软件只有从代码生成制品,最终部署到生产环境中可靠运行才会给公司带来收入.持续集成是一种以"反馈"为核心的实践,为了达到短周期.高质量的交付目标,研发团队需要频繁且自动化地发

【52ABP实战教程】0.1-- Devops如何用VSTS持续集成到Github仓库!

工欲善其事,必先利其器.在开始正式的教程之前我们先来聊聊准备工作. 管理工具会VSTS. 代码管理会用GITHUB. 服务器会用Azure. 所有的东西都是利用现有服务.不会说自己从虚拟机开始玩.我们就专注于写代码. 什么是VSTS? VSTS的全称是Visual Studio Team Services. 介绍VSTS之前先说下TFS(Team Foundation Server).TFS是微软推出的一款ALM(Application Lifecycle Management)软件生命周期管理

使用jenkins实现持续集成

一.jenkins 介绍 它是一个自动化的周期性的集成测试过程,从检出代码.编译构建.运行测试.结果记录.测试统计等都是自动完成的,无需人工干预,有利于减少重复过程以节省时间.费用和工作量: 它需要有专门的集成服务器来执行集成构建: 它需要有代码托管工具支持,比如SVN: 官网地址地址:https://jenkins.io Jenkins的主要目标是监控软件开发流程,快速显示问题: jenkins持续集成中的任何一个环节都是自动完成的,无需太多的人工干预,所以它有利于减少重复过程以节省时间.费用

[转]使用jenkins实现持续集成

本文转自:https://www.cnblogs.com/zishengY/p/7170656.html 一.jenkins 介绍 它是一个自动化的周期性的集成测试过程,从检出代码.编译构建.运行测试.结果记录.测试统计等都是自动完成的,无需人工干预,有利于减少重复过程以节省时间.费用和工作量: 它需要有专门的集成服务器来执行集成构建: 它需要有代码托管工具支持,比如SVN: 官网地址地址:https://jenkins.io Jenkins的主要目标是监控软件开发流程,快速显示问题: jenk

持续集成(二)工具搭建篇—内网邮件服务器搭建

在我们的持续构建中,项目构建中出现错误提醒,或者开发人员之间的沟通交流,进度汇报的事务,都是离不开一个通信工具,那就是邮件.在我们的项目开发中如果使用第三方的邮件平台,这肯定不是最好的选择,因为第三方的邮件需要外网的支持,但是外网又不是特别的可靠,假如外网链接出现了问题,这样就会不必要的延误我们的工期.再或者很多项目都是保密项目,在开发中只能用内网.但是不用邮件吧又不行.为了解决这个头疼的问题,我们的内网邮件服务器工具就出现了,只要用它安装在我们的服务器上,配置好账户,配置好客户端,在内网里就可

转载:持续集成Jenkins+sonarqube部署教程

转载: 持续集成Jenkins+sonarqube部署教程 持续集成 1 引言 1.1 文档概要 本文主要介绍jenkins,sonar的安装与集成,基于ant,maven构建.用一个例子介绍jenkins的编译打包部署,代码检查.最后集成jenkins.(现阶段只是简易的集成,后续需要修改accio源码做深度集成) 1.2 预计读者 系统配置管理员:要懂得搭建持续集成环境,有问题可以排查:架构师:了解持续集成实现原理,协助项目接入持续集成.项目在持续集成环境运行中,进行维护.分析构建异常等:维

基于 Jenkins 快速搭建持续集成环境

持续集成是一种软件开发实践,对于提高软件开发效率并保障软件开发质量提供了理论基础.Jenkins 是一个开源软件项目,旨在提供一个开放易用的软件平台,使持续集成变成可能.本文正是从持续集成的基本概念入手,通过具体实例,介绍了如何基于 Jenkins 快速搭建持续集成环境. 持续集成概述 什么是持续集成 随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软件工程领域越来越红火,如何能再不断变