需求
现在很多项目,比如简单的前端H5,最快的发布或者测试方式还是走sftp上传,有很好的上传工具,比如FileZilla,但是这个工具对项目不够耦合,每次新的开始都需要不断的找文件夹。
为了每次一行命令就可以发布,出现了Easy-Sftp这个工具。可以访问easy-sftp下载试用。
如果执行npm run upload就可以上传,是不是很爽。
使用方式
现在我们工程里,比如打包,起服务都是走npm script,为了统一以及更好的操作,发布项目也走了npm script。
执行:
(sudo) npm install easy-sftp -g
easy-sftp提供了三个命令:
chaos create <file.json> // 创建一个上传的配置项
chaos send -c <file.json> // 开始上传
chaos log // 查看三天内的上传日志
chaos log -t // 查看当天日志
chaos log -r // 查看所有存在的日志
现在我们开始在项目里构建一套上传配置项。
cd到项目目录下,执行:
chaos create server.json // 任何名字都可以,只需json格式
就会在根目录下创建一个server.json文件,如下:
{
"host": "",
"port": 22,
"username": "root",
"password": "",
"pathMap": [
{
"localPath": "",
"remotePath": ""
}
]
}
支持同时上传多个文件夹,在pathMap添加本地的文件夹或者文件地址,然后填写映射的remotePath地址。
ok,基础的配置文件就好了。现在我们方便执行,可以在package.json的script里编写如下:
"scripts": {
"upload": "chaos send -c server.json"
}
万事俱备,现在只要执行:
npm run upload
即可上传本地静态资源到服务器上。
日志记录
该工具还提供了日志记录的功能,会记录每次上传的git地址和分支,时间,本地IP以及远程IP。
在任何位置执行如下:
chaos log // 所有的日志
chaos log -t // 当天的日志
chaos log // 查看三天内的上传日志
chaos log -r // 清除所有的上传日志
总结
大家用的好,可以给一个star么?哈哈哈,谢谢。