Jenkins持续集成(插件/Publish Over SSH)

  • A+
所属分类:CI/CD

该插件主要是通过SSH连接其他Linux机器,远程传输文件及执行Shell命令。

官网介绍

https://wiki.jenkins.io/display/JENKINS/Publish+Over+SSH+Plugin

特征

SCP - 通过SSH(SFTP)发送文件

在远程服务器上执行命令(可以为服务器配置或整个插件禁用)

使用用户名和密码(键盘交互式)或公钥认证

密码/密码在配置文件和UI中加密

SSH SFTP / SSH Exec可以在构建过程中用作构建步骤(Freestyle和Matrix项目)

在(maven)项目构建之前进行SSH,或者在构建之后运行,无论构建是否成功(请参阅下面的构建包装器)

该插件是“促进感知”(直接从正在推广的构建的工件目录中发送文件)请参阅促销

(可选)覆盖作业配置中每个服务器的身份验证凭据(如果尚未在全局配置中为该服务器提供这些凭据,则提供这些凭据)

(可选)如果文件传输失败,则重试(对于flakey连接很有用)

启用命令/脚本在伪TTY中执行

安装配置

点击-系统管理-系统插件-可选插件中 直接搜 publish over ssh 点击安装,安装完之后,重启jenkins

点击- 系统管理-系统设置-拉到最下面就有Publish over SSH

Jenkins持续集成(插件/Publish Over SSH)

Passphrase: 密码(目标机器的密码)

Path to key:key文件(私钥)的路径

SSH Server Name: 标识的名字(随便你取什么)

Hostname: 需要连接ssh的主机名或ip地址,此处填写应用服务器IP(建议ip)

Username: 用户名

Remote Directory: 远程目录(要发布的目录,比如/usr/local/tomcat/webapps/)

工程配置

Name       这里是自定义的ssh远程服务器,如果有多台,点击add post-build step 继续添加

Source files       源文件地址,相对地址 比如 /root/.jenkins/workspace/jobname/target/xx.war  直接写成 target/xx.war就行

Remove prefix       这里指的是忽略前面的 target/   远程服务器直接显示就是xx.war

Remote directory  远程服务器要保存的文件目录

Exec command     这里直接写 bash 脚本名称 xx.sh    这里也是远程服务器的脚本

实例:

连接k8s-master服务器,拷贝moban.yaml,执行kubectl命令

Jenkins持续集成(插件/Publish Over SSH)

参考文章

http://blog.51cto.com/xiong51/2091739

YaLei

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: