如果有机会通过 grunt.js 上传文件但使用 VPN 连接?不能一直运行 VPN 连接,所以过程应该是这样的:
- 连接到 VPN, (PPTP)
- 通过 SSH 连接到服务器,上传所有资产,
- 断开与 SSH 的连接,
- 断开与 VPN 的连接
我试图找到任何与 VPN 相关的 grunt.js 任务,但找不到任何东西。所有盒子都是基于 mac os/linux 的,所以我能看到的唯一方法是使用简单的包装脚本手动连接到 VPN,运行 grunt 任务并断开连接。
有更好的解决方案吗?
我认为您不会找到任何涵盖该内容的繁重任务。Grunt 是一个 Task-Runner,就像 make、rake、ant 等等。不同之处在于 Grunt 是专门为构建 javascript 应用程序而设计的。这就是 grunt-tasks 的用途——你只需要在你的 gruntfile 中配置它们。不再告诉系统做什么,只告诉系统怎么做。
您的问题与构建或编译 javascript 应用程序无关。这就是为什么我不相信(甚至不应该)有适合您需求的任务。
作为一个解决方案,我建议使用像 Jenkins 这样的 CI,例如。Jenkins 会获取我们的项目,测试它(使用 grunt),构建它(使用 grunt)然后部署它(使用 VPN / SSH)。这就是 Jenkins 的用途(虽然我不知道 Jenkins 是否可以创建 VPN 隧道,但这是一个不同的问题)。