【发布时间】:2016-10-04 17:14:36
【问题描述】:
这是我为我的 node.js 应用考虑的管道:
在开发机器上编写代码 -> 提交到 github -> Travis 构建和测试 -> 成功:部署到私有服务器
我正在寻找工具来完成最后一部分。
例如,Travis 会通知某些工具并将代码从 github 拉到我的私人服务器(并以这种方式部署应用程序)。
【问题讨论】:
标签: node.js github travis-ci continuous-deployment
这是我为我的 node.js 应用考虑的管道:
在开发机器上编写代码 -> 提交到 github -> Travis 构建和测试 -> 成功:部署到私有服务器
我正在寻找工具来完成最后一部分。
例如,Travis 会通知某些工具并将代码从 github 拉到我的私人服务器(并以这种方式部署应用程序)。
【问题讨论】:
标签: node.js github travis-ci continuous-deployment
您可以轻松地部署到您自己的服务器,就像您从 通过添加自定义 after_success 步骤,您的本地计算机。
您可以选择脚本提供程序,因为它提供了更容易 有条件部署的灵活性。
FTP
env:
global:
- "FTP_USER=user"
- "FTP_PASSWORD=password"
after_success:
"curl --ftp-create-dirs -T uploadfilename -u $FTP_USER:$FTP_PASSWORD ftp://sitename.com/directory/myfile"
环境变量 FTP_USER 和 FTP_PASSWORD 也可以加密。
有关如何将 cURL 用作 FTP 客户端的更多详细信息,请参阅 curl(1)。
或 Git
after_success:
- eval "$(ssh-agent -s)" #start the ssh agent
- chmod 600 .travis/deploy_key.pem # this key should have push access
- ssh-add .travis/deploy_key.pem
- git remote add deploy DEPLOY_REPO_URI_GOES_HERE
- git push deploy
请参阅“如何加密包含敏感数据的文件?”如果你 不想将未加密的私钥提交到您的存储库。
【讨论】: