Jenkins编译C++并部署到服务器上

重要步骤:
1、安装Jenkins,百度教程很多,不做详细介绍
2、linux环境搭建SVN,我参考的是这个博文:
https://www.cnblogs.com/liushuchen/p/8689033.html
3、Jenkins安装插件,最重要的一步。
具体步骤如下:
第一步:新建一个自由风格的项目:
图1, 新建任务,选择自由风的项目
第二步:在general中选择丢弃旧的构建,如下图
图2 丢弃旧的构建
第三步:管理源码,此处我使用的是从SVN,也可以选择GIT,各自安装相应的插件即可,SVN对应的插件是subversion。
图4 使用SVN管理源码
第四步:将Jenkins从SVN上下载的源码上传至某个服务器,并在该服务器上进行打包编译,然后将编译后的成果物上传至FTP。(主要使用的linux系统,因此这里我使用的是publish over ssh这个插件)
图5 构建
在这里看我是用的脚本将成果物上传至FTP,Exec command里面所有的脚本如下,

1echo `pwd` 2cd /workspace/debug_C/Helloworld 3rm -rf cmake-build 4mkdir cmake-build 5cd cmake-build 6cmake .. 7make 8echo "do Helloworld" 9./Helloworld 10 11zip -r Helloworld.zip Helloworld 12#!/bin/bash 13ftp -n<<! 14open 192.168.1.143 15user admin 12 16binary 17hash 18cd /test 19lcd /workspace/debug_C/Helloworld/cmake-build 20prompt 21mput *.zip 22close 23bye 24! 25 26 27

publish over ssh安装完成后配置如下:
图6 publish over ssh
第五步:连接要部署的目标服务器,从FTP上下载包。
这里我使用的还是publish over ssh这个插件,对应的内容如下图:图7 部署服务器
图片中的脚本如下:

1echo `pwd` 2#!/bin/bash 3ftp -n<<! 4open 192.168.1.143 5user admin 12 6binary 7cd /test 8lcd /download 9prompt 10mget *.zip 11close 12bye 13! 14cd /download 15unzip *.zip 16 17

备注1:FTP上传下载的部分操作可以通过publish over FTP来操作,我这里偷懒了一下,直接用脚本执行了。
备注2:由于我手里的linux服务器有限,所以SVN/FTP/部署服务器都是一个IP。

代码交流 2021