用Gradle自动发布程序至Linux服务器
条评论你的重复劳动,一定能找“人”帮你做,聪明的程序员一定是拒绝重复的。由于公司条件限制,暂时用不上jenkins
,先拿gradle
救救急也是不错的。今天要实现的是,通过gradle发布静态站点到服务器。这样可以和上回的用Gradle打包Vue前端程序保持一定的连贯性。当然本帖拿来发布war
包也是ok的。
- 首先追加gradle插件,参考写法
plugins { |
或者
buildscript { |
- 配置插件
remotes { |
如果觉得密码服务器密码明文写在这里不安全,可以用公钥ssh的方案,那么这里可以用identity = file('id_rsa')
代替掉password = 'xyz'
- 配置完Gradle SSH Plugin,就可以自己写
task
实现上传文件了。下面贴段我的
task deployPortal { |
这个task的主要作用就是把压缩好的静态站点上传至服务器,然后再解压缩。重点就两句话,第一句put from: "本地文件", into: "服务器路径"
,实现文件上传功能。第二句execute '执行shell命令'
,实现通过shell命令,解压缩文件。
- 至于中间那句
dependsOn zipPortal
表示执行发布task之前,先要把文件准备好,这个zipPortal
task我是这么写的task zipPortal(type: Zip) {
dependsOn(':portal:build')
from 'portal/www'
archiveName 'portal.zip'
destinationDir buildDir
} - 换句话说,如果你是要上传
war
包的话,可能就不是dependsOn zipPortal
而是dependsOn war
了。其他的地方,大同小异。
本文标题:用Gradle自动发布程序至Linux服务器
文章作者:牧云踏歌
发布时间:2018-07-18
最后更新:2018-09-12
原始链接:http://www.kankanzhijian.com/2018/07/18/gradle_task_use_ssh/
版权声明:本博客文章均系本人原创,转载请注名出处