由于工作需要部署一个web应用到远程的服务器,mentor推荐使用fabric,就试了一下。
主要是pull代码到远程机器,然后重启服务
但后来发现可以关闭但无法重新启动服务,原因查明是因为重启服务的命令最后带了“&”(说明:此符号代表启动的服务在后台运行,即使关掉命令行也不会终止),而fabric是无法达到这样的效果的,所以命令执行完退出命令行后服务就关闭了。
最后用了一种hack的方法,即将部署脚本写成一个python代码pull到远程服务器,然后fabric只负责在远程服务器上执行该脚本就行了。问题解决。
fabric的使用参见:http://www.cnblogs.com/holbrook/archive/2012/03/05/2380398.html