jenkins配置文件在哪

 我来答
就烦条0o
2016-10-23 · 知道合伙人软件行家
就烦条0o
知道合伙人软件行家
采纳数:33315 获赞数:46487
从事多年系统运维,喜欢编写各种小程序和脚本。

向TA提问 私信TA
展开全部
当然,你也可以为你的目标机器安装竖悄巧SSH服务。

我先说说解决的思路,然后再附上具体的步骤和shell脚本。

思路:将jenkins安装在linux系统上--->SVNcheckout部署的项目--->maven插件编译、打包--->使用jenkins的FTP插件将需要部署的项目或打成的包上传到指定的机器--->执行shell脚本登录该机器进行解压、部署、启动等操作(也可以直接执行写好的shell)。

具体步骤:

(1)源码管理,填写相应的项目SVN地址以及用户名密码

(2)配置mavenbuild,maven插件的配置在系统设置里面设置。

(3)FTP上传

这里的Sourcefiles是jenkins的workspace的相对路径,Removeprefix为取消的前缀(只保留项目名称部分)。

(4)构建时执行脚本

这是Telnet远程登录的脚本
#!/usr/bin/envshUSERNAME=swdev         #登录用户名PASSWARD=swdev         #登录密码TAR=icore-business-ecif-biz-0.0.1-SNAPSHOT-unix.tar.gz#TAR是上传的压缩包的名字MODEL=provider         #MODEL是压缩包根目录的名字和启动的二进制程序名一样DEPLOY_DIR=ecif        #DEPLOY_IP是上传文件所在的目录REMOTE_IP=192.168.2.3 运滚   #登录IP(sleep1;echo"$USERNAME";\sleep1;echo"$PASSWARD";\sleep1;echo"cd\$HOME/$DEPLOY_DIR";\sleep1;echo"chmod+x./deploy";\sleep1;echo"nohup./deploy$TAR$MODEL2>&1>deploy.log&";\sleep10)|telnet$REMOTE_IPexit0
(5)构建后执行脚本deploy.sh(主要用于解压、部署、启动等操作,这个放在上传文件所在的目录中)
#!/usr/bin/envsh##$1tar.gzname#$2providersourcefoldername#set-elog_message{echo"[$(date+%Y%m%d-%H:%M:%S)]$1"}BASDIR=$(dirname$0)if[$#-lt2];thenlog_message"Usage:$(basename$0)[tarname][providername]"exit1fi#Stoppreviousversionandbackup,thenremovepreviouspackageCMD="$BASDIR/$2/bin/$2"if[-e"$2"];then$CMDstopbackup="${2}-$(date+%Y%m%d%H%M%S)"log_message"Backuppreviousapplicationto${backup}.tar.gz"tar-cvf$backup.tar$2gzip${backup}.tarrm-rf$2filog_message"Extractpackagebegin"gunzip-c$1|tar-xvf-#Generatelogdirectorymkdir-p$BASDIR/$2/logslog_message"Startingapplication"$CMDstart
这个脚本只是一个示例,需要根据具体业务具体而定。

最后呢,遇到的几个比较坑的地方拿出来与大家分享下:

FailedtoparsePOMs.

原因:本地服务器和maven服务器之间的连接出现了问题,导致jar包无法下载而报错

解决方法:

vi/etc/余键hosts

在文件末尾加上你所使用的私服地址如:"192.168.1.1www.nexus.xxx.com"

运行"#/etc/init.d/networkingrestart"重启网络
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式