Jenkins Publish over ssh部署

2022-05-24 15:23:43 浏览数 (1)

Jenkins远程部署,一开始没有任何头绪,想了很多方案. 因为两台机器都是windows系统,所以想到publish over cifs, 但是这个网上资料太少,貌似只能内网使用。又想到了Jenkins 分布式构建,但是Jenkins构建的代码和产物最后自动拷贝到主节点。而远程机器其实是客户方的机器,所以这个分布式构建并不适用。最后还是选定publish over ssh来实现远程部署。 

请注意:在进行远程部署操作前,先要确保客户机能ssh 登录到远程机器。如果不知道SSH怎么登陆,

1. 安装publish over ssh 插件,安装很简单,在此不表。 

2. 在Jenkins系统设置里找到Publish over SSH模块 

3. 用户名/密码方式登录的,系统设置里设置如下: 

4. 如果是证书登录的,系统设置里设置如下: 

5. Job设置,点击增加构建后操作步骤,选择send build artifacts over ssh, 设置如下: 

6. 文件上传到远程服务器后,还有一些后续操作,比如,替换数据库配置文件。可以把bat命令写到一个批处理文件中,存到服务器上。Exec command填写批处理文件的绝对路径。如上图所示。

关于bat脚本: 

如果每次都需要替换同样的文件,用copy /y 是无条件覆盖,不会询问。而xcopy可以实现批量拷贝文件和文件夹。如果文件较多可用此命令 

注意脚本运行失败,构建也会显示蓝色成功图标,所以一定要打开控制台输出,看是否真的成功。

0 人点赞