linux jenkins添加windows节点,实现自动化部署
2016-07-25 15:48
561 查看
背景:
要基于jenkins的做代码自动更新部署,现状是jenkins在linux上,目标服务器的tomcat在windows上,如何将代码从linux发送到windows未找到合适方案,并且后续如何远程调用执行windows批处理也是问题。日后如有好思路,会补上,也欢迎大家提建议。思路:
本人找到了个取巧的办法,在linux的jenkins上快捷添加windows jenkins从节点,从而实现基于windows的jenkins自动更新部署,具体流程是在linux的jenkins管理界面操纵windows的从节点jenkins在windows上更新部署等操作。扩展:
本思路也适用于tomcat所在服务器和jemkins所在服务器jdk不相同、或环境不同时使用,尽管jekins可以配置指定jdk等,但有时不好使。并且此思路可想像的空间很多,望能抛砖引玉。1、添加jenkins node
jenkins -> 系统管理 -> 管理节点 -> 新增节点不懂的属性直接点右边问号
注意availability要如图一致,点击保存后,进入下一步。
2、下载jar包
3、运行jar包
打开从节点服务器,利用cmd命令,执行上述命令4、新建自由风格JOB
配置使用哪个个节点执行任务然后正常配置svn代码更新路径等信息,代码会直接更新到从节点的机器上。
5、在“构建”中添加“Execute
Windows batch command”
set "y=%date:~,4%" set "m=%date:~5,2%" set "d=%date:~8,2%" echo date=%m%-%d%-%y% xcopy D:\jenkins\workspace\hello\*.* D:\tomcat\hello /E /y /D:%m%-%d%-%y% /C pause通过xcopy将当天更新的文件替换到tomcat中,xcopy不懂的参数直接在cmd中输入 “xcopy /?” 查看中文帮助
本例只替换了当天更新文件,原因是项目文件太多,全局替换时间较长。但是有一个小遗憾,是删除的文件不会在tomcat同步删除,但应该无大碍。
默认拷贝时会忽略隐藏文件,正好忽略了workspace中.svn文件夹。
执行时是直接在windows从节点执行,免去远程调用的麻烦。
如果项目文件少,直接全局替换也没问题,去掉/D参数。
xcopy 本例用到参数说明
XCOPY source [destination] [/A | /M] [/D[:date]] [/P] [/S [/E]] [/V] [/W] /D:m-d-y 复制在指定日期或指定日期以后更改的文件。 如果没有提供日期,只复制那些源时间比目标时间新的文件。 /Y 取消提示以确认要覆盖现有目标文件。 /C 即使有错误,也继续复制。 /E 复制目录和子目录,包括空目录。与 /S /E 相同。可以用来修改 /T。
相关文章推荐
- cmake的使用教程(linux版)(一)
- Linux下恢复误删文件:思路+实践
- linux入门常用命令
- linux kernel input 子系统分析
- 爹地,我找到了!,15个极好的Linux find命令示例
- linux手贱操作
- linux 设置时间(hadoop 对于时间要求比较高,所有在集群时特别要注意时间)
- linux之U盘读写速度测试
- 妈咪,我找到了! -- 15个实用的Linux find命令示例
- linux中AIO
- linux下echo的使用总结
- Linux的setup命令启动服务名称和功能
- rsync使用详解
- (OK) How To Install Wine 1.9.9 (Development Release) on CentOS, RHEL & Fedora
- Linux C 第八课
- linux驱动相关知识整理
- Centos7更改默认网卡为eth
- Linux系统有7个运行级别(runlevel)
- 玩转 Windows 10 中的 Linux 子系统
- Centos上VNC 启动和关闭 常见问题汇总