Jenkins 编译后使用SSH发布详解
前言
想要实现自动发布编译好的apk,我们可以使用官方插件库里的如下插件。
你可以使用FTP SSH等方式自动化发布,当然你也可以写脚本实现复杂的发布操作。
我以Publish Over SSH为例简单讲解下(主要是目前没部署FTP服务 TAT)
因为不知道怎么使用这个插件,所以我查看了下官方文档
https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+SSH+Plugin
看得懂E文的推荐去看看,比我讲的详细的多了。
这也算是能力的锻炼吧。
不废话,具体实现的最简单步骤如下
SSH连接设置
点主页左侧菜单的系统管理 选择系统设置 在系统设置页面找到找到SSH配置段
- Passphrase:表示登入密码
- path to key:SSH-key文件存放路径 文件路径可以是绝对路径 也可以是相对路径(相对于jenkins的工作目录)
- key:SSH-key具体的key文本 作用同上 设置其中一个即可
- disable exec: 表示是否运行执行命令 因为你在发布之后可能需要通过命令操作服务器,比如上传编译好的网站文件然后重启服务器上的tomcat
- name: 一般写成 用户名@主机名 比如root@blog.cooderstory.cn 当存在多个ssh配置文件的时候 我们使用name来区分
- hostanme:表示需要登入的远程主机 可以和我一样写个域名或者具体的ip
- username: 就是登入的用户名
- remote directory: 表示远程路径 登入到服务器后想打开哪个目录
这段SSH的配置主要是让jenkins能通过shh连接到服务器,也就是ssh连接配置
这里的配置要看具体服务器的安全设置的,有的是通过账户密码登入,有的是直接通过ssh-key登入的,或者三者都要。
我的服务器设置徐娅提供ssh-key和账户名就可以了。
配置项目的SSH设置
然后打开项目的配置页面
我们需要在 构建后操作 添加一个步骤 send build artifacts over ssh
- name:选择之前添加的ssh设置
- source files: 表示你要上传的文件的路径
- remove prefix: 目录修正 只能是source files中的路径 因为文件最终上传的路径是remote directory+source files 通过remove prefix削减source files中的一些目录层次
- remote directory 远程目录,指定上传到远程服务器的哪个目录
- exec command: 文本框表示你在文件上传完毕后想要执行的命令 不填也行 红色的警告可以无视
执行编译
保存配置重新执行编译
在控制台输出你会发现在success后多了几行信息
检查上传的文件
我们可以在服务器上找到我们刚才上传的apk文件了
注意下文件的路径的确是/var/www/html
够简单吧,Just try it!
以上是 Jenkins 编译后使用SSH发布详解 的全部内容, 来源链接: utcz.com/z/332646.html