设为首页 收藏本站
查看: 1329|回复: 0

[经验分享] jenkins+github持续集成中的坑

[复制链接]

尚未签到

发表于 2018-1-7 18:24:53 | 显示全部楼层 |阅读模式
1.前言
  刚开始开发自己的独立博客的时候,每次发布都要手动打包,上传服务器,杀tomcat进程,重启,来回这么重复性工作,很快就有点不耐烦了。如果能自动化的东西,就绝不要手动了,所以自己搭建了个持续集成环境,配好了结合github进行push时自动构建,自动发布的流程,提交代码,泡杯咖啡就发布好了。
  本以为很简单,但没想到中间细节还是有不少坑,查了很多资料,墙都翻了好几次,把遇到的问题记录在这里。

2.正文
  详细安装教程就不复制粘贴了,推荐此文
  手把手教你搭建Jenkins+Github持续集成环境
  下面开始填坑

2.1手动安装插件
  安装插件时,由于网络原因,插件基本没法一次安装成功,可以多试几次看脸,我最开始是这么靠人品安的,方便的话挂vpn,我的服务器没有vpn,后来才发现可以手动安装。
  在jenkins->管理插件->高级 页面有手动上传功能,安装失败时通过如图复制下载地址,然后挂Lantern之类的下载上传即可。

2.2.自动构建的代码路径及权限配置
  在Repository URL 请使用ssh方式的url
  如git@github.com:chulung/chulung.com.git
  原因同样是网络问题,走http或https极有可能失败。
  另外点击add->Additional Behaviours 将Timeout 设置为30 防止超时导致失败,也可以设置更长。
  注意勾上Build when a change is pushed to GitHub,才能在提交后自动构建。

  参考:jenkins下使用git获取源码的配置方法

2.3.自动部署
  我的jenkins和chulung.com是跑在同一台服务器上的,所以脚本发布最直接,注意其中
  export BUILD_ID=dontKillMe这行是必不可少的,否则会jenkins会杀掉shell进程,导致自动部署失败。
  

#!/bin/bash  
echo "复制war包"
  
cp -f /root/.jenkins/workspace/chulung.com/target/*.war /var/www
  
tomcat_home=/home/apache-tomcat-8.0.28
  
echo "kill tomcat $tomcat_home"
  
ID=`ps -ef | grep java | grep $tomcat_home|awk '{print $2}'`

  
for>  
do
  kill -9 $id
  echo "killed pid=$id"
  
done
  
echo "执行tomcat启动shell"
  
#防止jenkins构建完成后杀死tomcat进程
  
export BUILD_ID=dontKillMe
  
sh $tomcat_home/bin/startup.sh
  
#tail -f $tomcat_home/logs/catalina.out
  


  作者:初龙
  原文链接:https://chulung.com/article/pit-in-jenkins+github-continuous-integration
  本文由MetaCLBlog于2017-07-17 09:11:15自动同步至cnblogs
  本文基于 知识共享-署名-非商业性使用-禁止演绎 4.0 国际许可协议发布,转载必须保留署名及链接。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-432666-1-1.html 上篇帖子: jenkins报错;自定义工作目录; 下篇帖子: Inno Setup 实现每次jenkins自动构建时版本号自动+1
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表