一键上传前端静态文件

872 阅读1分钟

2020.05.09 补充

使用一段时间可能碰到需要输入密码的情况,重新执行步骤2即可

碰到的问题

  • 打包、压缩、上传等步骤需要一步步执行
  • 每次上传都会提示输入服务器密码
  • 上传完毕后需要手动登录服务器+切换到文件目录
  • 需要执行解压操作

解决方案

1.编写shell脚本,一步执行多个操作


#!/bin/sh
# upload.shell

yarn run build
cd dist/h5
tar -zcvf xxx.tar.gz *
scp xxx.tar.gz <用户名>@<ip>:<存放静态文件的目标文件夹>
    

2.将SSH公钥上传到服务器

ssh-copy-id <用户名>@<ip>

3.配置item2 自动连接服务器并解压上传的静态压缩包

#!/usr/bin/expect
set user <用户名>
set host <ip地址>

spawn ssh $user@$host

# 切换到指定目录
send "cd /home/xxx\r"
send "sh publish.sh\r"

interact
expect eof

上传发布步骤

  • sh upload.shell
  • 打开item2,选择目标服务器即可

参考链接